TE
科技回声
首页24小时热榜最新最佳问答展示工作
GitHubTwitter
首页

科技回声

基于 Next.js 构建的科技新闻平台,提供全球科技新闻和讨论内容。

GitHubTwitter

首页

首页最新最佳问答展示工作

资源链接

HackerNews API原版 HackerNewsNext.js

© 2025 科技回声. 版权所有。

Jepsen Disputes MongoDB's Data Consistency Claims

791 点作者 anarchyrucks将近 5 年前

39 条评论

madhadron将近 5 年前
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&#x27;t been for years (it came in only via a startup acquisition).<p>I had the misfortune to use MongoDB at a previous job. The replication protocol wasn&#x27;t atomic. You would find partial records that were never fixed in replicas. They claimed they fixed that in several releases, but never did. The right answer turned out to be to abandon MongoDB.
评论 #23287412 未加载
评论 #23286019 未加载
评论 #23286339 未加载
评论 #23287459 未加载
评论 #23288295 未加载
评论 #23288155 未加载
评论 #23286373 未加载
评论 #23288363 未加载
评论 #23286625 未加载
评论 #23289039 未加载
评论 #23287223 未加载
评论 #23289164 未加载
评论 #23288570 未加载
评论 #23286941 未加载
naked-ferret将近 5 年前
From the jepsen report:<p>&quot;&quot;&quot;<p>Curiously, MongoDB omitted any mention of these findings in their MongoDB and Jepsen page. Instead, that page discusses only passing results, makes no mention of read or write concern, buries the actual report in a footnote, and goes on to claim:<p>&gt; MongoDB offers among the strongest data consistency, correctness, and safety guarantees of any database available today.<p>We encourage MongoDB to report Jepsen findings in context: while MongoDB did appear to offer per-document linearizability and causal consistency with the strongest settings, it also failed to offer those properties in most configurations.<p>&quot;&quot;&quot;<p>This is a really professional to tell someone to stop their nonsense.
评论 #23297762 未加载
评论 #23286124 未加载
评论 #23285407 未加载
thomascgalvin将近 5 年前
You can tell a lot about a developer by their preferred database.<p>* Mongo: I like things easy, even if easy is dangerous. I probably write Javascript exclusively<p>* MySQL: I don&#x27;t like to rock the boat, and MySQL is available everywhere<p>* PostgreSQL: I&#x27;m not afraid of the command line<p>* H2: My company can&#x27;t afford a database admin, so I embedded the database in our application (I have actually done this)<p>* SQLite: I&#x27;m either using SQLite as my app&#x27;s file format, writing a smartphone app, or about to realize the difference between load-in-test and load-in-production<p>* RabbitMQ: I don&#x27;t know what a database is<p>* Redis: I got tired of optimizing SQL queries<p>* Oracle: I&#x27;m being paid to sell you Oracle
评论 #23286635 未加载
评论 #23286383 未加载
评论 #23287477 未加载
评论 #23286510 未加载
评论 #23287667 未加载
评论 #23288386 未加载
评论 #23287494 未加载
评论 #23290548 未加载
评论 #23288309 未加载
评论 #23286997 未加载
评论 #23287944 未加载
评论 #23289064 未加载
评论 #23299651 未加载
评论 #23286440 未加载
评论 #23286432 未加载
评论 #23294203 未加载
评论 #23287106 未加载
评论 #23286893 未加载
评论 #23287629 未加载
评论 #23287535 未加载
评论 #23286245 未加载
dang将近 5 年前
All: we&#x27;ve changed the submitted URL from <a href="https:&#x2F;&#x2F;www.infoq.com&#x2F;news&#x2F;2020&#x2F;05&#x2F;Jepsen-MongoDB-4-2-6" rel="nofollow">https:&#x2F;&#x2F;www.infoq.com&#x2F;news&#x2F;2020&#x2F;05&#x2F;Jepsen-MongoDB-4-2-6</a> to the work it is reporting on. You might want to read both, since the infoq.com article does give a bit of background.<p>Edit: never mind, I think the other URL - <a href="http:&#x2F;&#x2F;jepsen.io&#x2F;analyses&#x2F;mongodb-4.2.6" rel="nofollow">http:&#x2F;&#x2F;jepsen.io&#x2F;analyses&#x2F;mongodb-4.2.6</a> - deserves a more technical thread, so will invite aphyr to repost it instead. It had a thread already (<a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23191439" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23191439</a>) but despite getting a lot of upvotes, failed to make the front page (<a href="http:&#x2F;&#x2F;hnrankings.info&#x2F;23191439&#x2F;" rel="nofollow">http:&#x2F;&#x2F;hnrankings.info&#x2F;23191439&#x2F;</a>). I have no idea why—there were no moderation or other penalties on it. Sometimes HN&#x27;s software produces weird effects as the firehose of content tries to make it through the tiny aperture of the frontpage.
VonGuard将近 5 年前
Lying about your test results from Jepsen is like going onto a reality show with Chef Ramsey, being thrown off for incompetence, then putting his name on your restautant&#x27;s ads &quot;Chef Ramsey ate here!&quot;<p>I&#x27;d pay to watch Kyle screaming at people in the MongoDB offices, not that he screams or anything. Just a spectacular mental image: &quot;IT&#x27;S NOT ATOMIC! IT COULDN&#x27;T SERIALIZE A DOG&#x27;S DINNER!&quot;
评论 #23288508 未加载
ncmncm将近 5 年前
MongoDB&#x27;s big problem is that their present user base <i>does not want</i> the problems fixed, particularly at default settings, because it would mean going slower. Their users are self-selected as not caring much about integrity and durability. There are lots of applications where those qualities are just not very important, but speed is. People with such applications do need help with data management, and have money to spend on it.<p>The stock market wants to see the product as a competitor with Oracle, so demands all the certifications that say so. MongoDB marketing wants to be able to collect money as if the product were competitive. Many of the customers have management that would be embarrassed to spend that kind of money on a database that is not. And, ultimately, many of the applications do have durability requirements for <i>some</i> of the data.<p>So, MongoDB&#x27;s engineers are pulled in one direction by actual (paying) users, and the opposite direction by the money people. It&#x27;s not a good place to be. They have very competent engineers, but they have set themselves a problem that might not be solvable under their constraints, and that they might not be able to prove they have solved, if they did. Time spent on it does not address what most customers want to see progress on.
评论 #23288628 未加载
评论 #23286355 未加载
jedberg将近 5 年前
MongoDB started life as a database designed for speed and ease of use over durability. That&#x27;s not a good look for a database.<p>People have told me that they have since changed, but the evidence is overwhelmingly and repeatedly against them.<p>They seem to have been successful on marketing alone. Or people care more about speed and ease of use than durability, and my assumptions about what people want in a database are just wrong.
评论 #23286131 未加载
评论 #23286196 未加载
评论 #23287762 未加载
评论 #23286553 未加载
评论 #23286226 未加载
评论 #23286360 未加载
评论 #23288603 未加载
speedgoose将近 5 年前
The Jepsen analysis : <a href="https:&#x2F;&#x2F;jepsen.io&#x2F;analyses&#x2F;mongodb-4.2.6" rel="nofollow">https:&#x2F;&#x2F;jepsen.io&#x2F;analyses&#x2F;mongodb-4.2.6</a>
erulabs将近 5 年前
I wonder if I&#x27;m the only sysadmin in the world who doesn&#x27;t hate MongoDB. Yes, I wouldn&#x27;t use it for new projects, and yes, I wish RethinkDB had taken its place, but it&#x27;s not as horrible as people seem to think. Default configuration... If it weren&#x27;t for RDS&#x27; doing PG-bouncer-style connection management, 95% of production postgres instances would probably fail. It innodb_buffer_pool_size wasn&#x27;t set properly, plenty of data-centers would light on fire. If no one setup a firewall or AOF for redis, it&#x27;s data-loss and data-exposure waiting to happen. If no one adds auth to an HTTP route, it&#x27;s open to the world, etc etc etc. If tech-stacks were legos, software engineers would earn a heck of a lot less.<p>I absolutely agree it&#x27;s been used by people who just don&#x27;t want to write SQL queries, or being used as a text-search-engine in place of something like more appropriate like ElasticSearch, but to mock successful projects who were based on it seems silly. It reminds me of interviewing candidates at a startup who primarily used PHP&#x2F;MySQL. Most of them openly laughed and called it all horrible. I voted &quot;no&quot; on them, and sometimes injected a somewhat toxic &quot;ah, you&#x27;re right - we should close up shop. Someone call Facebook - tell them their tech stack is horrible - shut it all down!&quot;.<p>You can learn a lot about a developer by asking &quot;What do you think about Mongo, JavaScript, or PHP&quot;, and if their response isn&#x27;t a shrug, they&#x27;re probably more concerned with what editor is correct than if the product they&#x27;re building is useful. It&#x27;s an exceptional filter to reject zealots and find pragmatists.<p>All that said, MariaDB with MyRocks is _awesome_, but certainly not with the default settings :)
评论 #23288485 未加载
评论 #23288530 未加载
Ice_cream_suit将近 5 年前
There is much amusement to be obtained from reading Jepsen&#x27;s report:<p>&quot;MongoDB’s default level of write concern was (and remains) acknowledgement by a single node, which means MongoDB may lose data by default.<p>...Similarly, MongoDB’s default level of read concern allows aborted reads: readers can observe state that is not fully committed, and could be discarded in the future. As the read isolation consistency docs note, “Read uncommitted is the default isolation level”.<p>We found that due to these weak defaults, MongoDB’s causal sessions did not preserve causal consistency by default: users needed to specify both write and read concern majority (or higher) to actually get causal consistency. MongoDB closed the issue, saying it was working as designed&quot;<p><a href="http:&#x2F;&#x2F;jepsen.io&#x2F;analyses&#x2F;mongodb-4.2.6" rel="nofollow">http:&#x2F;&#x2F;jepsen.io&#x2F;analyses&#x2F;mongodb-4.2.6</a>
crazybit将近 5 年前
MongoDB is horrible, I get it.<p>What do I use in this situation:<p>1) I need to store 100,000,000+ json files in a database<p>2) query the data in these json files<p>3) json files come from thousands upon thousands of different sources, each with their own drastically different &quot;schema&quot;<p>4) constantly adding more json files from constantly new sources<p>5) no time to figure out the schema prior to adding into the database<p>6) don&#x27;t care if a json file is lost once in awhile<p>7) only 1 table, no relational tables needed<p>8) easy replication and sharding across servers sought after<p>9) don&#x27;t actually require json, so long as data can be easily mapped from json to database format and back<p>10) can self host, no cloud only lock-in<p>Recommendations?
评论 #23291667 未加载
评论 #23291384 未加载
评论 #23292077 未加载
NelsonMinar将近 5 年前
I think it&#x27;s remarkable this report has been out for a week now and no one at MongoDB has commented on it. At least, not that I have seen.
评论 #23285568 未加载
seemslegit将近 5 年前
&quot;We found that due to these weak defaults, MongoDB’s causal sessions did not preserve causal consistency by default: users needed to specify both write and read concern majority (or higher) to actually get causal consistency. MongoDB closed the issue, saying it was working as designed, and updated their isolation documentation to note that even though MongoDB offers “causal consistency in client sessions”, that guarantee does not hold unless users take care to use both read and write concern majority. A detailed table now shows the properties offered by weaker read and write concerns.&quot;<p>That sounds like a valid redress, or am I missing something ?
评论 #23285827 未加载
arpa将近 5 年前
Oh, Jepsen and MongoDB again? Somebody get the popcorn!
评论 #23285376 未加载
sacks2k将近 5 年前
I still remember when MongoDB was the new kid on the block and it was lauded as the only thing you should be using here on HN.<p>I&#x27;m glad my gut instinct was correct and that it really wasn&#x27;t worth the hype. It reminds me of Ruby on Rails.
评论 #23289384 未加载
veritas3241将近 5 年前
Every time I see a post about Mongo it makes me wonder what could have been if RethinkDB was managed differently.
winrid将近 5 年前
I worked at one company where the network traffic just on the MongoDB master was around 2gb&#x2F;s. We had machines with terrabytes of memory, and Mongo worked fine - until we had some replica set nightmares. Mongo support is amazing, but when replication breaks it&#x27;s very hard to diagnose (usually it was our fault, but it felt very fragile).
holoduke将近 5 年前
I used mongodb for 1 year for a milti million user app. I abondened it. The reliability and stability is just not good. I wanted it to be good, but it turned out to be a different
Too将近 5 年前
Ok, so defaults suck, marketing is misleading, documentation and error messages are not exactly obvious. Assuming you are already stuck in the soup, putting those issues aside and getting practical instead instead of throwing more fire on the discussion:<p>If you set w: majority and r: linearizable&#x2F;snapshot, both on collection, client and on transactions. Plus assuming you accept snapshot over Isolation. How bad are those remaining cases in reality and how do these issues compare to other databases? The final &quot;read your future writes&quot; error looks quite scary and does not seem to be caused by configuration error, same with &quot;duplicate effects&quot;.
评论 #23290647 未加载
twoodfin将近 5 年前
Discussed previously:<p><a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23191439" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23191439</a>
评论 #23286223 未加载
matthewborden将近 5 年前
Our company migrated away from MongoDB, here&#x27;s a talk about how we did it, in case you&#x27;re thinking about what is involved and how to do it safely: <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=Knd3m2qh0o8" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=Knd3m2qh0o8</a>
mmackh将近 5 年前
Ubiquity used MongoDB for their CloudKey Gen1 series. When there was an unexpected shutdown, there’s a random chance it would lose its configuration [1]. If your SD backup didn’t work, you’d lose configuration for all WiFi hotspots. If you did client installs like I did, this was a total nightmare. How did they solve it? Release new, more expensive hardware with a battery backup acting like a UPS. Never solved Gen1 issues. Imagine your phone corrupting after a hard reset. Thanks Ubiquity &amp; MongoDB<p>[1] <a href="https:&#x2F;&#x2F;community.ui.com&#x2F;questions&#x2F;MongoDB-corrupt-after-every-powercycle-Cloud-Key&#x2F;6be0a9ad-0049-4a1a-8f73-35cac8b531f9" rel="nofollow">https:&#x2F;&#x2F;community.ui.com&#x2F;questions&#x2F;MongoDB-corrupt-after-eve...</a>
numlock86将近 5 年前
If you want to be &quot;that guy&quot; on parties, ask people what MongoDB is trying so solve. If they bring up the typical &quot;noSQL document store&quot; stuff, aks them why you&#x27;d want to use MongoDB for that.
KingOfCoders将近 5 年前
MongoDB uninstalled our cloud hosted cluster once and the site was down and we needed to setup a large database from backups. Their response was very unhelpful. I would never touch MongoDB again.
whoevercares将近 5 年前
Regardless of tech, MDB is a weird stock that go up steadily every time.
评论 #23289279 未加载
aphyr将近 5 年前
It looks like relatively few people clicked through to read the analysis itself, so @dang&#x27;s kindly offered to repost it. You can find the analysis here:<p><a href="https:&#x2F;&#x2F;jepsen.io&#x2F;analyses&#x2F;mongodb-4.2.6" rel="nofollow">https:&#x2F;&#x2F;jepsen.io&#x2F;analyses&#x2F;mongodb-4.2.6</a><p>... and the corresponding HN thread here:<p><a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23290844" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23290844</a>
jwr将近 5 年前
If you&#x27;re looking for MongoDB done right, it does exist and it&#x27;s called RethinkDB. For some reason it didn&#x27;t catch on and become popular — but it&#x27;s nicer, and most importantly, it doesn&#x27;t lose your data.<p>Data point: I have been running my production system (a fairly complex SaaS) on RethinkDB for the last 4 years.
评论 #23290738 未加载
rmdashrfstar将近 5 年前
Main argument for using document-oriented databases: <a href="https:&#x2F;&#x2F;martinfowler.com&#x2F;bliki&#x2F;AggregateOrientedDatabase.html" rel="nofollow">https:&#x2F;&#x2F;martinfowler.com&#x2F;bliki&#x2F;AggregateOrientedDatabase.htm...</a>
pier25将近 5 年前
Anyone has a recommendation for a NoSQL database?<p><a href="https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23253870" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=23253870</a><p><i>(not Mongo obviously)</i>
评论 #23288791 未加载
hartator将近 5 年前
[repost - asking for help] I am disappointed with the direction that MongoDB took this past few years. Going ACID shows in benchmarks [1] and it’s not advisable if you are using MongoDB for stats and queue. (No one uses MongoDB for financial transactions despite the changes.)<p>And the recent change to a restrictive license is worrisome as well. I have been thinking of forking 3.4 and make it back to “true” open source and awesome performance. (If any C++ devs want to help out, reach out to me! username @gmail.com)<p>[1] <a href="https:&#x2F;&#x2F;link.medium.com&#x2F;PXIeZfhhH6" rel="nofollow">https:&#x2F;&#x2F;link.medium.com&#x2F;PXIeZfhhH6</a>
评论 #23285671 未加载
评论 #23286280 未加载
评论 #23285852 未加载
codecamper将近 5 年前
&lt;rant&gt;<p>This corruption is brought on by the stock market.<p>Have a look also at Shopify. They go and tack on 2% fees when customers use Google Pay or Apple Pay to checkout with. They recently announced that FB would be pulling ecom sales within app, and yet Shopify plans to charge 2% on top of FB fees. That&#x27;s what I could gather despite the pricing being rather opaque.<p>Is this a step forward or backwards? Charging 2% &#x2F; transaction for modern Internet protocols running on cheap hardware across a public network?<p>&lt;&#x2F;rant&gt;
jpxw将近 5 年前
Obligatory <a href="https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=b2F-DItXtZs" rel="nofollow">https:&#x2F;&#x2F;www.youtube.com&#x2F;watch?v=b2F-DItXtZs</a>
crackinmalackin将近 5 年前
Can anyone share any positive experiences with MongoDB? I wouldn’t think MongoDB as perfect like any other piece of tech, but the unanimous hatred for it seems a little overblown. Not trying to discredit the bad experiences people have had with it. Just curious to know where people are using it successfully
Hydraulix989将近 5 年前
This has been a known issue for a while:<p><a href="https:&#x2F;&#x2F;hackingdistributed.com&#x2F;2013&#x2F;01&#x2F;29&#x2F;mongo-ft&#x2F;" rel="nofollow">https:&#x2F;&#x2F;hackingdistributed.com&#x2F;2013&#x2F;01&#x2F;29&#x2F;mongo-ft&#x2F;</a><p>MongoDB: Broken By Design
评论 #23286069 未加载
评论 #23286969 未加载
etxm将近 5 年前
MongoDB is the &#x2F;dev&#x2F;null of databases
therealdrag0将近 5 年前
How is Cassandra as an alternative to MongoDB?
评论 #23288125 未加载
评论 #23288775 未加载
评论 #23287965 未加载
m0zg将近 5 年前
Dan Luu suggested on Twitter that MongoDB trolled Kyle into testing Jepsen again. I think they&#x27;ve made a mistake though. :-)
jtdev将近 5 年前
It seems that the only tangible benefit remaining for DocumentDBs over SQL platforms (PostgreSQL, SQL Server, etc.) is scalability. Jr. devs thinking they can have a career in software dev without learning SQL is not a benefit.
gigatexal将近 5 年前
Typical HN posts of late hating on Javascript and MongoDB from database elitists -- the thing is there&#x27;s a tool for a job and as engineers we need to figure out what tool best suits our use cases. It could very well be a NoSQL database such as Mongo or a relational one like Postgres or MySQL.
评论 #23286797 未加载