赞
踩
MONGODB索引:索引的使用通常涉及到查询效率的问题;合理的使用索引能够非常明显的提高查询的速度;如果没有索引,在mongodb中要进行集合内所有文件的扫描查询,这种效率是非常低效的,尤其是在处理大数据集时,查询可能等待非常长的时间;这对程序而已是不可忍受的。mongdb中的索引采用了B树的数据结构进行遍历查询;这种结构在其他数据库中是很常见的;mongodb中索引类型有很多中,像唯一索引,稀疏索引和多键索引。
mongodb创建索引模版
- db.collection.createIndex(keys,options); //mongodb 版本version3.0后推荐使用
- db.collection.ensureIndex(keys,options); //mongodb版本version3.0后不建议使用
参数名称 | 类型 | 说明 |
---|---|---|
keys | document | 包含字段和值对的文档,其中字段是索引键,值描述该字段的索引类型。对于字段的升序索引,请指定值1; 对于降序索引,请指定值-1。 MongoDB支持几种不同的索引类型,包括 文本,地理空间和散列索引。有关更多信息,请参阅索引类型 从3.6开始,您不能指定*为索引名称。 |
options | document | 可选的。包含一组控制索引创建的选项的文档。有关详情,请参阅下面options的表格说明 |
参数名称 | 类型 | 说明 |
---|---|---|
background |
boolean | 可选的。构建在后台创建索引,所以操作不会影响或阻止其他数据库活动。指定true 在后台构建。默认值为false 。(集合中有大量数据时,最好指定为true,否则会对插入和修改造成影响) |
unique |
boolean | 可选的。创建唯一索引,以便集合不接受索引键值与索引中现有值匹配的文档的插入或更新。 指定 该选项不适用于散列索引。 |
name |
string | 可选的。索引的名称。如果未指定,MongoDB通过连接索引字段的名称和排序顺序来生成索引名称。 无论是用户指定还是MongoDB生成,索引名称包括其完整命名空间(即 |
partialFilterExpression |
document | 可选的。如果指定,则索引仅引用与筛选表达式匹配的文档。有关详细信息,请参阅部分索引。 过滤器表达式可以包括: 您可以 版本3.2中的新功能。 |
sparse |
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。