문서 메뉴

문서 홈MongoDB Ops Manager

추천 인덱스 가져오기

이 페이지의 내용

  • 리소스
  • 요청 경로 매개변수
  • 요청 쿼리 매개변수
  • 요청 본문 매개변수
  • 응답
  • 요청 예시
  • 응답 예시
  • 응답 헤더
  • 응답 본문

Performance Advisor의 결정에 따라 추천 인덱스를 조회합니다.

기본 URL: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0

GET /groups/{PROJECT-ID}/hosts/{HOST-ID}/performanceAdvisor/suggestedIndexes
매개변수
유형
설명
프로젝트 ID
문자열
(필수 사항) 이 MongoDB 프로세스를 소유하는 프로젝트의 고유 식별자입니다.
HOST-ID
문자열
(필수 사항) MongoDB 프로세스용 호스트의 고유 식별자입니다.

모든 매개변수는 선택 사항입니다.

pretty
부울
응답 본문이 프리티프린트 에 있어야 하는지 여부를 나타냅니다. 형식.
false
envelope
부울
응답을 엔벨로프에 래핑할지 여부를 나타냅니다.
false
이후
long
이전 24 시간
기간
long
managed 네임스페이스 중에서 추천 인덱스를 찾는 데 걸리는 시간(단위: 밀리초)입니다.
현재 시간까지
namespaces
문자열

추천 인덱스를 조회할 네임스페이스입니다. 네임스페이스는 . 으로 구분된 데이터베이스와 collection 리소스(예: <database>.<collection> 로 구성됩니다.

여러 네임스페이스를 지정하려면 앰퍼샌드(&)를 구분자로 사용하여 각 네임스페이스에 대해 한 번씩 매개 변수를 여러 번 전달합니다.

예제

?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
숫자
쿼리에서 반환된 모든 문서 대비 읽은 평균 문서 수입니다. 자세한 내용 은 쿼리 비효율성 점수 이해를 참조하세요.
shapes[n].namespace
문자열
이 형태의 쿼리로 검색된 네임스페이스입니다.
shapes[n].operations
문서 배열
개별 쿼리에 대한 특정 정보 및 로그 줄이 포함된 문서입니다.
shapes[n].operations[n].predicates
문서 배열
쿼리에 사용되는 검색 기준이 포함된 문서입니다. 사용자에게 프로젝트 데이터 액세스 읽기 전용 권한 이상이 없으면 이러한 조건자에서 키-값 쌍의 값이 수정됩니다.
shapes[n].operations[n].raw
문자열
쿼리에 의해 생성된 원시 로그 줄입니다.
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>
문자열
인덱싱할 특정 필드입니다.
suggestedIndexes[n].namespace
문자열
추천 인덱스의 네임스페이스입니다.
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
} ]
}
← 느린 쿼리 로그 가져오기