추천 인덱스 모두 반환

얻다 /api/atlas/v2/groups/{groupId}/processes/{processId}/performanceAdvisor/suggestedIndexes

Performance Advisor가 제안하는 인덱스를 반환합니다. Performance Advisor는 MongoDB가 느리다고 판단한 쿼리를 모니터링하고 쿼리 성능을 향상시키기 위해 새 인덱스를 추천합니다. 이 리소스를 사용하려면, 요청하는 서비스 계정 또는 API 키에 프로젝트 읽기 전용 역할이 있어야 합니다.

경로 매개변수

  • groupId 문자열 필수 사항

    프로젝트 식별하는 고유한 24-16진수 문자열입니다. 인증된 사용자가 액세스 할 수 있는 모든 프로젝트를 조회 하려면 /groups 엔드포인트를 사용합니다.

    참고: 그룹과 프로젝트는 동의어입니다. 그룹 ID는 프로젝트 ID와 동일합니다. 기존 그룹의 경우, 그룹/프로젝트 ID는 동일하게 유지됩니다. 리소스 및 해당 엔드포인트는 그룹이라는 용어를 사용합니다.

    형식은 ^([a-f0-9]{24})$ 패턴 과 일치해야 합니다.

  • processId 문자열 필수 사항

    MongoDB 프로세스를 제공하는 호스트와 포트의 조합입니다. 호스트는 MongoDB 프로세스(mongod 또는 mongos)를 실행하는 호스트의 호스트 이름, FQDN, IPv4 주소 또는 IPv6 주소여야 합니다. 포트는 MongoDB 프로세스가 요청을 수신하는 IANA 포트여야 합니다.

    형식은 ^([0-9]{1,3}\.){3}[0-9]{1,3}|([0-9a-f]{1,4}\:){7}([0-9a-f]{1,4})|(([a-z0-9]+\.){1,10}[a-z]+)?(\:[0-9]{4,5})$ 패턴 과 일치해야 합니다.

쿼리 매개변수

  • envelope 부울

    애플리케이션이 응답을 envelope JSON 객체로 래핑할지 여부를 나타내는 플래그입니다. 일부 API 클라이언트는 HTTP 응답 헤더 또는 상태 코드에 액세스할 수 없습니다. 이 문제를 해결하려면 쿼리에서 envelope=true를 설정합니다. 결과 목록을 반환하는 엔드포인트는 결과 객체를 엔벨로프로 사용합니다. 애플리케이션은 응답 본문에 상태 매개변수를 추가합니다.

    기본값은 false 입니다.

  • includeCount 부울

    응답이 응답의 총 항목 수(TotalCount)를 반환하는지 여부를 나타내는 플래그입니다.

    기본값은 true 입니다.

  • itemsPerPage integer

    페이지당 응답이 반환하는 항목 수입니다.

    최소값은 1, 최대값은 500입니다. 기본값은 100입니다.

  • pageNum integer

    응답이 반환하는 전체 객체의 현재 세트를 표시하는 페이지 번호입니다.

    최소값은 1입니다. 기본값은 1입니다.

  • pretty 부울

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

    기본값은 false 입니다.

    Prettyprint
  • 기간 integer(int64)

    쿼리가 cluster의 관리형 네임스페이스 중에서 추천 인덱스를 찾는 동안 표현된 시간입니다. 이 매개변수는 해당 값을 밀리초 단위로 표현합니다.

    • 이후 매개변수를 지정하지 않으면 엔드포인트는 현재 시간 이전의 기간을 포함하는 데이터를 반환합니다.
    • 기간 또는 이후 매개변수를 모두 지정하지 않으면 엔드포인트는 이전 24시간 동안의 데이터를 반환합니다.
  • namespaces array[string]

    추천 인덱스를 조회할 네임스페이스입니다. 네임스페이스는 데이터베이스 한 개와 .: <database>.<collection>(으)로 작성된 컬렉션 리소스 한 개로 구성됩니다. 여러 네임스페이스를 포함하려면 각 네임스페이스 사이에 앰퍼샌드(&)로 구분하여 매개변수를 여러 번 전달합니다. 모든 네임스페이스에 대한 결과를 반환하려면 이 매개변수를 생략합니다.

  • nExamples integer(int64)

    추천 인덱스의 이점을 누릴 수 있는 최대 예시 쿼리 수입니다.

    기본값은 5 입니다.

  • nIndexes integer(int64)

    추천할 최대 인덱스를 나타내는 숫자입니다.

  • 이후 integer(int64)

    쿼리가 추천 인덱스를 조회하는 날짜 및 시간입니다. 이 매개 변수는 해당 값을 유닉스 시간 이후 경과된 밀리초 단위로 표현합니다.

    • 기간 매개변수를 지정하지 않으면 엔드포인트는 이후 값과 현재 시간을 포함하는 데이터를 반환합니다.
    • 기간 또는 이후 매개변수를 모두 지정하지 않으면 엔드포인트는 이전 24시간 동안의 데이터를 반환합니다.

    최소값은 1199145600000입니다.

