Docs Menu

추천 인덱스 가져오기

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

기본 URL: https://cloud.mongodb.com/api/public/v1.0

GET /groups/{PROJECT-ID}/hosts/{HOST-ID}/performanceAdvisor/suggestedIndexes
Parameter
유형
설명

프로젝트 ID

문자열

(필수 사항) 이 MongoDB 프로세스를 소유한 프로젝트의 고유 식별자입니다.

HOST-ID

문자열

(필수 사항) MongoDB 프로세스용 호스트의 고유 식별자입니다.

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

pretty

부울

응답 본문이 프리티 프린트 형식이어야 하는지 여부를 나타냅니다.

false

envelope

부울

응답을 엔벨로프에 래핑할지 여부를 나타냅니다.

false

이후

long

이전 24 시간

기간

long

클러스터의 관리형 네임스페이스 중에서 추천 인덱스를 찾는 데 걸리는 시간(밀리초)입니다.

현재 시간까지

namespaces

문자열

추천 인덱스를 조회 할 네임스페이스입니다. 네임스페이스 는 . 으로 구분된 데이터베이스 와 컬렉션 리소스 로 구성됩니다(예: <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

문서 배열

쿼리에 사용되는 Atlas Search 기준이 포함된 문서입니다. 사용자에게 프로젝트 데이터 액세스 읽기 전용 권한 이상이 없는 한 이러한 조건자에서 키-값 쌍의 값이 수정됩니다.

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://cloud.mongodb.com/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
} ]
}