Docs Menu
Docs Home
/
Atlas
/ /

인덱스 참조

MongoDB Search 인덱스 Atlas cluster 의 문서를 해당 문서에서 추출된 용어에 매핑하는 데이터 구조입니다. MongoDB Search 인덱스를 사용하면 데이터베이스 의 효율적인 전체 텍스트 검색을 활성화 .

MongoDB Search 인덱스 정의할 때 정적 또는 동적 매핑을 사용하여 컬렉션 에서 인덱스 할 필드를 지정할 수 있습니다.분석기를 사용하여 MongoDB Search가 필드 또는 쿼리 문자열에서 검색 가능한 토큰을 추출하는 방법을 정의할 수도 string 있습니다. 마지막으로, 인덱스 정의에 추가 구성 옵션을 적용 MongoDB Search 쿼리 의 성능과 정확성을 향상시키거나, 인덱스 에 소스 필드를 저장 옵션을 포함하여, 동의어 매핑을 정의할 수 있습니다.

쿼리 요구 사항에 따라 MongoDB Search 인덱스 정의하는 방법을 학습 MongoDB Search 인덱스 관리를 참조하세요. MongoDB Search 인덱스 정의한 후에는 MongoDB Search 인덱스 만들기 튜토리얼을 통해 Atlas cluster 에 인덱스 추가할 수 있습니다. MongoDB Search 인덱스 보고, 편집하거나, 업데이트, 삭제 방법을 학습 지원되는 클라이언트를 참조하세요.

이 페이지에서는 MongoDB Search 인덱스 에 대한JSON 구문 및 정의 옵션에 대해 설명합니다.

1{
2 "mappings": {
3 "dynamic": <boolean>,
4 "fields": { <field-definition> }
5 }
6}
7
1{
2 "analyzer": "<analyzer-for-index>",
3 "searchAnalyzer": "<analyzer-for-query>",
4 "mappings": {
5 "dynamic": <boolean>,
6 "fields": { <field-definition> }
7 },
8 "numPartitions": <integer>,
9 "analyzers": [ <custom-analyzer> ],
10 "storedSource": <boolean> | {
11 <stored-source-definition>
12 },
13 "synonyms": [
14 {
15 <synonym-mapping-definition>
16 }
17 ]
18}
19
필드
유형
필요성
설명

analyzer

문자열

옵션

인덱싱할 때 문자열 필드에 적용할 분석기를 지정합니다.

이를 맨 위에만 설정하다 하고 인덱스 정의에서 필드에 대한 분석기 지정하지 않으면 MongoDB Search는 이 분석기 모든 필드에 적용합니다. 각 필드 에 대해 다른 분석기 사용하려면 필드 에 대해 다른 분석기 지정해야 합니다.

지정하지 않으면 기본적으로 표준 분석기가 사용됩니다.

analyzers

옵션

이 인덱스에서 사용할 사용자 지정 분석기를 지정합니다.

mappings

필수 사항

이 인덱스에 대해 서로 다른 경로에서 필드를 인덱싱하는 방법을 지정합니다.

mappings.dynamic

부울

옵션

이 인덱스에 대한 필드의 동적 매핑을 사용하거나 사용하지 않도록 설정합니다.

true로 설정하면 MongoDB Search는 동적으로 인덱싱할 수 있는 모든 필드를 재귀적으로 인덱싱합니다.

false로 설정하면 mappings.fields를 사용하여 인덱싱할 개별 필드를 지정해야 합니다.

생략하는 경우 기본값은 false입니다.

중요한: MongoDB Search는 감지된 데이터 유형에 대한 기본값 설정을 사용하여 document 의 모든 필드를 동적으로 인덱싱합니다. 또한 dynamicfalse로 설정하여 명시적으로 재정의하지 않는 한, MongoDB Search는 document 아래에 있는 모든 중첩된 문서를 동적으로 인덱싱합니다.

인덱스 구성의 예시는 정적 매핑 예시 또는 결합된 매핑 예시를 참조하세요.

mappings.fields

문서

조건부

인덱싱할 필드를 지정합니다. 동적 매핑이 비활성화된 경우에만 필요합니다.

필드 이름 시작 부분에 달러($) 기호가 포함된 필드는 인덱싱할 수 없습니다.

자세한 내용은 필드 매핑 정의를 참조하세요.

searchAnalyzer

문자열

옵션

검색하기 전에 쿼리 텍스트에 적용할 분석기를 지정합니다.

지정하지 않으면 analyzer 옵션에 지정한 분석기가 기본값으로 사용됩니다. searchAnalyzeranalyzer 옵션을 모두 지정하지 않으면 기본값은 표준 분석기로 설정됩니다.

numPartitions

int

옵션

문서 수가 20억 개를 초과하는 경우 생성할 하위 인덱스의 수를 지정합니다. 유효한 값은 다음과 같습니다: 1, 2, 4. 이를 생략하는 경우 기본값은 1입니다.

인덱스 파티션을 사용하려면 클러스터 에 검색 노드가 배포되어 있어야 합니다.

storedSource

옵션

반환된StoredSource 옵션을 사용하여 쿼리 시간 조회를 위해 저장 문서의 필드를 지정합니다. MongoDB Search에서 모든 데이터 유형 의 필드를 저장 수 있습니다. 값은 다음 중 하나일 수 있습니다.

  • true, 모든 필드를 저장하려는 경우

  • false, 어떤 필드도 저장하지 않으려는 경우

  • 스토리지에서 include 또는 exclude으로 필드를 지정하는 객체입니다.

storedSource 은 다음 버전 중 하나를 실행하는 Atlas 클러스터에서만 사용할 수 있습니다.

  • MongoDB 7.0+

생략하는 경우 기본값은 false입니다.

자세한 학습 은 MongoDB 검색 인덱스에 저장된 소스 필드 정의를 참조하세요.

synonyms

옵션

인덱스에 사용할 동의어 매핑입니다.

인덱스 정의에는 동의어 매핑이 하나만 있을 수 있습니다.

자세한 학습은 MongoDB 검색 인덱스에서 동의어 매핑 정의를 참조하세요.

MongoDB Search mongot 프로세스 설치되어 있지 않거나 실행 아닌 상태에서 $search 쿼리를 실행 다음 오류가 반환됩니다.

MongoError: Remote error from mongot :: caused by :: Error connecting to localhost:28000.

mongot 프로세스 첫 번째 MongoDB Search 인덱스 정의된 경우에만 설치됩니다. Atlas cluster 에 MongoDB Search 인덱스 없는 경우, 이 오류를 해결하려면 하나 이상의 MongoDB Search 인덱스 생성하세요.

MongoDB Search 쿼리 요구 사항을 충족하도록 MongoDB Search 인덱스 정의하는 방법을 학습하려면 MongoDB Search 인덱스 관리를 참조하세요.

Atlas cluster 에 인덱스 추가하는 방법을 학습하려면 MongoDB Search 인덱스 만들기를 참조하세요.

사용 가능한 인덱스 구성 옵션에 대해 자세히 알아보려면 다음 참조 페이지를 확인하세요.

돌아가기

색인 관리

이 페이지의 내용