Live data from Hacker News

Jepsen Disputes MongoDB's Data Consistency Claims

infoq.com

251–260 of 416 posts

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#251
post #101

Earlier quoted context omitted.

As someone who chose MySQL and provides direction to developers who really like Postgres, and who also uses Postgres for fun, I do find myself having to both defend MySQL as a prudent option and convince them that I know anything at all about Postgres or computer science. :)

I tend to find people who argue with me against MySQL bring up things that haven't been true in a long time such as Unicode or NULL handling. I'd probably choose Postgres over MySQL for a new project just to have the improved JSON support, but there's upsides to MySQL too: - Per-thread vs per-process connection handling - Ease of getting replication running - Ability to use alternate engines such as MyRocks

MyRocks is a little bit janky in my experience - it doesn't support some transaction isolation levels, fails to handle some workloads that rely on locking (such as a job queue), has failed to upgrade MariaDB minor versions [0], has very sparse documentation, and overall has given me some amount of unexpected behavior.

Though I'm willing to put up with it due to its incredible compression capabilities...

[0]: https://jira.mariadb.org/browse/MDEV-22609

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#252
post #107

Earlier quoted context omitted.

What tools are these? Curious as a Postgres user

As a PostgreSQL user. Pgadmin 4 is the worst.

PgAdmin3 was much better, but then they decided to turn it into a web application and we got PgAdmin4 Very annoying.

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#253
post #122

In the circles I run in, MongoDB is regarded as a joke and the company behind it as basically duplicitous. For example, they still list Facebook as their first user of MongoDB on their website, for example, but there is no MongoDB use in Facebook hasn't been for years (it came in only via a startup acquisition). I had the misfortune to use MongoDB at a previous job. The replication protocol wasn't atomic. You would f…

Nobody seems to like it. Someone has any idea on why the company still has their revenue increasing ?

I like it as in certain situations.

For situations where you don't know the schema or for different schemas per record mongo is a great place to dump.

For data when you care about speed and don't care about losing some data. Think sending back a game screen when the client moves and requires a redraw. Depending on how fast the screen is changing dropping a screen isn't the biggest deal.

Reporting was a little bit more difficult but somehow rewarding.

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#254

Earlier quoted context omitted.

SQLite accepts a type constraint without enforcing it. That's a bug just like MySQL sometimes accepting a foreign key constraint without enforcing it.

It's not a type constraint. It's a hint to SQLite to try and coerce values when it can. Here's what that link parent posted says: > As far as we can tell, the SQL language specification allows the use of manifest typing. Nevertheless, most other SQL database engines are statically typed and so some people feel that the use of manifest typing is a bug in SQLite. But the authors of SQLite feel very strongly that this i…

That doesn't change the fact that it's not a good idea.

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#255
post #18

Earlier quoted context omitted.

Agree, and the "Mongo and Jepsen" page isn't targeting distributed systems experts, most of them know to stay away, because even if there are things that mongo does right, other systems do it better.

What other systems would you recommend?

What do you want to do?

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#256

I wonder if I'm the only sysadmin in the world who doesn't hate MongoDB. Yes, I wouldn't use it for new projects, and yes, I wish RethinkDB had taken its place, but it's not as horrible as people seem to think. Default configuration... If it weren't for RDS' doing PG-bouncer-style connection management, 95% of production postgres instances would probably fail. It innodb_buffer_pool_size wasn't set properly, plenty of…

RethinkDB is a better solution to every problem that MongoDB claims to solve. I wouldn't use it for everything. But once my need for a document store outgrows what's convenient and easy in Postgres with JSONB, I reach for Rethink. It's great. There's a Jepsen analysis of it a while back too that is quite positive. It's a shame that Rethink did so many things right and failed as a company while Mongo continues to do a…

> It's a shame that Rethink did so many things right and failed as a company while Mongo continues to do almost everything wrong as a company and still gets business.

This seems to be more the rule than the exception, doesn't it?

It's even not that hard to come up with explanations for this, main one certainly being that popularity depends essentially upon simplicity.

And simplicity might not even be economically as inept as we would like it to be. Indeed, since only a small minority of all the systems that are designed reach production and stay there for long then it can make sense to use the quickest piece of junk available, at least until proven it will stick.

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#257
post #211
post #138

Earlier quoted context omitted.

I once worked on a system for notifying customers of events by posting to their APIs. Events came in on a Rabbit queue and got posted. If a customer's API was down, the event would go back on the queue with a header saying to retry it after some time. You can do some sort of incantation to specifically retrieve messages with a suitable header value, to find messages which are ready to retry. We used exponential backo…

lol api could be down for a week? What?

Not everything is or needs to be webscale.

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#258
post #101

Earlier quoted context omitted.

As someone who chose MySQL and provides direction to developers who really like Postgres, and who also uses Postgres for fun, I do find myself having to both defend MySQL as a prudent option and convince them that I know anything at all about Postgres or computer science. :)

I tend to find people who argue with me against MySQL bring up things that haven't been true in a long time such as Unicode or NULL handling. I'd probably choose Postgres over MySQL for a new project just to have the improved JSON support, but there's upsides to MySQL too: - Per-thread vs per-process connection handling - Ease of getting replication running - Ability to use alternate engines such as MyRocks

Does MySQL have transactional DDL yet? Because if not, it is not a contender as a primary datastore.

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#259

In the circles I run in, MongoDB is regarded as a joke and the company behind it as basically duplicitous. For example, they still list Facebook as their first user of MongoDB on their website, for example, but there is no MongoDB use in Facebook hasn't been for years (it came in only via a startup acquisition). I had the misfortune to use MongoDB at a previous job. The replication protocol wasn't atomic. You would f…

But their marketing team early on was amazing.

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#260

Earlier quoted context omitted.

I admit I was kind of thinking that, even though I appreciated the humor. :) I imagine an awful lot of web sites out there would do just fine with SQLite as their back end.

It's great for small, read-only websites that aren't quite simple enough to just be static HTML sites. Also for desktop app config/data DBs.

Can you elaborate? I've seen benchmarks and from their website what I understood is that it can handle really massive reads and writes, tens (maybe hundreds) thousands of ops per second, but personally never tested to this extent.
Post reply on HN