응답

  • 200 application/vnd.atlas.2023-01-01+json

    확인

    응답 속성 숨기기 응답 속성 표시 객체
    • 모양 배열[객체]

      Performance Advisor 제안하는 쿼리 조건자, 정렬 및 프로젝션의 목록입니다.

      도형 속성 숨기기 도형 속성 표시 객체
      • 평균 integer(int64)

        이 형태와 일치하는 검사된 쿼리의 평균 지속 시간(밀리초)입니다.

      • 카운트 integer(int64)

        이 형태와 일치하는 검사된 쿼리의 수입니다.

      • id 문자열

        이 도형을 식별하는 고유한 24-16진수 문자열입니다. 이 문자열은 이 API 요청 기간 동안에만 존재합니다.

        형식은 ^([a-f0-9]{24})$ 패턴 과 일치해야 합니다.

      • 비효율성 점수 integer(int64)

        쿼리 반환하는 모든 문서 에 대해 읽은 평균 문서 수입니다.

        쿼리 비효율성 점수 이해
      • namespace 문자열

        지정된 호스팅하다 의 네임스페이스 를 식별하는 사람이 읽을 수 있는 레이블입니다. 리소스 이 매개변수 값을 <database>.<collection>로 표현합니다.

      • 연산 배열[객체]

        개별 쿼리에 대한 구체적인 내용이 포함된 목록입니다.

        작업 속성 숨기기 작업 속성 표시 객체
        • 술어 배열[객체]

          쿼리 에서 사용하는 검색 기준이 포함된 목록입니다. 이러한 조건자에서 키-값 쌍의 값을 사용하려면 프로젝트 데이터 액세스 읽기 전용 권한 이상이 필요합니다. 그렇지 않으면 MongoDB Cloud가 이러한 값을 삭제합니다.

          쿼리 에서 사용하는 검색 기준이 포함된 목록입니다. 이러한 조건자에서 키-값 쌍의 값을 사용하려면 프로젝트 데이터 액세스 읽기 전용 권한 이상이 필요합니다. 그렇지 않으면 MongoDB Cloud가 이러한 값을 삭제합니다.

          쿼리 에서 사용하는 검색 기준이 포함된 목록입니다. 이러한 조건자에서 키-값 쌍의 값을 사용하려면 프로젝트 데이터 액세스 읽기 전용 권한 이상이 필요합니다. 그렇지 않으면 MongoDB Cloud가 이러한 값을 삭제합니다.

        • stats 객체

          이 리소스 지정된 쿼리 에 대해 반환한 세부 정보입니다.

          통계 속성 숨기기 통계 속성 표시 객체
          • ms integer(int64)

            쿼리 클러스터 의 managed 네임스페이스 중에서 추천 인덱스를 찾는 동안 표현된 시간입니다. 이 매개변수는 해당 값을 밀리초 단위로 표현합니다. 이 매개변수는 기간 쿼리 매개변수와 관련이 있습니다.

          • nReturned integer(int64)

            쿼리 반환하는 결과 수입니다.

          • nScanned integer(int64)

            쿼리 에서 읽은 문서 수입니다.

          • Typescript integer(int64)

            쿼리 추천 인덱스를 조회하는 날짜 및 시간입니다. 이 매개변수는 유닉스 시간 이후 경과된 시간(초)으로 값을 표현합니다. 이 매개변수는 이후 쿼리 매개변수와 관련이 있습니다.

            UNIX Epoch
    • 제안된 인덱스 배열[객체]

      Performance Advisor 제안하는 인덱스에 대한 정보가 포함된 문서가 포함된 목록입니다.

      제안된 인덱스 속성 숨기기 제안된 인덱스 속성 표시 객체
      • avgObjSize number(double)

        이 인덱스 컬렉션 에 있는 객체 의 평균 크기입니다.

      • id 문자열

        이 인덱스 식별하는 고유한 24-16진수 문자열입니다.

        형식은 ^([a-f0-9]{24})$ 패턴 과 일치해야 합니다.

      • 영향 array[string]

        Performance Advisor 제안하는 이 응답에서 쿼리 형태를 식별하는 고유한 24-16진수 문자열이 포함된 목록입니다.

      • index 배열[객체]

        인덱스 및 정렬 순서에서 키를 지정하는 문서가 포함된 목록입니다.

        정렬 순서와 쌍을 이루는 하나의 인덱스 키입니다. 1 값은 오름차순 정렬 순서를 나타냅니다. -1 값은 내림차순 정렬을 나타냅니다. 키가 여러 개인 인덱스의 키는 인덱스 에 표시되는 순서와 동일한 순서로 표시됩니다.

        인덱스 속성 숨기기 인덱스 속성 표시 객체
        • * integer(int32) additionalProperties

          정렬 순서와 쌍을 이루는 하나의 인덱스 키입니다. 1 값은 오름차순 정렬 순서를 나타냅니다. -1 값은 내림차순 정렬을 나타냅니다. 키가 여러 개인 인덱스의 키는 인덱스 에 표시되는 순서와 동일한 순서로 표시됩니다.

          값은 1 또는 -1입니다.

      • namespace 문자열

        지정된 호스팅하다 의 네임스페이스 를 식별하는 사람이 읽을 수 있는 레이블입니다. 리소스 이 매개변수 값을 <database>.<collection>로 표현합니다.

      • 무게 number(double)

        제안된 인덱스 제공하는 예상 성능 개선 사항입니다. 이 값은 Performance Advisor 사용자 인터페이스의 영향에 해당합니다.

  • 401 application/json

    승인되지 않았습니다.

    응답 속성 숨기기 응답 속성 표시 객체
    • badRequestDetail 객체

      요청 세부 정보가 잘못되었습니다.

      badRequestDetail 속성 숨기기 badRequestDetail 속성 표시 객체
      • 필드 배열[객체]

        클라이언트 요청 의 모든 위반 사항을 설명합니다.

        필드 속성 숨기기 필드 속성 표시 객체
        • description 문자열 필수 사항

          요청 요소가 잘못된 이유에 대한 설명입니다.

        • 필드 문자열 필수 사항

          요청 본문의 필드 로 연결되는 경로입니다.

    • 세부 정보 문자열

      각 오류 유형을 유발하는 특정 조건 또는 이유를 설명합니다.

    • 오류 integer(int32) 필수 사항

      이 오류와 함께 HTTP 상태 코드가 반환되었습니다.

      외부 문서
    • 오류 코드 문자열 필수 사항

      이 오류와 함께 반환된 애플리케이션 오류 코드입니다.

    • 매개변수 배열[객체]

      오류에 대한 자세한 정보를 제공하는 데 사용된 매개변수입니다.

    • 이유 문자열

      이 오류와 함께 반환된 애플리케이션 오류 메시지입니다.

  • 403 application/json

    Forbidden.

    응답 속성 숨기기 응답 속성 표시 객체
    • badRequestDetail 객체

      요청 세부 정보가 잘못되었습니다.

      badRequestDetail 속성 숨기기 badRequestDetail 속성 표시 객체
      • 필드 배열[객체]

        클라이언트 요청 의 모든 위반 사항을 설명합니다.

        필드 속성 숨기기 필드 속성 표시 객체
        • description 문자열 필수 사항

          요청 요소가 잘못된 이유에 대한 설명입니다.

        • 필드 문자열 필수 사항

          요청 본문의 필드 로 연결되는 경로입니다.

    • 세부 정보 문자열

      각 오류 유형을 유발하는 특정 조건 또는 이유를 설명합니다.

    • 오류 integer(int32) 필수 사항

      이 오류와 함께 HTTP 상태 코드가 반환되었습니다.

      외부 문서
    • 오류 코드 문자열 필수 사항

      이 오류와 함께 반환된 애플리케이션 오류 코드입니다.

    • 매개변수 배열[객체]

      오류에 대한 자세한 정보를 제공하는 데 사용된 매개변수입니다.

    • 이유 문자열

      이 오류와 함께 반환된 애플리케이션 오류 메시지입니다.

  • 404 application/json

    찾을 수 없습니다.

    응답 속성 숨기기 응답 속성 표시 객체
    • badRequestDetail 객체

      요청 세부 정보가 잘못되었습니다.

      badRequestDetail 속성 숨기기 badRequestDetail 속성 표시 객체
      • 필드 배열[객체]

        클라이언트 요청 의 모든 위반 사항을 설명합니다.

        필드 속성 숨기기 필드 속성 표시 객체
        • description 문자열 필수 사항

          요청 요소가 잘못된 이유에 대한 설명입니다.

        • 필드 문자열 필수 사항

          요청 본문의 필드 로 연결되는 경로입니다.

    • 세부 정보 문자열

      각 오류 유형을 유발하는 특정 조건 또는 이유를 설명합니다.

    • 오류 integer(int32) 필수 사항

      이 오류와 함께 HTTP 상태 코드가 반환되었습니다.

      외부 문서
    • 오류 코드 문자열 필수 사항

      이 오류와 함께 반환된 애플리케이션 오류 코드입니다.

    • 매개변수 배열[객체]

      오류에 대한 자세한 정보를 제공하는 데 사용된 매개변수입니다.

    • 이유 문자열

      이 오류와 함께 반환된 애플리케이션 오류 메시지입니다.

  • 429 application/json

    요청이 너무 많습니다.

    응답 속성 숨기기 응답 속성 표시 객체
    • badRequestDetail 객체

      요청 세부 정보가 잘못되었습니다.

      badRequestDetail 속성 숨기기 badRequestDetail 속성 표시 객체
      • 필드 배열[객체]

        클라이언트 요청 의 모든 위반 사항을 설명합니다.

        필드 속성 숨기기 필드 속성 표시 객체
        • description 문자열 필수 사항

          요청 요소가 잘못된 이유에 대한 설명입니다.

        • 필드 문자열 필수 사항

          요청 본문의 필드 로 연결되는 경로입니다.

    • 세부 정보 문자열

      각 오류 유형을 유발하는 특정 조건 또는 이유를 설명합니다.

    • 오류 integer(int32) 필수 사항

      이 오류와 함께 HTTP 상태 코드가 반환되었습니다.

      외부 문서
    • 오류 코드 문자열 필수 사항

      이 오류와 함께 반환된 애플리케이션 오류 코드입니다.

    • 매개변수 배열[객체]

      오류에 대한 자세한 정보를 제공하는 데 사용된 매개변수입니다.

    • 이유 문자열

      이 오류와 함께 반환된 애플리케이션 오류 메시지입니다.

  • 500 application/json

    내부 서버 오류입니다.

    응답 속성 숨기기 응답 속성 표시 객체
    • badRequestDetail 객체

      요청 세부 정보가 잘못되었습니다.

      badRequestDetail 속성 숨기기 badRequestDetail 속성 표시 객체
      • 필드 배열[객체]

        클라이언트 요청 의 모든 위반 사항을 설명합니다.

        필드 속성 숨기기 필드 속성 표시 객체
        • description 문자열 필수 사항

          요청 요소가 잘못된 이유에 대한 설명입니다.

        • 필드 문자열 필수 사항

          요청 본문의 필드 로 연결되는 경로입니다.

    • 세부 정보 문자열

      각 오류 유형을 유발하는 특정 조건 또는 이유를 설명합니다.

    • 오류 integer(int32) 필수 사항

      이 오류와 함께 HTTP 상태 코드가 반환되었습니다.

      외부 문서
    • 오류 코드 문자열 필수 사항

      이 오류와 함께 반환된 애플리케이션 오류 코드입니다.

    • 매개변수 배열[객체]

      오류에 대한 자세한 정보를 제공하는 데 사용된 매개변수입니다.

    • 이유 문자열

      이 오류와 함께 반환된 애플리케이션 오류 메시지입니다.

