Mongodb索引的优化?

浏览:56日期:2023-06-14

问题描述

不清楚索引村不存在优化的情况。对于索引理解没有深入。顺便帮忙讲解一下吧!

1,每条数据都有地理信息。(省,市),那么我建立了索引:

db.v.createIndex({city:1}db.v.createIndex({area:1}

我的疑惑是,这个建立的时候是没有条数据建立一个索引值还是通过索引的值来建立?

比如存在这样的数据 id name city area 1 zhangsan beijing beijing 2 lisi shanghai shanghai 3 zhaowu beijing beijing #每条数据建立 city->beijing->1 city->shanghai -> 2 city->beijing->3#还是根据索引值 city->beijing--|-> 1 |-> 3 city->shanghai->2

谢谢

问题解答

回答1:

没有完全理解你的问题,大概理解是:

1、MongoDB的索引大部分都是 B Tree索引;除此之外,

1)hash index,主要用于hashed sharding2)Geospatial index,例如2d、2dsphere,在MongoDB里面本质上B Tree实现的3)Text index

2、B Tree是按照索引值排序保存的,并指向相应的Collection的存储的位置。

3、延伸一点,当前MongoDB的底层的WiredTiger使用了一种Log-Merged Structure Tree来优化写的性能。

关于MongoDB的索引都可以多了解上面的内容。供参考。

Love MongoDB! Have fun!

回答2:

不太懂您的问题,不过我这里有一些关于使用MongoDB建立索引时的几点建议,你可以参考:http://forum.foxera.com/mongo...

相关文章: