Docs Menu

분석기로 데이터 처리

분석기를 사용하여 Atlas Search가 string 필드의 콘텐츠를 검색 가능한 용어로 변환하는 방법을 제어할 수 있습니다. 분석기는 텍스트에서 토큰을 추출하는 토크나이저와 사용자가 정의한 필터를 결합하는 정책입니다. Atlas Search는 토큰에 필터를 적용하여 구두점, 대문자, 필러 단어 등의 차이를 보정하는 인덱스 가능한 용어를 생성합니다.

Atlas Search 에서 인덱스 를 작성하거나 데이터베이스 검색할 때 사용할 분석기를 인덱스 정의에 지정할 수 있습니다. 개별 필드를 인덱싱 할 때 사용할 대체(다중) 분석기 를 지정하거나 사용자 지정 분석기를 정의할 수도 있습니다.

다음 탭에는 인덱스 정의에서 구성할 수 있는 분석기 옵션의 구문이 나와 있습니다.

Atlas Search 인덱스 정의에서 analyzer 옵션을 사용하여 인덱스 구축할 때 문자열 필드에 적용 Atlas Search 용 인덱스 분석기 지정할 수 있습니다.

필드 의 mappings.fields 정의 내에서 필드 에 다른 분석기 지정하지 않는 한, Atlas Search 인덱스 정의의 모든 필드에 최상위 분석기 적용합니다.

analyzer 옵션을 생략하면 Atlas Search 기본적으로 표준 분석기를 사용합니다.

1{
2 "analyzer": "<analyzer-for-index>",
3 "mappings": {
4 "fields": {
5 "<string-field-name>": {
6 "type": "string",
7 "analyzer": "<analyzer-for-field>"
8 }
9 }
10 }
11}

Atlas Search 인덱스 정의에서 searchAnalyzer 옵션을 사용하여 쿼리 텍스트에 적용 Atlas Search 용 검색 분석기 지정할 수 있습니다.

searchAnalyzer 옵션을 생략하면 Atlas Search 기본적으로 analyzer 옵션에 지정한 분석기 사용합니다. 두 옵션을 모두 생략하면 Atlas Search 기본적으로 표준 분석기를 사용합니다.

1{
2 "searchAnalyzer": "<analyzer-for-query>",
3 "mappings": {
4 "dynamic": <boolean>,
5 "fields": { <field-definition> }
6 }
7}

Atlas Search Atlas Search 인덱스 에서 multi 옵션을 사용하여 인덱스 구축할 때 문자열 필드에 적용 대체 분석기 지정할 수 있습니다.

Atlas Search 쿼리에서 대체 분석기 사용하려면 쿼리 연산자의 쿼리 경로multi 필드에 대체 분석기의 이름을 지정해야 합니다.

자세한 내용은 다중 분석기를 참조하세요.

1{
2 "mappings": {
3 "fields": {
4 "<string-field-name>": {
5 "type": "string",
6 "analyzer": "<default-analyzer-for-field>",
7 "multi": {
8 "<alternate-analyzer-name>": {
9 "type": "string",
10 "analyzer": "<alternate-analyzer-for-field>"
11 }
12 }
13 }
14 }
15 }
16}

Atlas Search 인덱스 의 analyzers 옵션을 사용하여 문자 시퀀스를 변환, 필터하다 및 그룹 하나 이상의 사용자 지정 분석기를 정의할 수 있습니다.

정의한 사용자 지정 분석기 사용하려면 인덱스 정의의 analyzer, searchAnalyzer 또는 multi.analyzer 옵션에 name 값을 지정합니다.

자세히 학습 사용자 지정 분석기를 참조하세요.

1{
2 "mappings": {
3 "dynamic": <boolean>,
4 "fields": { <field-definition> }
5 },
6 "analyzers": [
7 {
8 "name": "<custom-analyzer-name>",
9 "tokenizer": {
10 "type": "<tokenizer-type>"
11 }
12 }
13 ]
14}

참조 항목: 보면서 배우기

이 동영상을 시청하여 Atlas Search 분석기를 사용하여 문서를 검색 가능한 단위로 나누고 역 인덱스 빌드 방법을 확인합니다.

소요 시간: 8분

Atlas Search는 다음과 같은 내장 분석기를 제공합니다.

분석기
설명

모든 Atlas Search 인덱스 및 쿼리에 기본 분석기를 사용합니다.

문자가 아닌 문자를 발견할 때마다 텍스트를 검색 가능한 용어로 나눕니다.

공백 문자를 발견할 때마다 텍스트를 검색 가능한 용어로 나눕니다.

텍스트 필드를 단일 용어로 인덱싱합니다.

언어별 텍스트 분석기 세트를 제공합니다.

인덱스 정의에 분석기 지정하지 않으면 MongoDB 기본값 표준 분석기 사용합니다.

정규화 도구는 분석이 끝날 때 하나의 토큰만 생성합니다. 정규화 도구는 Atlas Search 토큰 유형에 대한 필드 정의에서만 구성할 수 있습니다. Atlas Search는 다음과 같은 정규화 도구를 제공합니다.

정규화 도구
설명

lowercase

문자열 필드의 텍스트를 소문자로 변환하고 전체 문자열에 대한 단일 토큰을 생성합니다.

none

변환을 수행하지 않지만 여전히 단일 토큰을 생성합니다.

분석기에 대해 자세히 알아보려면 MongoDB 개발자 센터에서 분석기를 분석하여 앱에 적합한 검색 인덱스 구축하기를 참조하세요.