GET /api/atlas/v2/groups/{groupId}/processes/{processId}/performanceAdvisor/suggestedIndexes
atlas api performanceAdvisor listGroupProcessPerformanceAdvisorSuggestedIndexes --help
import (
	"os"
	"context"
	"log"
	sdk "go.mongodb.org/atlas-sdk/v20240530001/admin"
)

func main() {
	ctx := context.Background()
	clientID := os.Getenv("MONGODB_ATLAS_CLIENT_ID")
	clientSecret := os.Getenv("MONGODB_ATLAS_CLIENT_SECRET")

	// See https://dochub.mongodb.org/core/atlas-go-sdk-oauth
	client, err := sdk.NewClient(sdk.UseOAuthAuth(clientID, clientSecret))

	if err != nil {
		log.Fatalf("Error: %v", err)
	}

	params = &sdk.ListGroupProcessPerformanceAdvisorSuggestedIndexesApiParams{}
	sdkResp, httpResp, err := client.PerformanceAdvisorApi.
		ListGroupProcessPerformanceAdvisorSuggestedIndexesWithParams(ctx, params).
		Execute()
}
curl --include --header "Authorization: Bearer ${ACCESS_TOKEN}" \
  --header "Accept: application/vnd.atlas.2024-05-30+json" \
  -X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/processes/{processId}/performanceAdvisor/suggestedIndexes?pretty=true"
