推荐工具
› RoboMongo
推荐书目
› 50 Tips and Tricks for MongoDB Developers
Related Blogs
› Snail in a Turtleneck
family
V2EX  ›  MongoDB

mongodb 可靠吗?为什么经常看到一些如[不要使用mongodb]的言论?

  •  
  •   family · Nov 27, 2013 · 17088 views
    This topic created in 4727 days ago, the information mentioned may be changed or developed.
    45 replies  •  2016-01-04 09:55:13 +08:00
    ritksm
    ritksm
    Nov 27, 2013❤️5
    1
    因为他们不知道如何让MongoDB靠谱。problem solved
    andyhuax
    andyhuax
    Nov 27, 2013 via iPhone
    2
    让靠谱的人用它,它就可靠,否则…
    lichao
    lichao
    Nov 27, 2013
    3
    抛开业务场景谈这个话题没有意义
    griffinqiu
    griffinqiu
    Nov 27, 2013
    4
    因为他们不知道如何让MongoDB靠谱。problem solved
    我顶。。。
    merlin852
    merlin852
    Nov 27, 2013
    5
    没有NOSQL的设计经验,真的不是很推荐,还不如mysql
    plucury
    plucury
    Nov 27, 2013
    6
    当热数据超过内存的时候,痛苦就开始了
    anheiyouxia
    anheiyouxia
    Nov 27, 2013
    7
    不了解,但是我想说,也很多人说,不要用MySQL,因为他不靠谱,但是FaceBook就是用MySQL的。
    timothyye
    timothyye
    Nov 27, 2013 via Android❤️1
    8
    除了不支持事物,还没看到有不靠谱的地方
    breeswish
    breeswish
    Nov 27, 2013
    9
    MongoDB是很好的,但不要在什么都不了解的情况下盲目使用MongoDB,那会很糟糕

    大概是这个意思吧
    ibaser
    ibaser
    Nov 27, 2013
    10
    我就是在不了解情况的情况下在使用。。。

    目前遇到的问题,数据库备份出来只有几十个M,但各种数据库文件占用了几十个G,怎么破?可以数据压缩或清理么。 @ritksm @plucury @timothyye @breeswish
    shiny
    shiny
    PRO
    Nov 27, 2013
    11
    反对的是头脑发热就去用,你问出这种问题来说明你就不适合使用。
    ritksm
    ritksm
    Nov 27, 2013
    12
    @ibaser 试试Tokumx...我用了还不错
    binux
    binux
    Nov 27, 2013
    13
    @ibaser 就是这么设计的,空间预分配
    ibaser
    ibaser
    Nov 27, 2013
    14
    @binux 还有就是缓存数据库也用的mongodb(都设置了过期时间的),怀疑是不是缓存太多了或者定义的索引太多了
    ritksm
    ritksm
    Nov 27, 2013
    15
    @ibaser 缓存请用Redis - -
    jk2r
    jk2r
    Nov 27, 2013
    16
    @family,得看你的应用场景。新手的话,生成环境使用时,运维与学习成本还是较高的。根据业务指定性能指标,实际测试应该是比较好的方法。


    @ibaser 库写不是特别大的话,可以考虑关闭预分配。http://docs.mongodb.org/manual/reference/configuration-options/,noprealloc参数。
    ispinfx
    ispinfx
    Nov 27, 2013❤️1
    17
    @ritksm

    因为他们不知道如何让MongoDB靠谱。problem solved

    已感谢
    misaka
    misaka
    Nov 27, 2013❤️1
    18
    @ritksm "因为他们不知道如何让MongoDB靠谱。" +1 已感谢。

    目前在用,感觉很可靠。
    halfelf
    halfelf
    Nov 27, 2013
    19
    sf的回答毫无意义,这个逻辑可以推广到一切质疑
    ibaser
    ibaser
    Nov 27, 2013
    20
    @jk2r 谢谢 我试试
    ritksm
    ritksm
    Nov 27, 2013
    21
    @halfelf 我这么回答的意思就是,能够让楼主rest assured,去研究如何靠谱地用MongoDB而不是怀疑MongoDB到底可不可靠....我感觉没啥逻辑上的问题
    wesley
    wesley
    Nov 27, 2013
    22
    我司JAVA部门的猪头们从来不管业务逻辑都坚定不移地用mongodb
    xzl
    xzl
    Nov 27, 2013
    23
    让靠谱的人在靠谱的应用环境下靠谱的用。看哪些喷的不是没切片就是没做副本集,一不小心加个索引加没了。热数据大于内存?加内存啊,前端再换上redis哈,热数据大于内存你换mysql就能好使?
    yuxing1171
    yuxing1171
    Nov 27, 2013
    24
    要根据业务需求来决定, 单纯的为了mongodb而使用, 才是最不靠谱的。
    seraphln
    seraphln
    Nov 27, 2013
    25
    @ibaser 可以试试 compact.不过会锁库。
    另外,直接remove数据mongodb不会直接释放文件。所以体积会越来越大。
    josephshen
    josephshen
    Nov 27, 2013
    27
    水平不够,用什么都不靠谱。
    winiex
    winiex
    Nov 27, 2013
    28
    @ritksm 老江你说日志收集用 mongodb 做,然后以后数据分析基于它,这个 use case 靠谱么?
    est
    est
    Nov 27, 2013
    29
    我看过对mongodb的吐槽都是因为开发者2了。
    txlty
    txlty
    Nov 27, 2013
    30
    用惯了mssql/mysql/oracle,会很难理解mangodb。
    ritksm
    ritksm
    Nov 27, 2013
    31
    @winiex 靠谱啊...我现在就做了个上报分析的...然后结合Redis基本上简单的数据分析挖掘没啥问题
    ritksm
    ritksm
    Nov 27, 2013
    32
    @winiex 当然很吃内存是个问题...不过现在内存都可以弄到很大了也无所谓了...BTW你暴露我了
    reorx
    reorx
    Nov 27, 2013
    33
    对未知事物的恐惧,以及维护自己所擅长事物权威性的本能。
    ritksm
    ritksm
    Nov 27, 2013
    34
    @timothyye 其实这个tokumx也解决掉了...虽然我没用到 http://www.tokutek.com/2013/04/mongodb-transactions-yes/
    jamiesun
    jamiesun
    Nov 27, 2013
    35
    @winiex 我也在计划用mongodb做日志分析了
    ritksm
    ritksm
    Nov 27, 2013❤️2
    37
    @gihnius
    第一个Its volume on disk is growing 3-4 times faster than the real volume of data it store:设计就是这样的 参见 http://docs.mongodb.org/manual/faq/storage/
    第二个 it eats up all the memory without the possibility to limit this:MongoDB设计的时候的想法(我记得哪里看到)就是用系统的内存管理去控制而不是自己搞一套(参见 http://docs.mongodb.org/manual/faq/fundamentals/#does-mongodb-require-a-lot-of-ram ),但是Tokumx加了一个参数叫做cacheSize可以限制缓存大小,虽然如果你的数据超过了这个大小,会依赖磁盘性能。而且如果内存真的占用过大了一定是你的索引建的不科学,再大就参照第四个吧。
    第三个it begins to slow down the application because of frequent disk access:什么db超过了缓存大小不会去读磁盘数据,我表示不知,求科普
    第四个We don’t want to set a server with more than 100Gb of memory to Errbi:那他一定不知道有个东西叫做auto-sharding,这么强大的功能都不用=_=
    第五个MongoDB require much more attention than we have time. Perhaps we just have more experience in working with postgresql:正如@reorx 所说,难以跳出自己的comfort zone


    点个赞吧亲嘿嘿
    winiex
    winiex
    Nov 28, 2013
    38
    @ritksm = =,爆爆更健康......。看上这个 use case 主要是因为 mongodb 的数据模型对于查询来说太方便了,确实挺适合于这个场景的。我听说,貌似为了提供这种强大的检索能力就不得不各种吃内存吃硬盘,此乃原因之一,这个确实是一只比较纠结的事情。

    另外,mongodb 做读写分离、replication 什么的方便吗?要优化读写什么的,单单 scale up 肯定是不行的吧~。
    winiex
    winiex
    Nov 28, 2013
    39
    @ritksm 我想你用 redis 应该也是做 mongodb 前端的 cache,并且利用 redis 的数据类型的可查询性来做 mongodb 的查询备胎吧。现在这种方式够用咩?
    ritksm
    ritksm
    Nov 28, 2013
    40
    @winiex MongoDB的replication其实挺方便的了 http://docs.mongodb.org/manual/replication/

    Redis的set和sorted set太好用了- -
    winiex
    winiex
    Nov 28, 2013
    41
    @ritksm 嗯,是听说 mongodb 的 Replication 挺多坑的,就想问问你实操的过程中有没有被坑过~。
    ritksm
    ritksm
    Nov 28, 2013
    42
    @winiex 还没具体用到,闲暇时候研究了下而已=-= 只是一些不咋重要的数据分析无所谓做不做Replication了的。。。坑到了也会有解决办法的撒
    yutify
    yutify
    Jan 13, 2014 via iPhone
    43
    最近几个月对 mongodb 的好感度逐日下降。据说前段陌陌劲舞团的事故也是不正确使用 mongodb 导致的。后来陌陌的技术人员飞上海帮久游把数据库移到了 redis 上。
    dingyaguang117
    dingyaguang117
    May 14, 2014 via iPhone
    44
    查不出原因的update失败算嘛
    qw7692336
    qw7692336
    Jan 4, 2016
    45
    你是不是用 Google 搜了"mongodb"关键词
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   4828 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 85ms · UTC 08:44 · PVG 16:44 · LAX 00:44 · JFK 03:44
    ♥ Do have faith in what you're doing.