2차원 구체 인덱스
2dsphere 인덱스는 지구와 같은 구에 대한 지리 공간적 쿼리를 지원합니다. 예를 들어 2dsphere 인덱스는 다음을 수행할 수 있습니다.
지정된 영역 내의 점을 결정합니다.
특정 지점에 대한 근접성을 계산합니다.
좌표 쿼리에서 정확히 일치하는 항목을 반환합니다.
인덱싱된 필드의 값은 다음 중 하나여야 합니다.
레거시 좌표 쌍의 경우, 2dsphere 인덱스는 데이터를 GeoJSON 점으로 변환합니다.
2dsphere 인덱스를 생성하려면 문자열 2dsphere
을 인덱스 유형으로 지정합니다.
db.<collection>.createIndex( { <location field> : "2dsphere" } )
참고
2dsphere 인덱스를 생성할 때 첫 번째 값 또는 경도는 -180에서 180(포함) 사이여야 합니다. 두 번째 값 또는 위도는 -90에서 90(포함) 사이여야 합니다. 이러한 좌표는 구 주위를 '래핑'합니다. 예를 들어 -179.9 및 +179.9가 인접합니다.
사용 사례
2dsphere 인덱스를 사용하여 점이 지구 또는 다른 구형 표면에 나타나는 위치 데이터에 대해 쿼리하고 계산을 수행합니다. 예시:
음식 배달 애플리케이션은 2dsphere 인덱스를 사용하여 근처 레스토랑 검색을 지원합니다.
경로 계획 애플리케이션은 2dsphere 인덱스를 사용하여 휴게소 사이의 최단 거리를 계산합니다.
도시 계획가는 2차원 영역 인덱스를 사용하여 도시 경계 내에 존재하는 공원을 찾습니다.
시작하기
2dsphere 인덱스를 생성하고 쿼리하는 방법을 알아보려면 다음을 참조하세요.
세부 정보
2dsphere 인덱스는 항상 희소(sparse)하며 복합인덱스 의 일부로 생성될 때 특별한 동작을 합니다.
sparse
속성
2dsphere 인덱스는 항상 희박합니다. 2dsphere 인덱스를 생성하면 MongoDB는 sparse
옵션을 무시합니다.
기존 문서 또는 새로 삽입한 문서에 2dsphere 인덱스 필드가 없는 경우 (또는 필드가 null
또는 빈 배열인 경우) MongoDB는 문서에 대한 항목을 인덱스에 추가하지 않습니다.
복합 2dsphere 인덱스
2dsphere 인덱스 키와 다른 유형의 키를 포함하는 복합 인덱스의 경우 2dsphere 인덱스 필드만 인덱스가 문서를 참조하는지 여부를 결정합니다.
복합 2dsphere 인덱스는 여러 위치 및 비위치 필드를 참고할 수 있습니다. 반면 복합 2D 인덱스는 하나의 위치 필드와 하나의 다른 필드만 참고할 수 있습니다.