전문 검색 - 전체 텍스트 검색 인덱싱 팁
전체 텍스트 검색(FTS) 색인 옵션에 대한 이해는 다음을 구축하는 데 필수적입니다. 오른쪽 색인 를 사용하세요. The 오른쪽 색인 는 다양한 유형의 고객 검색 요청을 처리할 수 있을 만큼 간결하고 풍부한 반전 인덱스를 의미합니다.
일부 인덱싱 모범 사례 FTS 인덱스를 만들 때 염두에 두어야 할 사항은 다음과 같습니다.
-
피하기 기본값 프로덕션에서 유형 매핑
사용자가 Couchbase 웹 콘솔에서 FTS 인덱스를 생성할 때 인덱스에 대해 선택되는 사전 정의된 유형 매핑 옵션은 다음과 같습니다. 기본값. 이것은 특별한 유형의 매핑 적용입니다.유형이 있는 각 문서에 중 하나 가 사용자 지정 유형 매핑과 일치하지 않습니다. 또는 에는 인식된 유형 속성이 없습니다.
따라서 기본 매핑을 활성화된 상태로 두면 모든 필드가 있는 모든 문서가 색인에 포함됩니다. 이는 사용자가 적극적으로 유형 매핑을 지정했는지 여부와 관계없이 발생합니다.
그리고 기본값 동적 매핑은 더 큰 인덱스를 생성하므로 프로덕션 배포에는 적합하지 않을 수 있습니다.
아래 그림과 같이 기본 유형 매핑을 비활성화하여 사용자가 지정한 유형 매핑만 인덱스에 포함되도록 합니다.

-
오른쪽 지정 유형 매핑
문서를 검색 가능하게 만들 필요가 있는 필드를 식별하고 색인할 필드를 언급하는 사용자 정의 유형 매핑을 정의하세요. 관심 있는 유형 매핑의 단일/세트를 지정하여 문서 유형의 하위 집합만 식별하고 색인할 수 있습니다.

자세히 읽어보세요: https://docs.couchbase.com/server/6.0/fts/fts-creating-indexes.html#specifying-type-identifiers
-
최적의 필드 선택 인덱싱 옵션
인덱싱할 필드를 지정할 때 고려해야 할 몇 가지 중요한 인덱싱 옵션이 있습니다.

- 색인: 선택하면 필드가 색인되고 선택하지 않으면 필드가 색인되지 않습니다. 따라서 이미 정의된 필드를 색인에서 명시적으로 제거할 때 이 옵션을 사용할 수 있습니다.
- store: 선택하면 검색에서 반환된 값 집합에 필드 콘텐츠가 포함되며, 선택하지 않으면 필드 콘텐츠가 포함되지 않습니다. 필드 콘텐츠를 포함하면 특별히 다음과 같은 것들이 허용됩니다. 강조 표시 를 사용하여 일치하는 표현식을 쉽게 확인할 수 있습니다. 하지만 색인 크기가 커지고 처리 시간이 길어집니다. 따라서 검색 결과에서 강조 표시와 같은 기능에 관심이 없다면 이 옵션을 비활성화하세요.
- 에 포함모든 필드: 선택하면 필드가 고급 패널에서 기본적으로 지정되는 필드인 _all의 정의에 포함됩니다. 선택 취소하면 필드가 포함되지 않습니다. 포함됨은 _query 문자열이 를 사용하여 검색을 지정하면 접두사가 필요한 필드 이름 없이 현재 필드에 있는 텍스트를 검색할 수 있습니다(따라서 설명:현대 를 지정하여 간단히 수행할 수 있습니다. 현대). 이 옵션을 활성화하면 인덱스가 커지므로 다음을 사용하려면 이 옵션을 비활성화하세요. 필드 범위 검색 요청.
- 용어 벡터 포함: 선택하면 용어 벡터가 포함됩니다. 선택하지 않으면 용어 벡터가 포함되지 않습니다. 용어 벡터는 특정 필드에서 용어의 위치입니다. 특정 종류의 기능(예: 강조 표시, 구문 검색)에는 용어 벡터가 필요합니다. 용어 벡터를 포함하면 인덱스가 커지고 그에 따라 인덱스 작성 시간이 느려집니다. 따라서 구문 검색이나 검색 결과의 하이라이트에 관심이 없는 경우 이 옵션을 비활성화하세요.
-
숫자 필드 사용 시 주의.
종종 문서에는 모든 종류의 ID 필드가 있으며 사용자는 이를 다음과 같이 색인하는 경향이 있습니다. 숫자 유형. 그러나 인덱싱은 숫자 는 범위 검색과 같이 실제 숫자 사용 사례가 있는 경우에만 사용하는 것이 좋습니다,
예: "가격이 1000 미만인 '아이폰'에 관한 모든 제품 문서 검색".
많은 사용 사례는 일반적으로 이러한 ID 필드에서 범위 검색을 수행하지 않고 ID 필드에서 정확한 키워드 동일성 검색만 수행하므로 다음을 사용하는 것이 좋습니다. 텍스트 유형 및 키워드* 분석기 대신 숫자 이러한 종류의 ID 필드 상황에 적합합니다.
현재 FTS는 내부적으로 공간 최적화가 덜 된 형식으로 숫자를 저장하며, 위의 접근 방식을 사용하면 인덱스 크기를 더 줄일 수 있습니다. 그리고 인덱스가 작을수록 RAM 점유율이 높아져야 합니다.
더 많은 구성 기능을 추가하고 있습니다. 인덱스 생성 프로세스를 통해 스토리지 수준에서 추가 미세 조정이 가능합니다.
파트 2...
키워드* 분석기 - 전체 입력을 나타내는 단일 토큰을 생성하고, 텍스트 줄기 또는 큐레이션 다운스트림을 건너뜁니다.
> 숫자 필드 사용 시 주의 사항
숫자 필드에 텍스트 유형 및 키워드 분석기를 사용할 수 있나요, 아니면 필드를 문자열로 변환해야 하나요?
이 문제를 해결하려면 현재로서는 필드를 문자열 유형으로 변환해야 합니다. 하지만 다른 네이티브 솔루션도 검토 중입니다.