Docs Menu
Docs Home
/
MongoDB Atlas
/ / /

Atlas Search 인덱스 구문 검토

이 페이지의 내용

  • 구문
  • 옵션

Atlas Search는 다양한 방식으로 데이터를 인덱싱할 수 있습니다. Atlas Search 인덱스를 정의할 때 특정 분석기 또는 여러 분석기를 지정하여 특정 필드를 인덱싱할 수 있습니다. 자세한 내용은 분석기를 사용한 데이터 처리를 참조하세요. 특정 필드를 인덱싱하고 다른 필드는 생략하거나 컬렉션의 모든 필드를 동적으로 인덱싱할 수도 있습니다. 자세한 내용은 필드 매핑 정의를 참조하세요. Atlas UI, Atlas Search API, Atlas CLI, mongosh 또는 드라이버를 통해 Atlas Search 인덱스를 정의할 수 있습니다.

이 페이지에서는 Atlas Search 인덱스의 JSON 구문 및 필드에 대해 설명합니다.

중요

$out 집계 단계를 사용하여 Atlas Search 인덱스가 있는 컬렉션을 수정하는 경우 검색 인덱스를 삭제하고 다시 생성해야 합니다. 가능하면 $out 대신 $merge를 사용하는 것이 좋습니다.

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": 4,
9 "analyzers": [ <custom-analyzer> ],
10 "storedSource": <boolean> | {
11 <stored-source-definition>
12 },
13 "synonyms": [
14 {
15 "name": "<synonym-mapping-name>",
16 "source": {
17 "collection": "<source-collection-name>"
18 },
19 "analyzer": "<synonym-mapping-analyzer>"
20 }
21 ]
22}
23
필드
유형
필요성
설명

analyzer

문자열

옵션

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

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

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

analyzers

옵션

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

mappings

필수 사항

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

mappings.dynamic

부울

옵션

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

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

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

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

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

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

mappings.fields

문서

조건부

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

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

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

searchAnalyzer

문자열

옵션

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

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

numPartitions

int

옵션

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

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

중요

옵션은 numPartitions 미리보기 기능 으로 사용할 수 있습니다.

storedSource

옵션

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

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

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

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

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

  • MongoDB 5.0.6+

  • MongoDB 6.0+

  • MongoDB 7.0+

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

자세히 알아보려면 Atlas Search 인덱스에 저장된 소스 필드 정의를 참조하세요.

synonyms

옵션

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

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

자세한 내용은 Atlas Search 인덱스에서 동의어 매핑 정의를 참조하세요.

돌아가기

4: 동의어 매핑 구성

이 페이지의 내용