有人恨MongoDB嗎?
For a guaranteed surge of traffic and to hit the Hacker News homepage, all you need to do is write about why you hate MongoDB and/or migrated to some other database. We’ve been using it to power our server monitoring service, Server Density, for over 3 years now and so with experience, many of the problems cited in these posts seem like basic mistakes in deployment and understanding.
With any product, if you decide to deploy it to production you need to be sure you fully understand its architecture and scaling profile. This is even more important with newer products like MongoDB because there is less community knowledge and understanding. This is partly the responsibility of the developers using those tools but also the responsibility of the vendor to ensure that major gotchas are highlighted.
When we originally switched to MongoDB back in 2009 one of the plus points was the detailed documentation. It’s even more detailed now and there is a large project underway rewriting the existing wiki docs. 10gen, the company behind MongoDB, also run huge numbers of conferences around the world so others can share knowledge, offer commercial training, free webinars and recently announced free online courses.
However, there seem to have been quite a few “don’t use MongoDB” posts over the last few months so is there actually a real problem with MongoDB itself?
With any product, if you decide to deploy it to production you need to be sure you fully understand its architecture and scaling profile. This is even more important with newer products like MongoDB because there is less community knowledge and understanding. This is partly the responsibility of the developers using those tools but also the responsibility of the vendor to ensure that major gotchas are highlighted.
When we originally switched to MongoDB back in 2009 one of the plus points was the detailed documentation. It’s even more detailed now and there is a large project underway rewriting the existing wiki docs. 10gen, the company behind MongoDB, also run huge numbers of conferences around the world so others can share knowledge, offer commercial training, free webinars and recently announced free online courses.
However, there seem to have been quite a few “don’t use MongoDB” posts over the last few months so is there actually a real problem with MongoDB itself?
Let’s take a look at a few of them to see what the issues were:
I’ll Give MongoDB Another Try. In Ten Years – 24 Sept 2012
Headline problem: Deployed on 32 bit server so was limited to 2GB database. Writes were being silently discarded.
Mistake: Deployed to 32 bit servers without knowledge of the limit. Did not use safe writes and didn’t check for errors after writes.
Comments: The 32 bit limit is noted (perhaps it should be a warning) on the download page but the main problem was the author did not know when writes started to fail. MongoDB uses unsafe writes by default in the sense that from the driver, you do not know if the write has succeeded without a further call to getLastError. This is because one of the often cited use cases for MongoDB is fast writes, which is achieved by fire and forget queries.
There has been much discussion about whether this is a sensible default and here we’ve seen someone caught out by this. I’ve spoken to quite a few people who didn’t understand this so if it isn’t to be changed, the documentation should highlight it. The PHP docs do thisbut the quick start tutorials for Ruby and Python don’t. With 10gen controlling all official drivers, this inconsistence could be rectified.
Many suggest this default is a good way to get favourable benchmarks but there are no official ones so I don’t think that’s relevant.
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/301743/viewspace-745312/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- Ruby on Rails?有人會用嗎?AI
- 有人用過webwork嗎?Web
- 有人用過Expresso嗎?Express
- flutter 地圖外掛 有人需要嗎?Flutter地圖
- 有人熟悉jboss的datasource設定嗎?
- 還有人不懂布隆過濾器嗎?過濾器
- 有人成功使用FILTER實現壓縮嗎 ??????Filter
- 有人在用JSF嗎?感覺如何?JS
- 有人用過newxy這個框架嗎?框架
- 這種崗位真的有人會去嗎?
- 有人在godaddy搶注過域名嗎?搶注工具好用嗎?Go
- mongodb需要配ssd卡嗎?MongoDBSD卡
- 千萬別用MongoDB?真的嗎?MongoDB
- 請問有人用過Together Edition for WebSphere嗎Web
- 有人想學習作業系統原始碼嗎作業系統原始碼
- MongoDB 或者 redis 可以替代 memcached 嗎?MongoDBRedis
- 10 天了,還有人關注 996.ICU 嗎?996
- 有人用過JMeter或用HttpUnit寫過測試嗎????JMeterHTTP
- 有人跑過辣媽 3.1 的 405b 模型嗎?模型
- Google的搜尋結果真的沒有人為參與嗎?Go
- 請問下有人 搞過 提取圖片裡的文字嗎?
- 思維導圖的簡單畫法有人知道嗎?求分享
- 有人說DockerHub上三成的映象包含漏洞?扯嗎不是?Docker
- 蘋果iPhone SE二代曝光:小屏手機有人買嗎蘋果iPhone
- 有人說Docker Hub上三成的映象包含漏洞?是嗎?Docker
- 一對一主機系統有人用過嗎?適合小型IDC企業嗎?
- 問一下有人試過 Jmeter 共享多個 session 值嗎JMeterSession
- 有人用過Oracle資料庫來裝Jdon嗎?教教我呀!Oracle資料庫
- CentOS 下 sftp 有人能連有人不能連CentOSFTP
- 用過 mongodb 吧, 這三個大坑踩過嗎?MongoDB
- godaddy企業郵箱服務好不好,有人用過嗎?Go
- 有人瞭解 paas 和元件化嗎,想知道這 2 個的區別元件化
- 開發者死後,他的開源專案會有人繼續維護嗎?
- 杭州支付寶公司招開發工程師,有人有興趣嗎?工程師
- mongodb想速成嗎,這個系列教程你可以看看(1)MongoDB
- mongodb想速成嗎,這個系列教程你可以看看(2)MongoDB
- 學完Python好找工作嗎?為什麼有人學完找不到工作?Python
- 機器人老師“小辣椒”即將上崗,還有人捨得逃課嗎?機器人