意义
索引可以 高效的提高 查询速度,但是会增加 其他操作(insert/update/delete ) 的消耗时间,因为数据发变动时,不仅要更新文档,还要更新集合伤的所有索引
所有的MongoDB集合默认都有一个唯一索引在字段“_id”上,如果应用程序没有为 “_id”列定义一个值,MongoDB将创建一个带有ObjectId值的列。(ObjectId是基于 时间、计算机ID、进程ID、本地进程计数器 生成的)
索引相关方法
方法 | 实例 | 备注 |
---|---|---|
创建 | db.collection.createIndex(keys, options) db.c.createIndex({ ‘files’:sort}) | option 参数说明 name:指定索引名 unique:唯一索引 索引键值唯一 background:后台创建 别名 ensureIndex |
查看 | db.c.getIndexes() | 查索collection 的索引 |
删除 | db.c.dropIndex() | 删除索引 |
重置索引 | db.c.reIndex() | 删除后重新创建索引 |
索引大小 | db.c.totalIndexSize(); | 查看索引大小 |