350
See MongoDB (lemmy.world)
you are viewing a single comment's thread
view the rest of the comments
[-] HK65@sopuli.xyz 56 points 22 hours ago

NoSQL has always been a niche use case thing.

For some stuff, no ACID is no problem. They have their place. What I'm more suspicious of is things like Google offering distributed databases that they pretend as if they could break the CAP theorem.

[-] Gonzako@lemmy.world 10 points 17 hours ago
[-] ramjambamalam@lemmy.ca 25 points 17 hours ago* (last edited 16 hours ago)

Atomicity: either all parts of the transaction complete, or all parts of the transaction don't complete; there's no "partly complete" state

Consistency: the state of the database after a transaction is stable; all "downstream" effects (e.g. triggers) of the query are complete before the transaction is confirmed.

Isolation: concurrent transactions behave the same as sequential transactions

Durability: a power failure or crash won't lose any transactions

Traditionally, ACID is where relational databases shine.

[-] CosmicTurtle0@lemmy.dbzer0.com 13 points 16 hours ago

You've gotten good answers from other folks but I'll provide a ELI5:

Basically a set of rules in the database to make sure that it is immediately consistent.

NoSQL databases offer eventual consistency in exchange for speed so they are generally not considered to be ACID compliant.

Most traditional databases (MySQL, postgresql, etc.) are.

There are a couple of emerging companies that try to tackle speed for traditional databases. CockroachDB offers a postgress-based database that scales more like NoSQL while still offering ACID transactions.

TiDB is a similar company but for MySQL.

[-] mcv@lemmy.zip 2 points 13 hours ago

Not all NoSQL databases are the same. Neo4j is acid compliant, and lightning fast for complex relationships that relational databases struggle with.

[-] qjkxbmwvz@startrek.website 10 points 17 hours ago

https://en.m.wikipedia.org/wiki/ACID

Atomicity (something happens in its entirety or not at all), consistency (database is always in a valid state


if the database has constraints, they will always be honored), isolation (transactions don't step on each other), durability (complete transaction is complete even if there's a power failure).

Not a database expert, my parenthetical explanations may need work.

[-] 30p87@feddit.org 18 points 22 hours ago* (last edited 21 hours ago)

And yet my Uni treats it like the biggest thing in existence. Meanwhile I've never used anything other than RDBS and Redis (only for cache), neither in private nor at work.

[-] HK65@sopuli.xyz 32 points 22 hours ago

MongoDB is huge though for all the wrong reasons, businesses think that just because it's JS, they can just have frontend devs - sorry, they are "fullstack" now - doing DBA work.

I worked as one of two NoSQL DBAs for a Fortune 50 finance company, and there is a ton of CV-driven development going on giving NoSQL a bad name. Most use cases don't need NoSQL. And for those which do, NoSQL is almost always harder to implement than simple SQL based RDBMSs.

[-] Aurenkin@sh.itjust.works 7 points 21 hours ago

Sharded RDBS gets you very very far from my experience at least.

[-] HK65@sopuli.xyz 1 points 19 hours ago

Definitely, and I'm saying that while my jobs were mostly on NoSQL and I love doing it.

[-] oce@jlai.lu 3 points 21 hours ago* (last edited 21 hours ago)

If you need to run queries that aggregate big amounts of data in a reasonable time and cost, you'll need something built for it. For example, with a column oriented file format instead of the row oriented file format found in traditional relational databases

[-] pennomi@lemmy.world 4 points 18 hours ago

And the key word “big” here is far bigger than most engineers need to deal with. Hell, most supposed “big data” problems I’ve seen people try to tackle are small enough to fit the whole database into memory.

[-] HK65@sopuli.xyz 1 points 19 hours ago

My point is more that 90% of use cases don't need that, and for those that do, you can't just slap eg. Cassandra at it and pretend it's a relational database.

this post was submitted on 28 Aug 2025
350 points (100.0% liked)

Programmer Humor

26006 readers
911 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 2 years ago
MODERATORS