当前位置: 首页 > news >正文

电子商务网站页面设计图片网站的根目录中

电子商务网站页面设计图片,网站的根目录中,网站建设公司咨询,网站首页在哪个文件夹MongoDB 提供 db.collection.explain(), cursort.explain() 及 explain 命令获取查询计划及查询计划执行统计信息。 explain 结果将查询计划以阶段树的形式呈现。 每个阶段将其结果#xff08;文档或索引键#xff09;传递给父节点。 叶节点访问集合或索引。 中间节点操纵由…MongoDB 提供 db.collection.explain(), cursort.explain() 及 explain 命令获取查询计划及查询计划执行统计信息。 explain 结果将查询计划以阶段树的形式呈现。 每个阶段将其结果文档或索引键传递给父节点。 叶节点访问集合或索引。 中间节点操纵由子节点产生的文档或索引键。 根节点是MongoDB从中派生结果集的最后阶段。 阶段操作描述,例 COLLSCAN 集合扫描IXSCAN 索引扫描FETCH 检出文档SHARD_MERGE 合并分片中结果SHARDING_FILTER 分片中过滤掉孤立文档LIMIT 使用limit 限制返回数PROJECTION 使用 skip 进行跳过IDHACK 针对_id进行查询COUNT 利用db.coll.explain().count()之类进行count运算COUNTSCAN count不使用Index进行count时的stage返回COUNT_SCAN count使用了Index进行count时的stage返回SUBPLA 未使用到索引的$or查询的stage返回TEXT 使用全文索引进行查询时候的stage返回PROJECTION 限定返回字段时候stage的返回… explain 操作返回结果详解 queryPlanner queryPlanner 显示的是被查询优化器选择出来的查询计划。 以下未分片集合 explain 操作结果如下 {queryPlanner : {plannerVersion : int,namespace : string,indexFilterSet : boolean,parsedQuery : {...},winningPlan : {stage : STAGE1,...inputStage : {stage : STAGE2,...inputStage : {...}}},rejectedPlans : [candidate plan 1,...]}queryPlanner.namespace 一个字符串指定运行查询的命名空间即.。queryPlanner.indexFilterSet boolan值表示MongoDB 对于此query shape 是否使用了索引过滤器。queryPlanner.winningPlan 文档类型详细显示查询优化程序选择的查询计划。 winningPlan.stage 阶段名称。每个阶段都有每个阶段特有的信息。 例如IXSCAN 阶段将包括索引边界以及特定于索引扫描的其他数据。 如果阶段具有子阶段或多个子阶段则阶段将具有inputStage 或 inputStages。winningPlan.inputStage 描述子阶段的文档。它为其父级提供文档或索引键。 如果父级只有一个子级则该字段存在。winningPlan.inputStages 描述子阶段的数组。子阶段为父阶段提供文档或索引键。 如果父级具有多个子节点则该字段存在。 例如$or 表达式或索引交集的阶段消耗来自多个源的输入。 queryPlanner.rejectedPlans 查询优化器考虑和拒绝的候选计划数组。 如果没有其他候选计划则该数组可以为空。 对于分片集合获胜计划包括分每个访问的分片的计划信息数组。 executionStats executionStats 返回的是获胜计划执行相关信息。必须在 executionStats 或 allPlansExecution 详细模式下运行explain才显示executionStats 相关信息。 要捕获选择执行计划期间执行相关信息必须使用 allPlansExecution 模式运行。 executionStats 模式 explain 实例 db.products.explain(executionStats).find({ quantity: { $gt: 50 }, category: apparel } )allPlansExecution 模式 explain 实例 db.products.explain(allPlansExecution).update({ quantity: { $lt: 1000}, category: apparel },{ $set: { reorder: true } } )以下未分片集合 explain 操作结果如下 executionStats : {executionSuccess : boolean,nReturned : int,executionTimeMillis : int,totalKeysExamined : int,totalDocsExamined : int,executionStages : {stage : STAGE1nReturned : int,executionTimeMillisEstimate : int,works : int,advanced : int,needTime : int,needYield : int,isEOF : boolean,...inputStage : {stage : STAGE2,...nReturned : int,executionTimeMillisEstimate : int,keysExamined : int,docsExamined : int,...inputStage : {...}}},allPlansExecution : [{ partial executionStats1 },{ partial executionStats2 },...] }executionStats 描述获胜计划完整的查询执行信息。 对于写入操作是指将要执行修改的信息但不会真实修改数据库。 executionStats.nReturned 查询条件匹配到的文档数量。executionStats.executionTimeMillis 查询计划选择和查询执行所需的总时间以毫秒为单位。executionTimeMillis 对应于早期版本的MongoDB中cursor.explain() 返回的millis字段。executionStats.totalKeysExamined 扫描的索引条目数。totalKeysExamined 对应于早期版本的MongoDB中cursor.explain() 返回的 nscanned字段。executionStats.totalDocsExamined 扫描的文档数。totalDocsExamined 对应于早期版本的MongoDB中cursor.explain() 返回的 nscannedObjects字段。executionStats.executionStages 阶段树形式展示获胜计划完整的执行信息。即一个阶段可以有一个inputStage或多个inputStages。 executionStats.executionStages.works 查询执行阶段执行的“工作单元”的数量。 查询执行阶段将其工作分为小单元。 “工作单位”可能包括检查单个索引键从集合中提取单个文档将投影应用于单个文档或执行内部记账。 executionStats.executionStages.advanced 返回到父阶段的结果数。 executionStats.executionStages.needTime 未将中间结果返回给其父级的工作循环数。 例如索引扫描阶段可以花费一个工作周期来寻找索引中的新位置而不是返回索引关键字; 这个工作周期将计入explain.executionStats.executionStages.needTime而不是explain.executionStats.executionStages.advanced。 executionStats.executionStages.needYield 存储层请求查询系统产生锁定的次数。 executionStats.executionStages.isEOF 执行阶段是否已到达流的结尾 如果为true或1则执行阶段已到达流末尾。如果为false或0则阶段可能仍会返回结果。 例如有限制的查询其执行阶段包含LIMIT阶段其中查询的输入阶段为IXSCAN。 如果查询返回超过指定的限制LIMIT阶段将报告isEOF1但其基础IXSCAN阶段将报告isEOF0。 executionStats.executionStages.inputStage.keysExamined 对于扫描索引的查询执行阶段例如IXSCANkeysExamined是在索引扫描过程中检查的入站和越界键的总数。 如果索引扫描由单个连续范围的键组成则只需要检查入站键。 如果索引边界由若干键范围组成则索引扫描执行过程可以检查越界键以便从一个范围的末尾跳到下一个范围的开头。 考虑以下示例集合包含字段x值为1到100的100个文档其中索引字段为x for(var x1;x100;x){db.keys.insert({x:x}); } db.keys.ensureIndex({x:1}); db.keys.find( { x : { $in : [ 3, 4, 50, 74, 75, 90 ] } } ).explain( executionStats )该查询将扫描键3和4.然后它将扫描键5检测它是否超出界限并跳到下一个键50。 继续该过程查询扫描键3,4,5,50,51,74,75,76,90和91.键5,51,76和91是仍在检查的越界键。 keysExamined的值为10。 executionStats.executionStages.inputStage.docsExamined 在查询执行阶段扫描的文档数。 executionStats.allPlansExecution 包含在计划选择阶段为获胜和拒绝计划捕获的部分执行信息。 仅当explain在allPlansExecution详细模式下运行时该字段才会出现。 serverInfo 对于未分片的集合MongoDB实例explain返回以下信息 serverInfo : {host : string,port : int,version : string,gitVersion : string }对于分片集合explain返回每个访问的分片的serverInfo。 Sharded Collection 对于分片集合explain在shards字段中返回每个访问的分片的核心查询规划器和服务器信息 {queryPlanner : {...winningPlan : {...shards : [{shardName : shard,queryPlanner information for shard,serverInfo for shard},...],},},executionStats : {...executionStages : {...shards : [{shardName : shard,executionStats for shard},...]},allPlansExecution : [{shardName : string,allPlans : [ ... ]},...]} }queryPlanner.winningPlan.shards 每个访问分片的queryPlanner和serverInfo的文档数组。executionStats.executionStages.shards 包含每个访问分片的executionStats的文档数组。 兼容性的修改 在 3.0 版本中的修改。 explain 结果的格式和字段与以前的版本相比有所变化。 以下列出了一些主要差异。 集合扫描 VS 索引使用 如果查询计划程序选择了集合扫描则说明结果包括COLLSCAN阶段。 如果查询计划程序选择索引则说明结果包括IXSCAN阶段。 该阶段包括诸如索引key的匹配遍历方向和索引边界之类的信息。 在早期版本的MongoDB中cursor.explain() 返回了光标字段其值为 用于集合扫描的BasicCursor以及索引扫描的BtreeCursor 索引名称 [方向]。 覆盖查询 当索引覆盖查询时MongoDB可以匹配查询条件并仅使用索引键返回结果; 即MongoDB不需要检查集合中的文档以返回结果。 当索引覆盖查询时解释结果的IXSCAN阶段不是FETCH阶段的后代而在executionStats中totalDocsExamined为0。 在早期版本的MongoDB中cursor.explain() 返回indexOnly字段以指示索引是否覆盖了查询。 索引交叉 对于索引交集计划结果将包括AND_SORTED阶段或AND_HASH阶段其中包含详细说明索引的inputStages数组; 例如。 {stage : AND_SORTED,inputStages : [{stage : IXSCAN,...},{stage : IXSCAN,...}] }在以前版本的MongoDB中cursor.explain() 返回了游标字段其中包含索引交叉点的复杂计划。 $or 表达式 如果MongoDB使用$or 表达式的索引则结果将包含OR阶段其中包含详细说明索引的inputStages数组; 例如。 {stage : OR,inputStages : [{stage : IXSCAN,...},{stage : IXSCAN,...},...] }在早期版本的MongoDB中cursor.explain() 返回了详细索引的子句数组。 Sort 阶段 如果MongoDB可以使用索引扫描来获取请求的排序顺序则结果将不包括SORT阶段。 否则如果MongoDB无法使用索引进行排序则解释结果将包括SORT阶段。 在MongoDB 3.0之前cursor.explain() 返回scanAndOrder字段以指定MongoDB是否可以使用索引顺序返回排序结果。 总结 explain 希望看到的阶段 FetchIDHACK Fetchixscan LimitFetchixscan PROJECTIONixscan SHARDING_FILTERixscan COUNT_SCAN … explain 不希望看到的阶段 COLLSCAN全表扫描 SORT使用sort但是无index 不合理的SKIP SUBPLA未用到index的$or COUNTSCAN 来自个人博客学习园 http://www.xuexiyuan.cn/article/detail/179.html
http://www.zqtcl.cn/news/680011/

