Docs Menu
Docs Home
/
MongoDB Ops Manager
/ / / /

推奨インデックスの取得

項目一覧

  • Resource
  • リクエスト パス パラメーター
  • リクエスト クエリ パラメータ
  • リクエスト ボディ パラメータ
  • 応答
  • リクエストの例
  • 応答例
  • 応答ヘッダー
  • レスポンス本体

Performance Advisor によって決定された推奨インデックスを取得します。

ベース URL: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0

GET /groups/{PROJECT-ID}/hosts/{HOST-ID}/performanceAdvisor/suggestedIndexes
Parameter
タイプ
説明

プロジェクトID

string

(必須。) この MongoDB プロセスを所有するプロジェクトの一意の識別子。

ホスト ID

string

(必須。) MongoDB プロセスのホストの一意の識別子です。

すべてのパラメーターは任意です。

pretty

ブール値

レスポンス本体を pretty-print に含めるかどうかを示します 形式。

false

envelope

ブール値

応答をエンベロープでラップするかどうかを示します。

false

以来

long

推奨インデックスを検索する時点( UNIXエポックからのミリ秒単位 ) 。

以前の24時間

duration

long

クラスター内の管理対象名前空間から推奨インデックスを検索する時間の長さ(ミリ秒単位)。

現在まで

名前空間

string

