진단 명령
buildInfo
buildInfo 명령의 경우 응답에는 다음 필드가 포함됩니다.
필드 | 설명 |
---|---|
| 성공하면 |
| MongoDB 클라이언트 호환성 버전입니다. 이는 Data Federation 서비스와 호환되는 MongoDB 클라이언트의 가장 이른 버전입니다. |
| 배열 형식의 MongoDB 클라이언트 호환성 버전입니다. |
| Data Federation의 버전 번호입니다. |
| Data Federation 서비스의 Git 버전입니다. |
| Data Federation 서비스의 타임스탬프를 빌드합니다. |
|
|
예시
{ "ok" : <return>, "version" : "<version-number>", "versionArray" : [ <number>, <number>, <number>, <number> ], "dataLake" : { "version" : "<version-number>", "gitVersion" : "<version-number>", "date" : "<timestamp>", "mongoSQLVersion" : "<version-number>" } }
collStats
collStats 명령의 경우 Atlas Data Federation은 응답에서 다음 필드를 생략합니다.
avgObjSize
capped
max
maxSize
wiredTiger
nindexes
totalIndexSize
indexSizes
Atlas Data Federation은 응답에 다음 필드를 포함합니다. 이러한 필드를 사용하여 collection을 채우는 데 사용된 파티션을 확인하고, 통계가 얼마나 최근에 계산되었는지 이해하고, Atlas Data Federation이 출력 문서를 잘랐는지 확인할 수 있습니다.
필드 | 설명 | |
---|---|---|
| 파티션 수입니다. | |
| 모든 파티션의 평균 크기입니다. | |
| 파티션의 파일 형식입니다. | |
| 파티션의 필터링 속성입니다. | |
| 파티션에 있는 문서 수입니다. | |
| 파티션의 크기(바이트)입니다. | |
| 파티션의 백업 데이터가 포함된 클라우드 저장 URL. | |
| Atlas cluster 의 MongoDB 버전입니다.
예를 들어 | |
| Atlas Data Federation이 얼마나 최근에 통계를 계산했는지에 대한 정보입니다. | |
| 통계 계산이 시작된 ISODate 형식의 시간입니다. | |
| 캐시를 새로 고치기 위해 백그라운드 작업이 지금 실행 중인지 여부를 나타내는 플래그입니다. | |
| Atlas Data Federation에서 최대 문서 크기 제한인 16MiB를 적용했는지 여부를 나타내는 플래그입니다. 플래그 값은 다음 중 하나일 수 있습니다:
|
예시
{ ... "partitionCount": <number of partitions>, "avgPartitionSize": <average size of all partitions>, "partitions": [ { "format": <file format>, "attributes": <filtering attributes>, "count": <number of documents in partition>, "source": <cloud storage URL>, "size": <size, in bytes, of the partition> }, ... ], "truncated": false, "cacheMetadata": { computeTime: ISODate("2021-07-25T15:10:33.513Z"), automaticRefreshInProgress: false }, ... }
Atlas Data Federation은 캐시를 우회하고 지정된 collection에 대한 가장 최근의 저장 통계를 가져오기 위해 선택적 부울 매개변수인 sync
을 도입합니다. sync
매개 변수에 유효한 값은 다음과 같습니다.
true
- 캐시를 우회하고 가장 최근의 스토리지 통계를 반환합니다.false
- 캐시된 데이터 반환
sync
매개변수를 생략하면 기본값은 false
입니다.
예시
db.runCommand( {collStats: "<string>", sync: true|false} )
이 명령에서 지원하는 매개변수에 학습 보려면 collStats를 참조하세요.
connectionStatus
connectionStatus 명령의 경우 Atlas Data Federation 은 현재 연결에 대한 정보, 특히 인증된 사용자의 상태 와 사용 가능한 역할을 반환합니다.
참고
주어진 시간에 연합 데이터베이스 인스턴스에 대한 연결에서 한 명의 사용자만 인증할 수 있습니다. 사용자가 인증한 후 db.auth()
명령을 실행하면 Data Federation은 이전 사용자의 권한을 새 사용자의 권한으로 대체합니다.
connectionStatus 명령은 authenticatedUsers
출력 필드 에 새로 인증된 사용자만 표시합니다.
dbStats
Atlas Data Federation 은 dbStats 명령의 경우 선택적 부울 매개 변수 sync
를 도입하여 캐시 를 우회하고 지정된 데이터베이스 에 대한 가장 최근의 저장 통계를 가져옵니다. sync
매개변수에 유효한 값은 다음과 같습니다.
true
- 캐시를 우회하고 가장 최근의 스토리지 통계를 반환합니다.false
-캐시된 데이터도 사용
sync
매개변수를 생략하면 기본값은 false
입니다.
예시
db.runCommand( {dbStats: 1, sync: true|false} )
이 명령에서 지원하는 매개변수에 학습 보려면 dbStats를 참조하세요.
Atlas Data Federation 명령은 응답에서 다음 필드를 생략합니다.
object
avgObjSize
fsUsedSize
fsTotalSize
이 명령은 응답에 다음 필드를 추가합니다. 이러한 필드를 사용하여 명령이 오래된 데이터를 반환했는지 여부를 확인할 수 있습니다.
필드 | 설명 |
---|---|
| 통계가 얼마나 최근에 계산되었는지에 대한 정보가 포함되어 있습니다. |
| 통계 계산이 시작된 ISODate 형식의 시간입니다. |
| 캐시를 새로 고치기 위해 백그라운드 작업이 지금 실행 중인지 여부를 나타내는 플래그입니다. |
explain
설명 명령은 Data Federation 쿼리 계획 을 설명하는 정보를 반환합니다. explain
출력은 쿼리 를 충족하는 데 사용되는 데이터 파티션에 대한 정보를 제공한다는 점에서 MongoDB 와 다릅니다.
Data Federation에서 설명할 수 있는 명령은 다음과 같습니다.
aggregate()
count()
find()
사용법
Atlas Data Federation은 다음 verbosity
모드를 지원합니다.
queryPlanner
- 쿼리 계획에 대한 정보를 제공합니다. 상세도를 지정하지 않으면 Atlas Data Federation은 기본적으로 이 모드를 사용합니다.queryPlannerExtended
- 쿼리할 객체 저장 객체 이름 및 크기와 같은 객체 저장 객체에 대한 정보를 포함하여 쿼리 계획에 대한 자세한 정보를 제공합니다.executionStats
- 쿼리 실행 통계 및 성능을 제공합니다.
Atlas Data Federation은 allPlansExecution
모드를 지원하지 않습니다.
예시
다음 예에서는 explain
명령을 사용하여 쿼리 계획에 대한 자세한 정보를 포함하여 애그리게이션 명령에 대한 정보를 가져오는 방법을 보여 줍니다.
db.runCommand({ "explain": { "aggregate": "user", "verbosity": "queryPlannerExtended", "pipeline": [ ], "cursor": {} }})
다음 예시 에서는 find()
메서드와 같이 explain
메서드에 메서드를 추가하여 쿼리 에 대한 쿼리 실행 통계를 가져오는 방법을 보여 줍니다.
db.users.explain("executionStats").find({"type": "admin"})
출력
explain
를 실행하면 Atlas Data Federation이 다른 파티션에 대해 다음과 같은 추가 필드를 반환합니다.
출력 필드 이름 | 설명 |
---|---|
| Atlas Data Federation이 쿼리를 위해 열 수 있는 파티션의 수와 총 크기를 설명하는 문서입니다. |
| Atlas Data Federation이 쿼리에 대해 열 수 있는 파티션의 총 크기입니다. |
| Atlas Data Federation이 쿼리에 대해 열 수 있는 파티션 수입니다. |
|
|
| 쿼리에 대한 쿼리 실행 계획이 포함된 문서입니다. 이 문서에는 중첩된 실행 계획 노드가 포함되어 있으며, 각 노드는 계획 노드를 설명하는 문서입니다. 중첩된 계획 노드 문서에는 Atlas Data Federation의 쿼리 실행에 대한 내부 설명이 포함되어 있으며 변경될 수 있는 다양한 노드 종류가 포함되어 있습니다. 쿼리 계획을 이해하는 데 도움이 더 필요하면 MongoDB 지원팀에 문의하세요. |
queryPlanner
모드에서 explain
가 반환한 결과는 연합 데이터베이스 인스턴스의 파티션에 대한 자세한 정보를 제공합니다.
1 { 2 ok: 1, 3 stats: { size: '66 B', numberOfPartitions: 2 }, 4 truncated: false, 5 plan: { 6 kind: 'region', 7 region: 'aws/us-east-1', 8 node: { 9 kind: 'data', 10 size: '66 B', 11 numberOfPartitions: 2, 12 partitionsTruncated: false, 13 partitions: [ 14 { 15 source: 'projectID:cluster', 16 provider: 'atlas', 17 size: '4 B', 18 database: 'locations', 19 collection: 'nyc' 20 }, 21 { 22 source: 'dls:projectID', 23 provider: 'dls:aws', 24 size: '62 B', 25 metadataLocation: { provider: 'aws', region: 'us-east-1' }, 26 dataSetName: 'v1$atlas$archive$etc', 27 optimizationPlan: { kind: 'everything' } 28 } 29 ] 30 } 31 } 32 }
explain
명령어는 Atlas 파티션에 대해 다음과 같은 추가 필드를 반환합니다.
출력 | 설명 |
---|---|
| Atlas Data Federation이 쿼리한 데이터베이스입니다. |
| Atlas Data Federation이 쿼리한 collection입니다. |
| Atlas Data Federation이 실행한 집계 파이프라인. |
explain
명령은 온라인 보관 파티션에 대해 다음과 같은 추가 필드 를 반환합니다.
출력 필드 이름 | 설명 |
---|---|
| 온라인 보관 최적화에 대한 세부 정보. 쿼리는 Online 보관 에 대해 구성된 파티션 키와 일치하는 필드를 포함할 때 최적화될 가능성이 높습니다. |
queryPlannerExtended
모드 에서 explain
가 반환하는 결과는 파티션 유형에 대한 확장 쿼리 계획 정보를 제공합니다.
1 { 2 ok: 1, 3 stats: { size: '66 B', numberOfPartitions: 2 }, 4 truncated: false, 5 plan: { 6 kind: 'region', 7 region: 'aws/us-east-1', 8 node: { 9 kind: 'data', 10 size: '66 B', 11 numberOfPartitions: 2, 12 partitionsTruncated: false, 13 partitions: [ 14 { 15 source:'projectID:cluster', 16 provider: 'atlas', 17 size: '4 B', 18 database: 'locations', 19 collection: 'nyc' 20 }, 21 { 22 source: 'dls:projectID', 23 provider: 'dls:aws', 24 size: '62 B', 25 metadataLocation: { provider: 'aws', region: 'us-east-1' }, 26 dataSetName: 'v1$atlas$archive$etc', 27 scannedDataSetPartitionsCount: 1, 28 percentOfTotalPartitions: 100, 29 optimizationPlan: { kind: 'everything' } 30 }, 31 ] 32 } 33 } 34 }
explain
명령은 queryPlanner
의 모든 정보와 온라인 보관 파티션에 대한 다음 추가 필드를 반환합니다.
출력 필드 이름 | 설명 |
---|---|
| 쿼리 를 완료하기 위해 스캔한 파티션의 수입니다. |
| 총 파티션 수에서 스캔된 파티션의 백분율입니다. |
executionStats
모드 에서 explain
가 반환하는 결과는 Atlas 파티션에 대한 쿼리 실행 통계 및 성능에 대한 정보만 제공합니다. 이는 Atlas 파티션의 기본 Atlas 컬렉션 에서 executionStats
explain 명령을 실행하여 얻을 수 있습니다. Atlas가 아닌 파티션의 경우 explain
은 queryPlanner
정보를 반환합니다. 결과의 partitions
필드 에는 다음 필드를 포함할 수 있는 문서 인 추가 explainResults
필드 가 포함됩니다.
출력 필드 이름 | 설명 |
---|---|
| 검사한 문서 및 키 수를 포함하여 Atlas cluster의 성공적인 쿼리 계획 실행에 대한 정보를 제공합니다. |
| 인덱스 선택을 포함하여 Atlas 클러스터의 쿼리 계획 선택에 대한 정보가 포함되어 있습니다. |
| 파이프라인 단계에 대한 분석과 단계별 통계가 포함됩니다. |
참고
이러한 필드에 학습 보려면 executionStats를 참조하세요.
1 { 2 ok: 1, 3 stats: { size: '66 B', numberOfPartitions: 2 }, 4 truncated: false, 5 plan: { 6 kind: 'region', 7 region: 'aws/us-east-1', 8 node: { 9 kind: 'data', 10 size: '66 B', 11 numberOfPartitions: 2, 12 partitionsTruncated: false, 13 partitions: [ 14 { 15 source: 'projectID:cluster', 16 provider: 'atlas', 17 size: '4 B', 18 database: 'locations', 19 collection: 'nyc', 20 explainResults: { 21 queryPlanner: { 22 ... 23 winningPlan: { 24 ... 25 }, 26 rejectedPlans: [] 27 }, 28 executionStats: { 29 ... 30 }, 31 stages: { 32 ... 33 } 34 } 35 }, 36 { 37 source: 'dls:projectID', 38 provider: 'dls:aws', 39 size: '62 B', 40 metadataLocation: { provider: 'aws', region: 'us-east-1' }, 41 dataSetName: 'v1$atlas$archive$etc' 42 }, 43 ] 44 } 45 } 46 }
getLog
getLog 명령의 경우 Atlas Data Federation 은 성공적인 응답을 반환하지만 로그 데이터는 포함하지 않습니다.
getMore
getMore 명령의 경우, Atlas Data Federation 은 커서 를 반환하는 명령과 함께 사용할 때 현재 커서 가 가리키고 있는 문서의 후속 배치를 반환합니다. 찾아 집계합니다.
hostInfo
hostInfo 명령의 경우 Atlas Data Federation 은 표준 MongoDB 응답에서 다음 필드 하위 집합만 반환합니다.
{ "ok" : <return>, "system" : { "currentTime" : ISODate("<timestamp>"), "hostname" : "<hostname>", "cpuAddrSize" : <number>, "memSizeMB" : <number>, "numCores" : <number>, "cpuArch" : "<identifier>", }, "os" : { "type" : "<string>", "name" : "<string>", }, "extra" : { } }
ping
핑 명령의 경우 Atlas Data Federation 은 서버 가 명령에 응답하는지 테스트합니다.
whatsmyuri
Whatsmyuri 명령의 경우 Atlas Data Federation 은 클라이언트 IP 주소 반환합니다.