相关文章:

  • 建设电子商务网站的方法有广东网站开发收费
  • php网站页面转wordpress网站广告代码
  • 在线网站建设教程网站版面布局结构
  • 网站建设提议网站建设怎么在图片上加字
  • 网站模板但没有后台如何做网站家政网站开发
  • 自己办网站审批流程网页设计师的发展路径
  • 什么叫网站地图百度竞价排名费用
  • 企业网站建设顾问wordpress如何用API采集
  • win7网站后台无法编辑vr网站建设
  • 做头发个人网站制作素材dw中做网站的步骤
  • 学校网站做几级等保网页制作与维护
  • 十堰外贸网站建设松滋做网站
  • 网站导航条青浦徐泾网站建设
  • 厦门网站建设一般多少钱店铺域名是什么意思
  • 网站关键词搜索排名怎么做雅奇小蘑菇做网站好不好用
  • 手机网站案例建设网站地图素材
  • 企业网站制作比较好的如何设计一个网页首页代码
  • 维护网站成本网站建设进度图
  • asp.net做织梦网站设计手机网站建设
  • 江苏省住房和城乡建设局网站首页北京大型网站制作公司
  • 网站改版工作方案网站设计技能培训
  • 佳木斯市网站建设淄博网站开发招聘
  • 学习软件的网站先备案先建网站
  • 建立网站 知乎常州网站制作机构
  • 洛阳建设网站上海高端室内设计事务所
  • 做高清图的网站wordpress分类自定义文字
  • 创建站点如何做网站如何利用分类信息网站做推广
  • wordpress 拍卖插件找文网优化的技术团队
  • 建站素材网自助餐火锅网站建设
  • 企业型网站建设方案农村电商网站设计与发展现状