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

2015-02-02 09:30:25 +08:00
 robertaff

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

垂泪呼唤MongoDB高级工程师!

2285 次点击
所在节点    数据库
22 条回复
dingyaguang117
2015-02-02 09:46:10 +08:00
10亿的飘过,用的tomux
dingyaguang117
2015-02-02 09:46:50 +08:00
@dingyaguang117 外加2个索引 一个默认_id
robertaff
2015-02-02 09:58:25 +08:00
@dingyaguang117

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

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

这时候效率和性能如何?是否可行?
xujialiang
2015-02-02 10:02:10 +08:00
这两个头像。。。。。。。。真配~~哈哈
9hills
2015-02-02 10:04:33 +08:00
我觉得自己构建下测试集测试下不就完了?分分钟的事。
dingyaguang117
2015-02-02 10:18:41 +08:00
@robertaff 筛选条件很复杂不可以用索引完成吗?
webflier
2015-02-02 10:33:10 +08:00
索引是一定要加滴
robertaff
2015-02-02 11:28:24 +08:00
@webflier
@dingyaguang117

如果用索引的话,能不能满足呢?
cvv
2015-02-02 11:45:11 +08:00
汪星人再次败给了喵星人
soli
2015-02-02 11:47:04 +08:00
如果全在内存,几十亿算个啥?

否则,瓶颈在磁盘。一般 7200转的硬盘,每秒200条读写。
qifei
2015-02-02 12:04:27 +08:00
看成 MojangAB
mathgl
2015-02-02 12:12:42 +08:00
@robertaff 有什么指标? 扫描1亿是linear scan? 还是index scan?
robertaff
2015-02-02 12:37:26 +08:00
@soli 不在内存,在硬盘。

@mathgl 扫描一亿是linear scan。
BiggerLonger
2015-02-02 12:40:22 +08:00
不需要sharding一下吗
cevincheung
2015-02-02 12:40:33 +08:00
楼主问的是单机单表1亿咩?然后单机配置捏?然后硬盘参数捏?
dingyaguang117
2015-02-02 12:42:39 +08:00
@robertaff 这个要看查询条件了!
Landarky
2015-02-02 13:10:29 +08:00
毫无压力 。。最好加索引 。。。
robertaff
2015-02-02 14:10:36 +08:00
@dingyaguang117

查询条件是根据timestamp。
wesley
2015-02-02 14:19:29 +08:00
数据量大不敢用mongodb,实在是硬盘无底洞
jiangzhuo
2015-02-02 14:29:45 +08:00
@dingyaguang117 是tokumx吧

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

https://www.v2ex.com/t/167464

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

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

© 2021 V2EX