Live data from Hacker News

Jepsen Disputes MongoDB's Data Consistency Claims

infoq.com

241–250 of 416 posts

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#241
post #216
post #122

Earlier quoted context omitted.

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

Because good engineers don't take for granted what's written on HN and do a thorough evaluation of a product, MongoDB or something else.

If there's a more thorough evaluation than Jepsen, please let me know.

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#242

Earlier quoted context omitted.

SQLite has always intentionally failed to report this error: sqlite> create table foo (n int); sqlite> insert into foo (n) values ('dave'); sqlite> select count(*) from foo where n = 'dave'; 1

That is documented as a feature. https://www.sqlite.org/different.html under "Manifest typing". SQLite does not use column typing except in integer primary keys.

Fair enough, but just because you call a bug a feature doesn’t mean it’s not a bug.

I think most people have realised weak typing is not a good idea in programming languages. It’s especially not a good idea in databases.

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#243

You can tell a lot about a developer by their preferred database. * Mongo: I like things easy, even if easy is dangerous. I probably write Javascript exclusively * MySQL: I don't like to rock the boat, and MySQL is available everywhere * PostgreSQL: I'm not afraid of the command line * H2: My company can't afford a database admin, so I embedded the database in our application (I have actually done this) * SQLite: I'm…

What about MSSQL?

"We are a Microsoft-only shop"

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#244

Earlier quoted context omitted.

they use sequelize migrations for now, eventually we may want to go to something more advanced. take a backup, apply migrations has worked so far. force sync extremely harmful, sequelize is terrible for not being able to incrementally do schema changes. I don't think it can actually add a column, for example. For us, as a result, it means anytime we add a new model or change a table, we write the table definition in…

Sequelize documentation is pretty bad for some of this stuff, but it has the functionality you listed. You can give Postgres a default uuid by setting the column options to ‘new Sequelize.UUIDV4()’, and queryInterface supports add, remove and change column. The biggest annoyance I had with migrations was anything that needed a model to be defined inside the migration. I eventually gave up on that and just wrote my ow…

I am not super sure, but i remember trying this, and it did not work insides migrations :(

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#245

Earlier quoted context omitted.

Sequelize documentation is pretty bad for some of this stuff, but it has the functionality you listed. You can give Postgres a default uuid by setting the column options to ‘new Sequelize.UUIDV4()’, and queryInterface supports add, remove and change column. The biggest annoyance I had with migrations was anything that needed a model to be defined inside the migration. I eventually gave up on that and just wrote my ow…

I am not super sure, but i remember trying this, and it did not work insides migrations :(

You might be right. It's quite a while since I was working on that project, and now I'm starting to doubt how sure I am about this...

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#246

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…

As a skateboarder I've always found the name itself rather amusing as the term mongo has relatively negative connotations in skating.

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#248
post #26
post #20

Earlier quoted context omitted.

Postgres has terrible indexing with json. It doesn’t keep statistics so simple queries sometimes take much longer than expected due to query planner not knowing much about the data.

“It doesn’t keep statistics” is a weird way to say “I expect full table scans to always be fast”. Create a functional index.

I’m not sure if I can even understand what you are talking about or why you said that.

If you have pid,{name:’val’, others...}. And an index of name with a million John and one Jane. Good luck getting fast results.

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#249

You can tell a lot about a developer by their preferred database. * Mongo: I like things easy, even if easy is dangerous. I probably write Javascript exclusively * MySQL: I don't like to rock the boat, and MySQL is available everywhere * PostgreSQL: I'm not afraid of the command line * H2: My company can't afford a database admin, so I embedded the database in our application (I have actually done this) * SQLite: I'm…

I've used H2 Ina couple of my personal JVM applications mainly because when it comes to JVM it's a somewhat nicer fit than SQLite

Re: Jepsen Disputes MongoDB's Data Consistency Claims

#250
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

MySQL has definitely improved a lot since 5.0 but it still had a few warts.
Post reply on HN