mongodb的索引
一,索引分为:单字段索引,复合索引,多key索引,文档索引等等
1,单字段索引(Single Filed Index)
命令:db.person.createIndex( {age: 1} )
解释:
person: 指collection ,可以理解为关系型数据库的表,
createIndex
:创建索引的方法,
age: 需要加索引的字段,
1 :表示升序,-1表示降序,这个对于单字段表现的都差不多
默认的_id 也是单字段索引
2,复合索引(Compound Index)
查询过程:会先按照第一个字段排序,当第一个字段一样的时候,按照第二个字段排序,一次类推
命令:db.person.createIndex( {age: 1, name: 1} )
注意:在创建复合索引,根据数据场景和数据的分布情况,选择不同的字段在前面,会出现不同的查询速度,没有真实测试过,
3,多Key索引(multikey Index)
当为collection中某个字段创建索引时,这个字段是数组,将会自动创建多key索引,即为这个字段的数组的每个元素创建索引,这个可以的场景:不用喜好的人,不用标签分类的书籍等,使用
多个标签或者关键字的collection,
4, 哈希索引(Hash Index)
以某个字段的哈希值做索引,字段完全匹配时使用
5.地理位置索引(Geospatial Index)
在O2O场景中使用
6,文本索引(Text Index)
二,索引的一些额外属性
1,唯一索引
2,TTL索引
3,部分索引
4,稀疏索引
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。