八天学会MongoDB:第四天 索引操作

  • 时间:
  • 浏览:1
  • 来源:大发11选5_大发11选5官网

  cursor: 这里冒出的是”BtreeCursor",越来越牛X,MongoDB采用B树的底部形态来存放索引,索引名为后边的“name_1"。

  db.person.ensureIndex({"name":1},{"unique":true})。

本文转自 wws5201985 51CTO博客,原文链接:http://blog.51cto.com/wws5201985/796621,如需转载请自行联系原作者

  millis: 这个 之后 亲戚亲戚有些人儿最最最....关心的东西,总共耗时114毫秒。

  之后 亲戚亲戚有些人儿的查询总要单条件的,可能性是多条件,比如查找出生在‘1989-3-2’名字叫‘jack’的同学,越来越亲戚亲戚有些人儿还还可不里能建立“姓名”和"生日“的联合索引来加速查询。

  八天学好MongoDB:第一天 基础入门

化器,它给亲戚亲戚有些人儿做出的选着往往是最优的,可能性亲戚亲戚有些人儿做查询时,查询优化器会使用亲戚亲戚有些人儿建立的这个 索引来创建查询方案,可能性某三个 多 先执行完则有些查询方案被close掉,这个 方案会被MongoDB保存起来,当然可能性越来越用另一方指定的查询方案,这也是还还可不里能的,在MongoDB中给亲戚亲戚有些人儿提供了hint最好的最好的办法让亲戚亲戚有些人儿还还可不里能暴力执行。

  我的神啊,再来看看这个 敏感信息。

  四:组合索引

  一:性能分析函数(explain)

  和sqlserver一样都还还可不里能建立唯一索引,重复的键值自然就越来越插入,在MongoDB中的使用最好的最好的办法是:

  可能性随着业务需求的变化,之后 建立的索引可能性越来越地处的必要了,可能性有的人想说没必要就没必要呗,之后 请记住,索引会降低CUD这本身操作的性能,可能性这玩意前要实时维护,有些啥问題总要综合考虑一下,这里就把刚才建立的索引清空掉来演示一下:dropIndexes的使用。

  亲戚亲戚有些人儿首先插入10w数据,上图说话:

      八天学好MongoDB:第二天 细说高级操作

  仔细看红色区域,几个亲戚亲戚有些人儿关心的key。

  看了上图,亲戚亲戚有些人儿可能性也知道name跟birthday的不同,建立的索引之后 同,升序和降序的顺序不同总要产生不同的索引,越来越亲戚亲戚有些人儿还还可不里能用getindexes来查看下person集合中到底生成了这个 索引。

  看了上图亲戚亲戚有些人儿要相信查询优

  在10w条越来越简单的集合中查找三个 多 文档要114毫秒有有些点之后 你越来越接收,好,越来越亲戚亲戚有些人儿该如可优化呢?MongoDB中给亲戚亲戚有些人儿带来了索引查找,看看还还可不里能让亲戚亲戚有些人儿的查询一飞冲天.....

  n: 直接定位返回。

  从算法上来说有5种经典的查找,具体的还还可不里能参见我的算法速成系列,这其中就包括亲戚亲戚有些人儿今天所说的“索引查找”,可能性亲戚亲戚有些人儿对sqlserver比较了解的话,相信索引查找能给亲戚亲戚有些人儿带来这个 样的性能提升吧。

  这里亲戚亲戚有些人儿使用了ensureIndex在name上建立了索引。”1“:表示按照name进行升序,”-1“:表示按照name进行降序。

  n: 这里是1,也之后 最终返回了三个 多 文档。

  八天学好MongoDB:第二天 细说增删查改

  millis: 看看这个 时间真的不敢相信,秒秒杀。

  nscanned: 我擦,数据库只浏览了三个 多 文档就OK了。

  cursor: 这里冒出的是”BasicCursor",这个 意思呢,之后 说这里的查找采用的是“表扫描”,也之后 顺序查找,很悲催啊。

  二:建立索引(ensureIndex)

  五: 删除索引

        相关文章:

  三:唯一索引

  好了,数据可能性插入成功,既然亲戚亲戚有些人儿要做分析,肯定要有分析的工具,幸好MongoDB中给亲戚亲戚有些人儿提供了三个 多 关键字叫做“explain",越来越如可会会么用呢?还是看图,注意,这里的name字段越来越建立任何索引,这里之后 你查询三个 多 “name1000”的姓名。

  此时亲戚亲戚有些人儿肯定很好奇,到底查询优化器会使用哪个查询作为操作,呵呵,还是看看效果图:

  通过这个 例子相信亲戚亲戚有些人儿对索引总要了感官方面的认识了吧。

  nscanned: 这里是10w,也之后 说数据库浏览了10w个文档,很恐怖吧,之后 玩的话之后 你受不了啊。

今天分享下MongoDB中关于索引的基本操作,亲戚亲戚有些人儿日常做开发都除理不了要对多多线程 进行性能优化,而多多线程 的操作无非之后 CURD,通常亲戚亲戚有些人儿又会花费100%的时间在R后边,可能性Read操作对用户来说是非常敏感的,除理不好就会被人唾弃。