문서 메뉴
문서 홈
/
MongoDB 아틀라스
/ / / /

멀티 분석기

이 페이지의 내용

  • 제한 사항
  • 예제

인덱스 정의에서 multi 객체를 사용하여 필드도 인덱싱할 대체 분석기를 지정할 수 있습니다. 기본 분석기 외에 대체 분석기를 사용하여 필드를 인덱싱하는 경우 기본 분석기 또는 대체 분석기를 사용하여 컬렉션을 검색할 수 있습니다. 이 페이지에서는 multi 를 사용하여 인덱스 정의 에서 대체 분석기를 지정하는 방법을 보여 줍니다. 대체 분석기를 사용한 검색에 대해 자세히 알아보려면 쿼리 경로 구성을 참조하세요.

multi경로 옵션은 문자열 유형의 필드에만 사용할 수 있습니다.

Atlas Search는 multi 객체의 여러 레이어를 중첩하는 것을 지원하지 않습니다.

다음 예제 인덱스 정의는 standard 분석기를 사용하여 sample_mflix.movies 컬렉션의 title 필드에 대한 인덱스를 지정합니다. 또한 인덱스 정의는 키워드 분석기keywordAnalyzer 이라는 이름의 title 필드에 대한 대체 분석기로 지정합니다. 키워드 분석기 는 전체 필드를 단일 용어로 인덱싱하므로 검색어와 지정된 필드가 정확히 일치하는 경우에만 결과를 반환합니다.

cluster에 collection을 로드한 경우, Atlas UI의 비주얼 편집기 또는 JSON 편집기를 사용하여 예제 인덱스를 만들 수 있습니다. 원하는 구성 방법을 선택한 후 데이터베이스와 collection을 선택합니다.

다음 쿼리는 keywordAnalyzer라는 대체 분석기를 사용하여 Atlas Search에서 string The Count of Monte Cristo에서 정확히 일치하는 항목을 찾습니다.

1db.movies.aggregate([
2 {
3 "$search": {
4 "text": {
5 "query": "The Count of Monte Cristo",
6 "path": { "value": "title", "multi": "keywordAnalyzer" }
7 }
8 }
9 },
10 {
11 "$project": {
12 "title": 1,
13 "year": 1,
14 "_id": 0
15 }
16 }
17])
{ "title" : "The Count of Monte Cristo", "year" : 1934 }
{ "title" : "The Count of Monte Cristo", "year" : 1954 }
{ "title" : "The Count of Monte Cristo", "year" : 1998 }

반면 standard 분석기를 사용하는 동일한 쿼리에서는 제목에 the 또는 Count 또는 of 또는 Monte 또는 Cristo 단어가 포함된 영화를 모두 찾을 수 있습니다.

Atlas Search는 분석기를 사용하여 결과의 문서에 대해 다음과 같은 토큰(검색 가능한 용어)을 생성합니다.

제목
표준 분석기 토큰
키워드 분석기 토큰
The Count of Monte Cristo
the , count , of , monte , cristo
The Count of Monte Cristo
← Language
관습 →

이 페이지의 내용