MongoDB 到底靠谱不靠谱?

2017-07-20 19:08:33 +08:00
 ericgui
这篇湾区日报选的文章,似乎意思是 MongoDB 是大家曾经的选择,曾经火过一阵子,现在不行了,现在都不用了。
兄弟们谈谈吧。

https://wanqu.co/a/5340/2017-07-10-why-did-so-many-startup-choose-mongodb.html?s=/issues

为何曾经有那么多的创业公司使用 MongoDB

骇人听闻的故事:一家著名独角兽公司在迁移到 MongoDB 时发生巨大灾难,发誓从此只用无聊不酷的技术;某著名风投说要聘专业团队帮他投资的那些创业公司们统统迁移出麻烦不断的 MongoDB。

有个问题:刚入职场的年轻工程师如何判断他 /她所要投资的技术是像 2006 年左右的 Rails、2007 年左右的 Hadoop、还是更像 2010 年前后的 MongoDB ?有点像投资创业公司,如何押对宝?还是尽量选择无聊的成熟的老技术、专注于解决实际问题、白猫黑猫抓到老鼠就是好猫?
19400 次点击
所在节点    程序员
76 条回复
frye
2017-07-21 16:25:16 +08:00
弃坑 Mongo 是一个很好的选择,当数据量上去之后,弃坑也是一个早晚的事情。
我所遇到的用 Mongo 的大点的公司,到目前为止,没有一个公司没有弃坑的。
nullcc
2017-07-21 16:30:39 +08:00
mongodb 存存 log 什么的还是不错的
ryanzyy
2017-07-21 16:38:50 +08:00
客观的说一句
看到拿 MongoDB 跟 PostgreSQL 相比的评论
就好比看到
外行人把 JavaScript 称作 JAVA
rrfeng
2017-07-21 16:40:59 +08:00
@frye 360 ?
j
2017-07-21 17:12:59 +08:00
小规模没问题,中大规模么,等你哪天想 repair 的时候就会想哭了。
sampeng
2017-07-21 19:57:29 +08:00
我的经验是有精力去爬 mongodb 的坑,早就把 mysql 环境打造的很好了。从整体代价上来看其实是一样的。。
前面有人说是人的问题,不是工具。。这个没错。会 mysql 的一大把,会 mongodb 并且精通的打着灯笼都找不到。从这点来看,不说 postgresql。。和 mysql 比都没优势。。所有所谓 mongodb 解决的问题,mysql 用反范式照样能做。复杂度两者其实是一样的。什么?改改配置就能用。。做梦吧,掉坑里想出都出不来。。照样得改代码,照样得容错,照样的监控性能查找性能瓶颈。。。
那么问题来了。。。在大规模使用下 mongodb 和其他的数据库产品没有太大优势而言。。那么,为毛要去跳这个坑?
恩。。答案就是:
因为大部分创业公司一开始用的 nodejs。。。大家可以看,nodejs 的大部分带数据库存储的都是走的 mongodb。。。。。
popbones
2017-07-21 20:29:12 +08:00
@sampeng 你说的很对,我司就是这样的例子,初创的时候业务逻辑简单,关系少上了 mongo,之后各种新的逻辑叠加在一起很难有效的 denormalize,数据量上来只能加资源。当然不是说没办法,但是从人力到资源的的成本都飙升,并且意味着未来的成本会更高。所以现在在逐渐把业务逻辑处理挪到其他的数据库,Mongo 做 document store 读写和简单的逻辑还是可以的。
jk0
2017-07-21 20:33:26 +08:00
@akrf 感觉你很有故事?
hanxiansheng
2017-07-22 08:49:24 +08:00
蒙古数据库( MongoDB)我是挺喜欢的
minvacai
2017-07-22 09:08:47 +08:00
@hwwen 索引没做好吧
lulalalulala
2017-07-22 15:38:28 +08:00
我有好多项目都用 mongodb,只是我的项目特点是没什么事务,所以用它很爽。如果是那种事务性高的,肯定不能选 mongodb。选数据库要看场景,选技术也一样。
CRVV
2017-07-22 19:57:56 +08:00
@ryanzyy
https://www.enterprisedb.com/postgres-plus-edb-blog/marc-linster/postgres-outperforms-mongodb-and-ushers-new-developer-reality
比不比没什么不对的,EnterpriseDB 也是正经搞 PostgreSQL 的公司
比较的结论就是把 PostgreSQL 当 MongoDB 用,MongoDB 也不如 PostgreSQL,更不用说当关系型数据库来用了
littlehz
2017-07-23 00:41:48 +08:00
据说坑多,我司人少,一直不敢用
fiht
2017-07-23 07:25:47 +08:00
还是看需求吧...
层主现在写的爬虫就用的 MongoDB 存的数据,原因的我的爬虫保存了 HTTP response header 字段,而这个字段里面的内容是很不确定的,这个用 SQL 实现起来就很麻烦,但是 NoSQL 的就很实用了,直接 insert 进去就可以。
所以还是跟业务场景有关吧,就爬虫来说,我的理解是 MongoDB 存脏数据,MySQL(SQL)存清洗过后的数据
forex118899
2017-07-23 10:39:00 +08:00
no-sql 裡最靠譜 首選問自己到底要 sql 還是 no-sql
winglight2016
2017-07-23 12:36:52 +08:00
我记得几年前看过一本《 mongodb 权威指南》的书,有兴趣的可以看看,里面解释了适合 mongodb 的几种场景,包括可能会有的坑以及解决办法,个人认为,说 mongodb 不好使,一是没用对地方,二是不会用,没有其他原因

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://tanronggui.xyz/t/376790

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX