2d Indexes
2d 인덱스는 2차원 평면 에 점으로 저장된 데이터에 대한 쿼리를 지원 합니다. 2d 인덱스 는 legacy coordinate pairs 에 대한 쿼리에 사용됩니다.
2D 인덱스를 생성하려면 문자열 2d
를 인덱스 유형으로 지정합니다.
db.<collection>.createIndex( { <location field> : "2d" } )
GeoJSON 객체에 대한 쿼리에는 2D 인덱스를 사용할 수 없습니다. GeoJSON 객체에서 쿼리를 활성화하려면 2dsphere 인덱스를 사용합니다.
참고
사용 사례
2D 인덱스를 사용하여 2차원 평면 내에 표현된 데이터를 쿼리하고 계산을 수행합니다. 예시:
두 예술 작품 간의 시각적 유사성을 분석하는 애플리케이션입니다.
2차원 그래프에서 계산을 수행할 수 있는 계산기입니다.
2차원 맵에서 플레이어 간의 거리를 계산하는 모바일 게임입니다.
시작하기
2dsphere 인덱스를 생성하고 쿼리하는 방법을 알아보려면 다음을 참조하세요.
세부 정보
지원되는 계산
2D 인덱스는 평평한 유클리드 평면에서 계산을 지원합니다.
구형 기하학 계산의 경우 데이터를 GeoJSON 객체로 저장하고 2dsphere 인덱스를 사용하여 지리 공간적 쿼리를 지원합니다.
복합 2D 인덱스
두 필드를 참조하는 복합 2D 인덱스를 만들 수 있습니다.
첫 번째 필드는 위치 필드여야 합니다. 인덱스는 이 필드에서 먼저 선택하는 쿼리를 구성합니다.
두 번째 필드는 추가 기준에 따라 결과를 추가로 필터링합니다.
복합 2D 인덱스는 쿼리를 포괄할 수 있습니다.
sparse
속성
2D 인덱스는 항상 희박하며 희박 옵션을 무시합니다. 문서에 2D 인덱스 필드가 없는 경우(또는 필드가 null
이거나 빈 배열인 경우), MongoDB는 문서에 대한 항목을 2D 인덱스에 추가하지 않습니다. 삽입의 경우, MongoDB는 문서를 삽입하지만 2D 인덱스에는 추가하지 않습니다.
다른 유형의 키와 함께 2D 인덱스 키가 포함된 복합 인덱스의 경우, 2D 인덱스 필드만이 인덱스가 문서를 참조하는지 여부를 결정합니다.