집계 프레임워크
- 몽고 DB 내 분석 도구 모음. 하나 이상의 컬렉션에 있는 도큐먼트에 대한 분석을 수행하게 해준다.
- 파이프라인 개념
- 집계 파이프라인을 통해 몽고 DB 컬렉션에서 입력을 받고, 컬렉션에서 나온 도큐먼트를 하나 이상의 단계를 거쳐 전달한다.
- 파이프라인은 단계로 구성되며, 각 단계는 입력에 서로 다른 데이터 처리 작업을 수행하고 출력으로 도큐먼트를 생성해 다음 단계로 전달한다.
- 처리 작업 끝에서 생성한 출력은 애플리케이션에서 작업하는 데 사용하거나, 컬렉션에 보내 나중에 사용한다.
- 많은 경우 필요한 분석을 수행하기 위해 단일 파이프라인에 동일한 유형의 단계를 여러번 포함한다.
- aggregate 메서드 사용
- aggregate : 집합
- 집계 쿼리를 실행할 때 호출하는 메서드
파이프라인의 각 단계
- 일치(Match)
- 선출(Projection)
- 정렬(Sort)
- 건너뛰기(Skip)
- 제한(Limit)

https://www.mongodb.com/docs/manual/reference/sql-aggregation-comparison/
db.companies.aggregate([
{$match: {founded_year: 2004}},
{$sort: {name: 1}},
{$skip: 10},
{$limit: 5},
{$project: {
_idL 0,
name: 1}},
])
- founded_year가 2004년인 도큐먼트만 필터링한다.
- name을 기준으로 오름차순한다.
- 처음 10개 일치 항목을 건너뛴다.
- 그 뒤 결과를 5개로 제한하여 전달한다.