robertaff
V2EX  ›  数据库

MongoDB 单表能否支持到 1 亿,加索引

  •  
  •   robertaff · Feb 2, 2015 · 3519 views
    This topic created in 4293 days ago, the information mentioned may be changed or developed.

    我现在手头有个项目在mysql和MongoDB之间选型,如果mysql的话,中间的缓存更新需要很多的工作量,如果MongoDB能够支持单表1亿数据无压力的的话,事情就会优化很多,因此请教,不知MongoDB单表加索引的话,可否支持到单表1亿的量?

    垂泪呼唤MongoDB高级工程师!

    22 replies  •  2015-02-02 23:27:32 +08:00
    dingyaguang117
    dingyaguang117
    Feb 2, 2015 via iPhone❤️1
    1
    10亿的飘过,用的tomux
    dingyaguang117
    dingyaguang117
    Feb 2, 2015 via iPhone
    2
    @dingyaguang117 外加2个索引 一个默认_id
    robertaff
    robertaff
    OP
    Feb 2, 2015
    3
    @dingyaguang117

    感谢回复,我再进一步描述下我的需求,

    (1)不加索引
    (2)总量大概5-8亿
    (3)查询扫描其中的1亿数据,
    (4)并对这些数据做筛选,归并(mapreduce)

    这时候效率和性能如何?是否可行?
    xujialiang
    xujialiang
    Feb 2, 2015
    4
    这两个头像。。。。。。。。真配~~哈哈
    9hills
    9hills
    Feb 2, 2015 via iPhone❤️1
    5
    我觉得自己构建下测试集测试下不就完了?分分钟的事。
    dingyaguang117
    dingyaguang117
    Feb 2, 2015❤️1
    6
    @robertaff 筛选条件很复杂不可以用索引完成吗?
    webflier
    webflier
    Feb 2, 2015❤️1
    7
    索引是一定要加滴
    robertaff
    robertaff
    OP
    Feb 2, 2015
    8
    @webflier
    @dingyaguang117

    如果用索引的话,能不能满足呢?
    cvv
    cvv
    Feb 2, 2015
    9
    汪星人再次败给了喵星人
    soli
    soli
    Feb 2, 2015❤️1
    10
    如果全在内存,几十亿算个啥?

    否则,瓶颈在磁盘。一般 7200转的硬盘,每秒200条读写。
    qifei
    qifei
    Feb 2, 2015
    11
    看成 MojangAB
    mathgl
    mathgl
    Feb 2, 2015❤️1
    12
    @robertaff 有什么指标? 扫描1亿是linear scan? 还是index scan?
    robertaff
    robertaff
    OP
    Feb 2, 2015
    13
    @soli 不在内存,在硬盘。

    @mathgl 扫描一亿是linear scan。
    BiggerLonger
    BiggerLonger
    Feb 2, 2015
    14
    不需要sharding一下吗
    cevincheung
    cevincheung
    Feb 2, 2015❤️1
    15
    楼主问的是单机单表1亿咩?然后单机配置捏?然后硬盘参数捏?
    dingyaguang117
    dingyaguang117
    Feb 2, 2015❤️1
    16
    @robertaff 这个要看查询条件了!
    Landarky
    Landarky
    Feb 2, 2015
    17
    毫无压力 。。最好加索引 。。。
    robertaff
    robertaff
    OP
    Feb 2, 2015
    18
    @dingyaguang117

    查询条件是根据timestamp。
    wesley
    wesley
    Feb 2, 2015
    19
    数据量大不敢用mongodb,实在是硬盘无底洞
    jiangzhuo
    jiangzhuo
    Feb 2, 2015
    20
    @dingyaguang117 是tokumx吧
    alsotang
    alsotang
    Feb 2, 2015
    21
    olap 的话,为何不试试其他的分析型数据库选择?
    dingyaguang117
    dingyaguang117
    Feb 2, 2015
    22
    @robertaff 毫无压力,另外你可以用时间戳构造 ObjectId查询,只需要一个_id 索引就行了
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   5195 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 94ms · UTC 02:51 · PVG 10:51 · LAX 18:51 · JFK 21:51
    ♥ Do have faith in what you're doing.