上传项目图片:“Percona Toolkit”雷竞技下载官网
  1. 雷竞技下载官网Percona工具包
  2. pt - 1978

通过pt-mongodb-summary为MongoDB添加未使用/冗余索引报告

    XML 可打印的

细节

    • 1
    • 是的
    • 是的
    • 是的
    • 是的

    描述

      用户故事:
      作为PT用户,我需要了解我正在使用PT - MongoDB -summary分析的MongoDB服务器中未使用和冗余索引的信息,以便了解这些索引,并可以进行未来的优化

      UI / UX:
      N/A

      验收标准

      • 通过运行pt-mongodb-summary对MongoDB服务器用户提供了额外的信息

      超出范围:

      • 数据的附加标志

      建议的实现:
      TBD

      如何测试

      设置

      1.连接到集群中的MongoDB主节点

      蒙戈127.0.0.1:17001 /管理

      2.创建一个数据库,一个集合,并插入一些文档

      var我= 0;i< 100;i++) {db.getSiblingDB(“testdb”) .test_col。插入({f1:我,f2: _rand () * 100, f3: _rand () * 300, f4: _rand () * 300, f5: (数学.random () + 1) .toString (36) .substring (2)});}

      3.检查是否有文件(可选)

      db.getSiblingDB (“testdb”100年).test_col.find () .count ()

      4.创建一些索引

      db.getSiblingDB (“testdb”) .test_col.createIndex ({“f1”: 1、“f2”: 1、“f3”: 1、“f4”: 1}, {“名称”“idx_01”});db.getSiblingDB (“testdb”) .test_col.createIndex ({“f1”: 1、“f2”: 1、“f3”: 1}, {“名称”“idx_02”});db.getSiblingDB (“testdb”) .test_col.createIndex ({“f1”: 1、“f2”: -1}, {“名称”“idx_03”});db.getSiblingDB (“testdb”) .test_col.createIndex ({“f3”: -1}, {“名称”“idx_04”});db.getSiblingDB (“testdb”) .test_col.createIndex ({“f4”: -1}, {“名称”“idx_05”});db.getSiblingDB (“testdb”) .test_col.createIndex ({“f5”: -1}, {“名称”“idx_06”});

      5.运行查询以使用创建的索引之一

      db.getSiblingDB (“testdb”) .test_col.find ({“f1”: {" $ gte”: 50}});

      测试

      运行该程序以获得未使用和重复的索引列表
      在本例中,我使用检查所有命令,但你可以使用check-unusedcheck-duplicates命令。

      ./pt-mongodb-index-check——mongodb.uri=mongodb://127.0.0.1:17001——databases=testdb——all-collections check-all复制索引test_col、索引“idx_03”,其中字段{f1:1, f2:-1}是的前缀“idx_02”字段{f1:1, f2:-1, f3:1} testdb。test_col、索引“idx_03”,其中字段{f1:1, f2:-1}是的前缀“idx_01”字段{f1:1, f2:-1, f3:1, f4:1} testdb。test_col、索引“idx_02”,其中字段{f1:1, f2:-1, f3:1}是的前缀“idx_01”{f1:1, f2:-1, f3:1, f4:1}自上次重启以来未使用的索引。test_col、索引“idx_02”字段{f1:1}, f2:-1}, f3:1} testdb。test_col、索引“idx_03”字段{f1:1}, f2:-1} testdb。test_col、索引“idx_05”字段{f4:-1} testdb。test_col、索引“idx_04”字段{f3:-1} testdb。test_col、索引“idx_06”包含字段{f5:-1}

      请注意idx_01没有出现在未使用的索引列表中,因为我们运行了一个查询来使用它。

      细节:
      查看附件脚本

      附件

        活动

            carlos.salguero卡洛斯Salguero
            matthew.boehm@雷竞技下载官网percona.com马修·波姆
            投票:
            0 为这个问题投票
            观察人士:
            6 开始关注这个问题

            日期

              创建:
              更新:
              解决:

              聪明的清单