문서 메뉴

문서 홈MongoDB 실행 및 관리MongoDB Atlas

표준 분석기

standard 분석기는 모든 Atlas Search 인덱스 및 쿼리에 대한 기본값입니다. 텍스트를 단어 경계에 따라 용어로 나누므로 대부분의 사용 사례에서 언어 중립적입니다. 모든 용어를 소문자로 변환하고 문장 부호를 제거합니다. 이메일 주소, 약어, 중국어-일본어-한국어 문자, 영숫자 등을 인식하는 문법 기반 토큰화를 제공합니다.

중요

Atlas Search는 크기가 32766바이트를 초과하는 문자열 필드를 인덱싱하지 않습니다.

다음 예제 인덱스 정의는 standard 분석기를 사용하여 sample_mflix.movies 컬렉션의 title 필드에 대한 인덱스를 지정합니다. 클러스터에 컬렉션을 로드한 경우, Atlas UI 비주얼 편집기 또는 JSON 편집기를 사용하여 예제 인덱스를 만들 수 있습니다. 원하는 구성 방법을 선택한 후 데이터베이스와 컬렉션을 선택하세요.

다음 쿼리는 title 필드에서 action 용어를 검색하고 출력을 두 개의 결과로 제한합니다.

db.movies.aggregate([
{
"$search": {
"text": {
"query": "action",
"path": "title"
}
}
},
{
"$limit": 2
},
{
"$project": {
"_id": 0,
"title": 1
}
}
])
[
{
title: 'Action Jackson'
},
{
title: 'Class Action'
}
]

Atlas Search가 action 쿼리 용어를 문서에 대한 토큰 action과 일치시켰기 때문에 이러한 문서를 반환했으며, 이 문서는 lucene.standard 분석기를 사용하여 title 필드의 텍스트에 대해 다음을 수행하여 만든 것입니다.

  • 텍스트를 소문자로 변환합니다.

  • 단어 경계를 기준으로 텍스트를 분할하고 별도의 토큰을 만듭니다.

다음 표는 Atlas Search가 표준 분석기 를 사용하여 생성하는 토큰(검색 가능한 용어)과 반대로 결과의 문서에 대해 키워드 분석기공백 분석기 에 대해 생성하는 토큰을 보여줍니다.

제목
표준 분석기 토큰
키워드 분석기 토큰
공백 분석기 토큰
Action Jackson
action, jackson
Action Jackson
Action, Jackson
Class Action
class, action
Class Action
Class, Action

인덱싱할 때

  • 키워드 분석기를 사용하는 경우 keyword 분석기는 검색어가 필드의 전체 콘텐츠(Action JacksonClass Action)와 정확히 일치하는 문서만 일치시키기 때문에 Atlas Search는 쿼리 용어 action에 대한 결과 내의 문서와 일치시키지 않습니다.

  • 공백 분석기를 사용하는 경우 whitespace 분석기가 title 필드 값을 원래 대문자(Action)로 토큰화하고 쿼리 용어에는 whitespace 분석기 토큰과 일치하지 않는 소문자 action이 있기 때문에 Atlas Search는 action 쿼리 용어에 대한 결과 내의 문서와 일치시키지 않습니다.

← 분석기로 데이터 처리