Join us Sept 17 at .local NYC! Use code WEB50 to save 50% on tickets. Learn more >
MongoDB Event
Docs Menu
Docs Home
/
데이터베이스 매뉴얼

집계 작업

집계 작업은 여러 문서를 처리하고 계산된 결과를 반환합니다. 집계 작업을 통해 다음과 같은 작업을 수행할 수 있습니다:

  • 여러 문서의 값을 그룹화합니다.

  • 그룹화된 데이터에 대한 연산을 수행하여 하나의 단일 결과를 반환합니다.

  • 시간에 따른 데이터 변화를 분석합니다.

  • 최신 버전의 데이터를 쿼리합니다.

MongoDB 에 내장 집계 연산자를 사용하면 데이터를 다른 플랫폼으로 이동하지 않고도 클러스터 에서 분석 수행할 수 있습니다.

집계 작업을 수행하기 위해 다음을 사용할 수 있습니다:

  • 집계를 수행하는 데 선호되는 방법인 집계 파이프라인.

  • 단일 목적 집계 방법은 간단하지만 집계 파이프라인만큼의 기능이 없습니다.

MongoDB Atlas에서 호스팅되는 배포에 대해 UI에서 집계 파이프라인을 실행할 수 있습니다.

집계 파이프라인 문서를 프로세스 하나 이상의 단계 로 구성됩니다. 이러한 문서는 컬렉션, view 또는 특별히 설계된 단계에서 가져올 수 있습니다.

각 단계는 입력 문서에 대한 작업을 수행합니다. 예시를 들어 단계는 $filter 문서화, $group 문서화 및 값 계산을 수행할 수 있습니다. 그런 다음 단계에서 출력하는 문서는 파이프라인 의 다음 단계로 전달됩니다.

집계 파이프라인 문서 그룹에 대한 결과를 반환할 수 있습니다. 집계 파이프라인 으로 업데이트에 표시된 단계를 사용하여 집계 파이프라인으로 문서를 업데이트 할 수도 있습니다.

참고

db.collection.aggregate() 메서드로 실행되는 집계 파이프라인은 파이프라인에 $merge 또는 $out 단계가 포함되지 않는 한 컬렉션의 문서를 수정하지 않습니다.

다음 예시 파이프라인 MongoDB Atlas, 특히 컬렉션 에서 사용할 수 있는 샘플 데이터의 문서를 sample_training.routes 사용합니다. 이 파이프라인 에서는 미국 오리건주 포틀랜드(PDX)에 있는 공항에서 출발하는 가장 직항편을 제공하는 상위 3개 항공사를 찾습니다.

먼저 $match 단계를 추가하여 src_airport 값이 PDX 이고 stops가 0인 항공편으로 문서를 필터하다.

{
$match : {
"src_airport" : "PDX",
"stops" : 0
}
}

$match 단계에서는 파이프라인 의 문서 수를 66 985 에서 113로 줄입니다. 다음으로 $group 항공사 이름별로 문서를 하고 항공편 수를 계산합니다.

{
$group : {
_id : {
"airline name": "$airline.name",
}
count : {
$sum : 1
}
}
}

$group 단계에서는 파이프라인 의 문서 수를 16 항공사로 줄입니다. 항공편이 가장 많은 항공사를 찾으려면 $sort 단계를 사용하여 나머지 문서를 내림차순으로 정렬합니다.

{
$sort : {
count : -1
}
}

문서를 정렬한 후 $limit 단계를 사용하여 PDX에서 가장 많은 직항편을 제공하는 상위 3개 항공사를 반환합니다.

{
$limit : 3
}

이 집계 파이프라인 통해 컬렉션 에 문서를 배치한 후 sample_training.routes PDX에서 직항편을 제공하는 상위 3개 항공사는 알래스카, 미국 항공 및 항공편을 운항하는 United 항공입니다.39 17 13.

전체 파이프라인 다음과 유사합니다.

db.routes.aggregate( [
{
$match : {
"src_airport" : "PDX",
"stops" : 0
}
},
{
$group : {
_id : {
"airline name": "$airline.name",
}
count : {
$sum: 1
}
}
},
{
$sort : {
count : -1
}
},
{
$limit : 3
}
] )

샘플 입력 문서가 포함된 실행 가능한 예시는 전체 집계 파이프라인 예시를 참조하세요.

집계 파이프라인대한 자세한 내용은 집계 파이프라인을 참조하세요.

단일 목적 집계 메서드는 단일 컬렉션에서 문서를 집계합니다. 이 메서드는 간단하지만 집계 파이프라인의 기능이 부족합니다.

메서드
설명

Collection 또는 보기에 있는 문서의 대략적인 개수를 반환합니다.

Collection 또는 보기에 있는 문서 수의 개수를 반환합니다.

지정된 필드에 고유한 값을 가진 문서의 배열을 반환합니다.

돌아가기

데이터베이스 참조

스킬 배지 획득

무료로 '데이터 변환의 기초'를 마스터하세요!

자세한 내용을 알아보세요.

이 페이지의 내용