我正在使用MongoDB创建我的第一个应用程序。
创建一个字段的索引,并在shell中启动了一个$ regex param查找查询
创建一个字段的索引,并在shell中启动了一个$ regex param查找查询
> db.foo.find({A:{$regex:'BLABLA!25500[0-9]'}}).explain() { "cursor" : "BtreeCursor A_1 multi","nscanned" : 500001,"nscannedObjects" : 10,"n" : 10,"millis" : 956,"nYields" : 0,"nChunkSkips" : 0,"isMultiKey" : false,"indexOnly" : false,"indexBounds" : { "A" : [ [ "",{ } ],[ /BLABLA!25500[0-9]/,/BLABLA!25500[0-9]/ ] ] } }
这是非常奇怪的,因为当我启动相同的查询,但没有收集索引,性能好多了。
> db.foo.find({A:{$regex:'BLABLA!25500[0-9]'}}).explain() { "cursor" : "BasicCursor","nscanned" : 500002,"nscannedObjects" : 500002,"millis" : 531,"indexBounds" : { } }