V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
推荐工具
RoboMongo
推荐书目
50 Tips and Tricks for MongoDB Developers
Related Blogs
Snail in a Turtleneck
cngithub
V2EX  ›  MongoDB

有谁在产品环境中测试过MongoDB的插入效率吗?

  •  
  •   cngithub · 2011-10-17 10:58:52 +08:00 · 7838 次点击
    这是一个创建于 4784 天前的主题,其中的信息可能已经有所发展或是发生改变。
    目前,在设计一个系统架构,在考虑是否采纳MongoDB。很希望过来人给点经验。

    主要需求是10万人次在5台服务器上的同时插入操作,每人次大约插入1000条数据左右,时间周期为1个小时以内,当然越短越好。

    不知道MongoDB在这种产品情景下,是否有比较明显地取代mysql的优势?以及如果确定采纳MongoDB,服务器买什么样的比较合适?

    系统架构拓展性要求较高,项目目标是在10万人次,能简单地通过增加服务器,最终变成二千万人次。
    7 条回复    1970-01-01 08:00:00 +08:00
    cngithub
        1
    cngithub  
    OP
       2011-10-17 11:07:04 +08:00
    ,10万人,每人插入1000,就是1亿插入,5台服务器,每台2000万。一个小时完成。相当于每秒钟有5555个插入。

    当然,这是最极端的情况。

    实际上,1小时可以变为2小时,5台服务器可以变成10台。插入的数据量也可以变成100条甚至10条。

    不知道有没有有实际经验的朋友给点意见?
    feilaoda
        2
    feilaoda  
       2011-10-17 18:21:38 +08:00
    @cngithub 哥,mongodb可以做到1w/秒以上的,你这点算什么
    keakon
        3
    keakon  
       2011-10-17 18:39:29 +08:00
    不知道你插那么多干啥,twitter上亿的用户,每秒发推的峰值也就1万左右。
    mongodb的瓶颈应该在内存,当内存不够时,插入和读取性能会骤降;而你这样插入,内存肯定很快就用完了。
    napoleonu
        4
    napoleonu  
       2011-10-17 23:04:52 +08:00
    MySQL也能做到。
    cngithub
        5
    cngithub  
    OP
       2011-10-18 00:21:04 +08:00
    唉,@keakon,世界上总有一些奇怪的需求、奇怪的应用情景。

    目前在测试redis、mongodb、mysql三者的效率。

    很可能倾向的方案是redis保存峰值数据,然后通过消息队列推送给mongodb或者mysql。

    毕竟,这个应用的峰值只持续1-2个小时。
    cngithub
        6
    cngithub  
    OP
       2011-10-18 00:21:56 +08:00
    @napoleonu 较头疼不得不做复合主键,不同服务器扩展的问题。
    cngithub
        7
    cngithub  
    OP
       2011-10-18 00:22:42 +08:00
    @feilaoda 产品环境?希望具体介绍服务器的配置,目前很关心这个。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   3155 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 12:30 · PVG 20:30 · LAX 04:30 · JFK 07:30
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.