정의
db.aggregate()기본 컬렉션 이 필요하지 않은 지정된 관리/진단 파이프라인 을 실행합니다. 컬렉션 데이터에 대한 애그리게이션은
db.collection.aggregate()를 참조하세요.중요
Mongo쉬 방법
이 페이지에서는
mongosh메서드를 설명합니다. 이는 데이터베이스 명령 또는 Node.js와 같은 언어별 드라이버에 대한 설명서가 아닙니다.데이터베이스 명령에 대해서는
aggregate명령을 참조하십시오.MongoDB API 드라이버의 경우 언어별 MongoDB 드라이버 설명서를 참조하세요.
호환성
이 메서드는 다음 환경에서 호스팅되는 배포에서 사용할 수 있습니다.
MongoDB Atlas: 클라우드에서의 MongoDB 배포를 위한 완전 관리형 서비스
참고
이 명령은 모든 MongoDB Atlas 클러스터에서 지원됩니다. 모든 명령에 대한 Atlas 지원에 관해 자세히 알아보려면 지원되지 않는 명령을 참조하십시오.
MongoDB Enterprise: MongoDB의 구독 기반 자체 관리 버전
MongoDB Community: MongoDB의 소스 사용 가능 무료 자체 관리 버전
구문
db.aggregate() 메서드의 구문은 다음과 같습니다.
db.aggregate( [ <pipeline> ], { <options> } )
참고
db.aggregate() 는 파이프라인 단계를 배열 의 요소가 아닌 별도의 인수로 pipeline 받아들일 수 있습니다. 을 (배열 로 지정하지 않으면 options 매개변수를 지정할 수 없습니다.
매개변수는 실행할 단계의 배열 입니다.pipeline 파이프라인 또는 와 $listLocalSessions 같이 기본 컬렉션 필요하지 않은 호환되는 단계로 시작해야 합니다. $currentOp
options 문서 다음 필드가 포함될 수 있습니다.
필드 | 유형 | 설명 | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| 부울 | 선택 사항. 메서드가 파이프라인 처리 에 대한 정보를 반환할지 여부를 지정합니다. 예시 는 집계 파이프라인 작업에 대한 반환 정보를 참조하세요. 중요: 이 옵션은 다중 문서 트랜잭션에서는 사용할 수 없습니다. | ||||||||||
| 부울 | 선택 사항. 임시 파일에 쓰기를 활성화합니다. 로 설정하다 하면 프로파일러 로그 메시지 및 진단 로그 메시지에는 메모리 제한으로 인해 집계 단계에서 임시 파일에 데이터를 쓴 경우 | ||||||||||
| 문서 | 선택 사항. 커서 의 초기 배치 크기를 지정합니다. | ||||||||||
| non-negative integer | 선택 사항. 커서 에서 작업 을 처리 데 걸리는 시간 제한 을 밀리초 단위 로 지정 합니다 . maxTimeMS에 값을 지정하지 않으면 작업이 시간 초과되지 않습니다. MongoDB는 | ||||||||||
| 부울 | 선택 사항.
| ||||||||||
| 문서 | 선택 사항. 읽기 고려를 지정합니다.
가능한 읽기 고려 수준은 다음과 같습니다.
읽기 고려 수준에 대한 자세한 내용은 읽기 고려 수준을 참조하세요.
| ||||||||||
| 문서 | 선택 사항. 작업에 사용할 데이터 정렬을 지정합니다. 데이터 정렬을 사용하면 대소문자 및 악센트 표시 규칙과 같은 문자열 비교에 대한 언어별 규칙을 지정할 수 있습니다. 데이터 정렬 옵션의 구문은 다음과 같습니다: 데이터 정렬을 지정할 때 데이터 정렬이 지정되지 않았지만 컬렉션에 기본 데이터 정렬이 있는 경우( 컬렉션 또는 연산에 대한 데이터 정렬이 지정되지 않은 경우, MongoDB는 이전 버전에서 문자열 비교에 사용된 간단한 이진 비교를 사용합니다. 한 연산에 대해 여러 데이터 정렬을 지정할 수 없습니다. 예를 들어 필드별로 서로 다른 데이터 정렬을 지정할 수 없으며 정렬과 함께 찾기를 수행하는 경우 찾기 와 정렬에서 각각 다른 데이터 정렬을 사용하는 것은 허용되지 않습니다. | ||||||||||
| 문자열 또는 문서 | 선택 사항. 집계에 사용할 인덱스입니다. 인덱스는 집계가 실행되는 초기 컬렉션/뷰에 있습니다. 인덱스 이름 또는 인덱스 사양 문서로 인덱스를 지정합니다. 중요: | ||||||||||
| 문자열 | 선택 사항. 사용자는 임의의 문자열을 지정하여 데이터베이스 프로파일러, currentOp 및 로그를 통해 작업을 추적할 수 있습니다. | ||||||||||
| 문서 |
예시
파이프라인 $currentOp
다음 예에서는 두 단계로 구성된 파이프라인을 실행합니다. 첫 번째 단계에서는 $currentOp 작업을 실행하고 두 번째 단계에서는 해당 작업의 결과를 필터링합니다.
use admin db.aggregate( [ { $currentOp : { allUsers: true, idleConnections: true } }, { $match : { shard: "shard01" } } ] )