1
fire9 2012-09-11 10:58:52 +08:00
如果你是关系型的数据,我劝你还是考虑MySQL,PostGreSQL等关系型数据库吧。MongoDB由于处理日志等简单关系的类型还是不错的。
|
2
superisaac 2012-09-11 11:18:52 +08:00
我们在用mongodb, 自己写了个mapping. 类似django那种方法。mongodb可以代替关系数据库。schema migration也比关系数据库简单。findAndModify之类的方法很方便。
mongodb的问题是没有事务支持,这点对于严肃应用来说比较难办。 |
3
holystrike 2012-09-11 11:26:15 +08:00
据个人的实际使用中,schemeless确实没多大的优势体现,某些时候反而有弄巧成拙的感觉
|
4
holystrike 2012-09-11 11:27:17 +08:00
当然了,也不排除本RDB禁锢较深,没有找到 schemeless 的最佳实践
|
5
lqs 2012-09-11 12:25:49 +08:00
schemeless适合在一个表里存储有细微差别的数据,省掉了在关系型数据库里要用多个表建立一对一关系。
另外以前版本mongodb性能是软肋,2.2里也许有提升。 |
6
W2EX 2012-09-11 13:16:11 +08:00
大内存机器的话性能很好,关键是要至少2台以上服务器才能用于生产环境
|
7
avatasia 2012-09-11 13:31:33 +08:00
|
8
forest520 2012-09-11 13:50:53 +08:00
mongodb不用在开发前定好schema,可以后续迭代的时候进行修改,这是它最大的优势,客观上提升了开发效率。
如果要schema,那还用mongodb干嘛? |
9
ivyshark 2012-09-11 14:01:12 +08:00 1
mongodb简直是一坨屎
mongodb的写全局锁2.2才换到db级别的锁 mongodb没有事务支持 怕丢数据的不要用 用了mongo之后你会发现执行语句出错了是不返回错误的 当然这也是它快的原因之一 号称支持gis 却连polygon的and或者or查询都做不了 至少到2.2都没有解决. group只能用mapreduce,用不上索引,大数据量group效率的还不如mysql。2.2之后倒是可以用新框架,我试了下还是很慢。 |
10
ivyshark 2012-09-11 14:04:00 +08:00
忘记了 mongo数据超过一定数量排序会直接出错 这个bug目前也为解决 很奇葩
|
11
ivyshark 2012-09-11 14:06:03 +08:00
还有用sharding做生产环境的简直是自寻死路 一旦挂掉了 就得整个停下来重新做sharding
反正是一坨屎 |
15
W2EX 2012-09-11 14:59:39 +08:00
总要看用的人怎么用,用不用得好
|
20
W2EX 2012-09-11 21:06:44 +08:00
@ivyshark 关于性能问题: 只要你有大内存,热数据全部放在内存里,真的可以很快,数据多了可以分片... 扩展方向是 先纵向 再横向
关于可靠性: 只能说mongo是给有钱人用的,要没几台大内存机器组replica set 没有快照备份机制式 是不能用于生产环境 另外空间占用大也是真的... 但是咱不能就说它性能不好、不可靠啊,出得起钱性能就好就可靠了 |
21
ipconfiger 2012-09-11 22:42:58 +08:00
用在生产系统中实际运维的时候你会很想屎的......
|
23
ivyshark 2012-09-12 10:32:56 +08:00
|
24
avatasia 2012-09-12 10:51:57 +08:00
今天在重整数据,从oracle到mongodb,一晚上18w条,崩溃。正式环境有2000w条左右。
|
27
ivyshark 2012-09-12 13:05:07 +08:00
@avatasia 我们逻辑比较复杂 还没有在服务器上调 我笔记本上随便测试了下 10W条6分钟不到 我觉得还行 因为我们每条记录都做了很多验证
|
29
avatasia 2012-09-12 13:30:40 +08:00
@ivyshark 我也做了验证,但是为毛,1个小时就1w条左右,太操蛋了。一条要100ms,也有可能0。
本地局域网两台机器,一开始以为是mongodb开了journal影响速度,已经关了,但还是慢。我循环里又没sleep,真要命啊。 |
31
superisaac 2012-09-12 16:40:13 +08:00
@avatasia 为什么我上次导入13万条记录到mongodb,也就十几秒时间?秒杀postgresql
|
32
avatasia 2012-09-12 16:58:40 +08:00
@superisaac 13w条,光载入内存也得要这么久吧。
|
33
superisaac 2012-09-12 20:20:50 +08:00
@avatasia 几十M而已。
|
34
dcoder 2018-05-11 08:51:51 +08:00
MongoDB, PostgreSQL, MySQL 都用过, 我觉得下面这篇说得不错, 以前没读到过.
http://www.sarahmei.com/blog/2013/11/11/why-you-should-never-use-mongodb/ |
35
dcoder 2018-05-11 08:52:20 +08:00
发完后,发现这个帖子好老...
|