• MongoDB update 更新命令汇总

    Update 更新命令//写法一 db.collection.update( <query>, <update>, upsert, multi ); //写法二 db.collection.update(    <query>,    <upda

    Nov 22, 2018 阅读(72)
    标签: MongoDB
  • MongoDB查询性能分析—— explain 操作返回结果详解

    MongoDB 提供 db.collection.explain(), cursort.explain() 及 explain 命令获取查询计划及查询计划执行统计信息。explain 结果将查询计划以阶段树的形式呈现。 每个阶段将其结果(文档或索引键)传递给父节点。 叶节点访问集合或索引。 中间节点操纵由子节点产生的文档或索引键。 根节点是MongoDB从中派生结果集的最后阶段。阶段操作描述,例

    Nov 9, 2018 阅读(186)
    标签: MongoDB 性能优化
  • MongoDB 查询性能分析

    cursor.explain("executionStats")和 db.collection.explain("executionStats") 方法提供关于查询性能的相关信息。这些信息可用于衡量查询是否使用了索引以及如何使用索引。db.collection.explain() 还提供有关其他操作的执行信息。例如 db.collection.update()。 有关详情信息,请参见 db

    Nov 2, 2018 阅读(152)
    标签: MongoDB
  • 深入了解 MongoDB 查询计划(Query Plans)

    在给定可用索引的情况下,MongoDB查询优化器处理查询并且选择出针对某查询而言最高效的查询计划。每次查询执行的时候,查询系统都会使用该查询计划。查询优化器仅缓存那些有多个可行计划的 query shape。对于每个查询,查询计划程序在查询计划缓存中搜索适合 query shape 的查询计划。如果没有匹配到合适的查询计划,则查询计划程序会生成候选计划,以便在试用期内进行评估。查询计划程序

    Oct 20, 2018 阅读(172)
    标签: MongoDB
  • MongoDB bulkWrite 批量操作

    定义db.collection.bulkWrite()提供可控执行顺序的批量写操作。语法格式如下:db.collection.bulkWrite(    [ <operation 1>, <operation 2>, ... ],    { &nb

    Oct 18, 2018 阅读(355)
    标签: MongoDB
  • MongoDB 中怎么实现游标使用完后不关闭继续监听循环使用

    MongoDB 中支持一种特殊游标就是遍历到最后一条数据后不关闭游标继续监听循环使用,后续有数据进来后还可以继续迭代遍历后续的的数据。这种不关闭的游标只能用在固定集合上。在弄实时增量同步数据库时考虑使用不关闭继续循环使用,度娘好久没解决(游标总是使用完后自动关闭)最终在官网实例中发现是写法姿势不对,在此贴上官网正确的实例代码:import time import pymong

    Oct 10, 2018 阅读(110)
    标签: MongoDB
  • MongoDB 索引简介

    在MongoDB中索引支持使得执行查询更高效。 如果没有索引,MongoDB必须执行集合扫描,即扫描集合中的每个文档,以选择与查询语句匹配的文档。如果查询存在适当的索引,MongoDB可以使用索引来限制它必须检查的文档数。索引是特殊的数据结构[1],它以易于遍历的形式存储集合数据集的一小部分。 索引存储特定字段或字段集的值,按字段值排序。 索引条目的排序支持有效的等式匹配和基于范围的查询操作。 此

    Aug 31, 2018 阅读(194)
    标签: MongoDB
  • MongoDB 中游标(Cursor)

    引入db.collection.find()方法返回一个游标结果,访问文档需要遍历这个游标值。 在mongo shell 中返回的游标值没有赋值给 var 关键字定义的变量时会自动遍历20次并打印这头20条的文档结果,如果返回的游标值赋值给了var 关键字定义的变量时不会自动遍历这个游标结果。Tips:这里的游标返回默认结果数20可以通过 DBQuery.shellBatchSize 来修改。手动

    Aug 29, 2018 阅读(226)
    标签: MongoDB
  • MongoDB 聚合 $dateToString 时差问题解决

    存储在MongoDB中的时间是标准时间UTC +0:00,而中国时区是+8.00 由于时差的存在在使用聚合函数$dateToString时发现统计不准问题.为了重现问题,准备如下数据测试db.sales.find({}) /* 1 createdAt:2018/7/9 下午6:20:31*/ { "_id" : ObjectI

    Jul 10, 2018 阅读(1150)
    标签: MongoDB
  • MongoDB 去重(distinct)查询后求总数(count)

    在使用MonoDB 做报表汇总经常的有去重统计总数的需求,在此总结一下实现方式:1, 直接使用distinct 语句查询, 这种查询会将所有查询出来的数据返回给用户, 然后对查询出来的结果集求总数(耗内存,耗时一些)var len = db.student.distinct("name",{"age" :&nb

    Jun 29, 2018 阅读(1107)
    标签: MongoDB