推奨されたインデックスを検索する名前空間。 名前空間は、 .で区切られたデータベースとコレクション リソースで構成されています(例: <database>.<collection>

複数の名前空間を指定するには、アンパサンド( & )を区切り文字として使用して、名前空間ごとに 1 回、パラメーターを複数回渡します。

以下に例を挙げます。

?namespaces=data.stocks&namespaces=data.zips&pretty=true

すべて

nIndexes

long

推奨するインデックスの最大数。

無制限

nExamples

long

推奨インデックスによって改善される、提供するクエリ例の最大数。

5

このエンドポイントは、HTTP リクエスト本体パラメータを使用しません。

名前
タイプ
説明

shapes

ドキュメントの配列

推奨されるインデックスによって提供されるクエリシェイプに関する情報を含むドキュメント。

shapes[n].avgMs

数値

このシェイプに一致するクエリの平均実行時間(ミリ秒単位)。

shapes[n].count

数値

このシェイプに一致することが検査されたクエリの数。

shapes[n].id

objectId

このシェイプの一意の ID。 API リクエストの実行中のみ存在します。

shapes[n].inefficiencyScore

数値

クエリによって返されたドキュメント 1 件ごとの平均読み取りドキュメント数。 詳細については、 「 クエリ非効率スコアの理解 」を参照してください。

shapes[n].namespace

string

このシェイプ内のクエリによって検索される名前空間。

shapes[n].operations

ドキュメントの配列

特定の情報を含むドキュメントと、個々のクエリのログ行。

shapes[n].operations[n].predicates

ドキュメントの配列

クエリで使用される検索条件を含むドキュメント。 これらの述語では、ユーザーがプロジェクトデータへのアクセスについて読み取り専用以上の権限を持っている場合を除き、キーと値のペア内の値は編集されます。

shapes[n].operations[n].raw

string

クエリによって生成された未加工のログ行。

shapes[n].operations[n].stats

ドキュメント

クエリ統計。

shapes[n].operations[n].stats.ms

数値

クエリの期間(ミリ秒単位)。

shapes[n].operations[n].stats.nReturned

数値

クエリによって返された結果の数。

shapes[n].stats.avgObjSize

数値

平均オブジェクト サイズ。

shapes[n].stats.nScanned

数値

クエリによって読み取られたドキュメントの数。

shapes[n].stats.ts

数値

クエリ タイムスタンプ( エポックからの秒数 )。

suggestedIndexes

ドキュメントの配列

Performance Advisor によって提案されるインデックスに関する情報を含むドキュメント。

suggestedIndexes[n].id

objectId

この推奨インデックスの一意の ID。

suggestedIndexes[n].impact

objectId の配列

この推奨インデックスに関連するこの応答内のクエリシェイプに対応する一意の識別子のリスト。

このフィールドは、 Performance Advisorユーザー インターフェースの Impactに対応していません。

suggestedIndexes[n].index

ドキュメントの配列

各配列要素は、インデックス内のキーとそのソート順序(昇順または降順)を指定するドキュメントです。

  • 1の値は昇順の並べ替え順序を示します。

  • - 1の値は降順の並べ替え順序を示します。

複数のキーを持つインデックス内のキーは、インデックス内で表示されるのと 同じ順序 で表示されます。

suggestedIndexes[n].index.<fieldname>

string

インデックスを作成する特定のフィールド。

suggestedIndexes[n].namespace

string

推奨されたインデックスの名前空間。

suggestedIndexes[n].weight

数値

推奨インデックスによって提供される推定パフォーマンスの向上。 Performance Advisor ユーザー インターフェースの 影響度 に対応します。

curl --user '{PUBLIC-KEY}:{PRIVATE-KEY}' --digest \
--header 'Accept: application/json' \
--include \
--request GET 'https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0/groups/{PROJECT-ID}/hosts/{HOST-ID}/performanceAdvisor/suggestedIndexes?pretty=true'
HTTP/1.1 401 Unauthorized
Content-Type: application/json;charset=ISO-8859-1
Date: {dateInUnixFormat}
WWW-Authenticate: Digest realm="MMS Public API", domain="", nonce="{nonce}", algorithm=MD5, op="auth", stale=false
Content-Length: {requestLengthInBytes}
Connection: keep-alive
HTTP/1.1 200 OK
Vary: Accept-Encoding
Content-Type: application/json
Strict-Transport-Security: max-age=300
Date: {dateInUnixFormat}
Connection: keep-alive
Content-Length: {requestLengthInBytes}
X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}
{
"shapes" : [ {
"avgMs" : 42,
"count" : 2,
"id" : "5b74689a80eef53f3388897e",
"inefficiencyScore" : 50000,
"namespace" : "test.users",
"operations" : [ {
"predicates" : [{ "find" : { "emails" : "la@sa.kp" } }],
"raw" : "2018-08-15T17:14:11.115+0000 I COMMAND [conn4576] command test.users appName: \"MongoDB Shell\" command: find { find: \"users\", filter: { emails: \"la@sa.kp\" }, lsid: { id: UUID(\"1a4e71d3-9b67-4e9c-b078-9fdf3fae9091\") }, $clusterTime: { clusterTime: Timestamp(1534353241, 1), signature: { hash: BinData(0, AB91938B7CF7BC87994A2909A98D87F29101EFA0), keyId: 6589681559618453505 } }, $db: \"test\" } planSummary: COLLSCAN keysExamined:0 docsExamined:50000 cursorExhausted:1 numYields:391 nreturned:1 reslen:339 locks:{ Global: { acquireCount: { r: 784 } }, Database: { acquireCount: { r: 392 } }, Collection: { acquireCount: { r: 392 } } } protocol:op_msg 34ms",
"stats" : {
"ms" : 34,
"nReturned" : 1,
"nScanned" : 50000,
"ts" : 1534353251147
}
}, {
"predicates" : [{ "find" : { "emails" : "tocde@fijoow.to" } }],
"raw" : "2018-08-15T17:14:18.665+0000 I COMMAND [conn4576] command test.users appName: \"MongoDB Shell\" command: find { find: \"users\", filter: { emails: \"tocde@fijoow.to\" }, lsid: { id: UUID(\"1a4e71d3-9b67-4e9c-b078-9fdf3fae9091\") }, $clusterTime: { clusterTime: Timestamp(1534353241, 1), signature: { hash: BinData(0, AB91938B7CF7BC87994A2909A98D87F29101EFA0), keyId: 6589681559618453505 } }, $db: \"test\" } planSummary: COLLSCAN keysExamined:0 docsExamined:50000 cursorExhausted:1 numYields:390 nreturned:1 reslen:342 locks:{ Global: { acquireCount: { r: 782 } }, Database: { acquireCount: { r: 391 } }, Collection: { acquireCount: { r: 391 } } } protocol:op_msg 36ms",
"stats" : {
"ms" : 36,
"nReturned" : 1,
"nScanned" : 50000,
"ts" : 1534353258697
}
} ]
} ],
"suggestedIndexes" : [ {
"id" : "5b74689a80eef53f3388897f",
"impact" : [ "5b74689a80eef53f3388897e" ],
"index" : [ {
"emails" : 1
} ],
"namespace" : "test.users",
"weight" : 37.220480901815623
}, {
"id" : "5b74689a80eef53f33888980",
"impact" : [ "5b74689a80eef53f3388897d" ],
"index" : [ {
"email" : 1
} ],
"namespace" : "test.inventory",
"weight" : 19.037578309966488
} ]
}

戻る

スロー クエリ ログの取得