mongodb索引分类以及创建我就不多说了,如果想了解可以直接在百度上搜索,这里我说一下关于索引创建的个人想法。
1、优先给一些Id类字段添加索引,查询时可以缩小扫描范围。
2、创建联合索引时,索引字段顺序很重要,如果第一个字段和索引不匹配,则基本不会命中该索引。
3、有些索引创建后,特别是嵌套查询,比如说{ "audit.experts" : { "$elemMatch" : { "expertId" : "37add534bc554a8e80e8700ae19e55f6", "result" : { "$in" : ["success", "fail"] } } } },这个查询不添加索引需要5s ,添加索引{"audit.experts.expertId":1,"audit.experts.result":1}后无法命中索引,这时就需要强制使用索引,mongodb提供了hint来强制使用某一个索引。
4、在优化过程中,我还发现有一些查询(集合中的数据都是嵌套的),使用了索引(联合索引)反而比不是用索引更慢。
5、使用模糊查询的字段尽量不要添加到联合索引中,对查询效率影响比较小。
相关推荐
mongodb中如何建立高效索引,文档讲述的很清楚
MongoDB索引的创建docx.pdf 学习资料 复习资料 教学资源
本文讲述了关于MongoDB索引管理包括索引的创建、查看索引、删除索引各方面的命令及使用方法
MongoDB数据库索引介绍.pptx
MONGO的索引跟MYSQL、ORACLE基本上差不多,实现了其中的一部分,当然了,肯定是没有它们功能齐全的,因为MONGO本质上也是基于磁盘文件的,所以如果索引的话,效率是不敢想像的!
MongoDB索引优化与管理-刘诚杰 天痕,介绍 1. 索引概念 2. 索引优化 3. 执行计划 4. 索引管理
MongoDB索引管理与高级索引.pdf 学习资料 复习资料 教学资源
MongoDB索引几乎和关系型数据库的索引一样.MongoDB的查询优化器能够使用这种数据结构来快速的对集合(collection)中的文档(collection)进行寻找和排序.准确来说,这些索引是通过B-Tree索引来实现的。在命令行中,可以...
MongoDB索引限制.pdf 学习资料 复习资料 教学资源
MongoDB索引管理.pdf 学习资料 复习资料 教学资源
MongoDB索引与查询.pdf 学习资料 复习资料 教学资源
缺省情况下,MongoDB的_id字段在创建集合的时候会自动创建一个唯一索引。本文主要描述唯一索引的用法。 关于什么是索引以及唯一索引这里就不做说明了,不清楚的可以自行谷歌或者百度。是什么引起我写这篇文章呢,这...
MongoDB可以在各种类型的键上创建索引。下面分别讲解各种类型的索引的创建,查询,以及索引的维护等。 一、创建索引 1. 默认索引 MongoDB有个默认的“_id”的键,他相当于“主键”的角色。集合创建后系统会自动...
主要介绍了MongoDB性能篇之创建索引,组合索引,唯一索引,删除索引和explain执行计划的相关资料,需要的朋友可以参考下
1、连接数据库 1、使用数据库、创建数据库 2、查看数据库 3、显示当前的数据集合(mysql 中叫表) 4、删除集合,删除指定的集合 5、删除数据库,删除当前
该文档适用于运维,dba,非开发代码,下再留意目录。
索引就像书的目录,如果查找某内容在没有目录的帮助下,只能全篇查找翻阅,这导致效率非常的低下;如果在借助目录情况下,就能很快的定位具体内容所在区域,效率会直线提高。 索引简介 首先打开命令行,输入mongo。...
同时,深入探讨MongoDB索引的类型(如单键索引、复合索引、多键索引等),并分析索引的创建、管理和优化策略。此外,文章还介绍了索引对查询性能的影响,包括如何通过explain()方法分析查询和索引效率,以及覆盖查询...
MongoDB Java创建集合.pdf 学习资料 复习资料 教学资源