如何提高mongodb查询速度

发布网友 发布时间:2022-04-25 02:28

我来回答

1个回答

热心网友 时间:2022-04-07 19:36

有索引非常快,数据量几百万都是小意思
索引这个东西大家不会陌生,只要接触到稍微大一点的数据,都会用到这东西,它可以提升查询的速度,相当代价就是占用了更多的存储空间,这也是正常
的,符合“能量守恒定理”,哈哈!今天说的是MongoDB里的索引,在我进行对500万数据进行查询测试时,发现如果你的查询字段不加索引,那是相当恐
怖的,一个简单的查询(单字段)要耗时30多秒,这种操作,基本可以认为服务器挂了,哈哈!当为字段加了索引之后,查询速度为ms级,100毫秒以内的速
度真是把经兴奋坏了,呵呵!

建立索引 db.tableName.ensureIndex({"fieldName",1|-1})

对于为500万的数据加索引相当需要占用一点点时间了,不是马上响应的,这也会正常,呵呵!当加完索引后,你可以通过MongoVUE这种可视化工具对它进行查看,或者直接用命令db.tableName.getIndexes()也可以

在选中数据库background后,我们可以看到它的集合数据和集合索引分别占用的空间

当为表(集合,collection)加上索引后,我们的WEB页面测试一下可以看到,页面响应在ms级,非常快!

对于单表查询来说,MongoDB在添加了索引后,执行的速度和稳定性确实是可以信赖的,在进行复杂计算时,MongoDB也为我们提供了MapRece功能,在以后的文章中也会单独讲它!

声明声明:本网页内容为用户发布,旨在传播知识,不代表本网认同其观点,若有侵权等问题请及时与本网联系,我们将在第一时间删除处理。E-MAIL:11247931@qq.com