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

2015 年 2 月 2 日
 robertaff

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

垂泪呼唤MongoDB高级工程师!

2955 次点击
所在节点    数据库
22 条回复
dingyaguang117
2015 年 2 月 2 日
10亿的飘过,用的tomux
dingyaguang117
2015 年 2 月 2 日
@dingyaguang117 外加2个索引 一个默认_id
robertaff
2015 年 2 月 2 日
@dingyaguang117

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

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

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

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

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

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

查询条件是根据timestamp。
wesley
2015 年 2 月 2 日
数据量大不敢用mongodb,实在是硬盘无底洞
jiangzhuo
2015 年 2 月 2 日
@dingyaguang117 是tokumx吧

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

https://study.congcong.us/t/167464

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

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

© 2021 V2EX