색인 속성
인덱스 속성은 쿼리 플래너가 인덱스를 사용하는 방식과 인덱싱된 문서가 저장되는 방식에 영향을 줍니다. 인덱스를 만들 때 인덱스 속성을 선택적 매개변수로 지정할 수 있습니다.
다음 섹션에서는 인덱스를 작성할 때 지정할 수 있는 인덱스 속성에 대해 설명합니다.
참고
모든 인덱스 유형이 모든 인덱스 속성과 호환되는 것은 아닙니다.
대소문자를 구분하지 않는 인덱스
대소문자를 구분하지 않는 인덱스는 대소문자를 고려하지 않고 문자열에 대한 쿼리를 지원합니다.
Hidden Indexes
숨겨진 인덱스는 쿼리 플래너에 표시되지 않으며 쿼리를 지원하는 데 사용할 수 없습니다.
숨겨진 인덱스를 사용하여 인덱스를 실제로 제거하지 않고도 제거할 경우 발생할 수 있는 영향을 평가할 수 있습니다. 영향이 부정적인 경우 제거된 인덱스를 다시 생성할 필요 없이 인덱스 숨기기를 해제할 수 있습니다. 숨겨진 인덱스는 완전히 유지되며 숨기기를 해제하면 즉시 사용할 수 있습니다.
부분 인덱스
부분 인덱스는 지정된 필터 표현식을 충족하는 컬렉션의 문서만 인덱싱합니다. 부분 인덱스는 스토리지 요구 사항이 낮고 인덱스 생성 및 유지 관리에 드는 성능 비용이 절감됩니다.
부분 인덱스는 희소 인덱스 기능의 상위 세트를 제공하므로 희소 인덱스보다 선호됩니다.
희소 인덱스
희소 인덱스에는 인덱싱된 필드가 있는 문서에 대한 항목만 포함됩니다. 이러한 인덱스는 인덱싱된 필드가 없는 문서를 건너뜁니다.
TTL Indexes
TTL 인덱스는 일정 시간이 지나면 컬렉션에서 문서를 자동으로 제거합니다. 이러한 인덱스는 머신 생성 이벤트 데이터, 로그 및 세션 정보와 같이 한정된 시간 동안만 유지해야 하는 데이터에 사용합니다.
Unique Indexes
고유 인덱스를 사용하면 MongoDB가 인덱싱된 필드에 대해 중복된 값을 거부합니다. 이러한 인덱스는 문서에 userId
등의 고유 식별자가 포함되어 있을 때 유용합니다.