CNode

MongoDB 查询优化

问答
Wwangbinlml发布于11 年前最后回复11 年前4 回复4718 浏览0 收藏

新手求大神指点: 业务所需这么复杂查询,1000w数据,查询忒慢,无法忍受. 下列查询条件怎么建索引,优化和改进;

{"other":{"column":{"label":1,"content":1},"distinct":{},"group":{},"order":{"_id":-1},"limit":10,"skip":0,"lastIndex":184},"where":{"school_id":"2","created_at":{"$gt":"1446900125240"},"class_id":{"$in":["1"]},"label":"1","status":"0","$or":[{"visible_user_list":{"$in":["1"]}},{"is_for_class":"1"},{"is_for_school":"1"}]}}

查看回复

回复 (4)

A
alsotang#2·11 年前

用 exlain 先自己看看嘛。

你这筛选条件还是比较多的。

找出区分度比较高的字段加索引。

A
alsotang#4·11 年前
引用 wangbinlml@alsotang 像这个情况做片键使用哪些字段比较合适.

@wangbinlml 你先从索引的角度看看问题吧。1000w感觉不多的。

mongodb 的版本也要注意一下,用 3.0,开启 wiredTiger 引擎会好很多。原来的引擎很渣。

sharding 略麻烦。

参与回复
登录后即可参与回复。登录