curl --user "${PUBLIC_KEY}:${PRIVATE_KEY}" \
  --digest --include \
  --header "Accept: application/vnd.atlas.2024-05-30+json" \
  -X GET "https://cloud.mongodb.com/api/atlas/v2/groups/{groupId}/processes/{processId}/performanceAdvisor/suggestedIndexes?pretty=true"
응답 예시(200)
{
  "shapes": [
    {
      "avgMs": 42,
      "count": 42,
      "id": "32b6e34b3d91647abb20e7b8",
      "inefficiencyScore": 42,
      "namespace": "string",
      "operations": [
        {
          "predicates": [
            {}
          ],
          "stats": {
            "ms": 42,
            "nReturned": 42,
            "nScanned": 42,
            "ts": 42
          }
        }
      ]
    }
  ],
  "suggestedIndexes": [
    {
      "avgObjSize": 42.0,
      "id": "32b6e34b3d91647abb20e7b8",
      "impact": [
        "string"
      ],
      "index": [
        {
          "additionalProperty1": 1,
          "additionalProperty2": 1
        }
      ],
      "namespace": "string",
      "weight": 42.0
    }
  ]
}
응답 예시(401)
{
  "error": 401,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Unauthorized",
  "errorCode": "NOT_ORG_GROUP_CREATOR"
}
응답 예시(403)
{
  "error": 403,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Forbidden",
  "errorCode": "CANNOT_CHANGE_GROUP_NAME"
}
응답 예시(404)
{
  "error": 404,
  "detail": "(This is just an example, the exception may not be related to this endpoint) Cannot find resource AWS",
  "reason": "Not Found",
  "errorCode": "RESOURCE_NOT_FOUND"
}
응답 예시(429)
{
  "error": 429,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Too Many Requests",
  "errorCode": "RATE_LIMITED"
}
응답 예시(500)
{
  "error": 500,
  "detail": "(This is just an example, the exception may not be related to this endpoint)",
  "reason": "Internal Server Error",
  "errorCode": "UNEXPECTED_ERROR"
}