Docs Menu
Docs Home
/
Atlas
/

정확성 개선

검색 결과의 정확성을 높이기 위해 다음 기능에 대한 MongoDB Search 지원 사용할 수 있습니다.

MongoDB Search는 관련성에 따라 결과 설정하다 의 모든 문서 에 점수를 할당하고 결과를 가장 높은 점수부터 가장 낮은 점수 순으로 반환합니다. 자세한 학습 은 결과에서 문서 점수 매기기를 참조하세요.

MongoDB Search 쿼리 실행 때 결과에서 문서의 관련성을 조정하여 가장 관련 있는 문서의 순위가 매겨지고 결과에서 더 높은 순위로 반환되도록 할 수 있습니다.

자세한 내용은 결과에서 문서 점수를 사용자 지정하는 방법을 참조하세요.

하이브리드 검색은 전체 텍스트 검색과 시맨틱 검색을 결합하여, 하나의 쿼리로 동일한 기준에 대해 동의어나 맥락상 유사한 항목이 모두 포함된 통합 결과를 제공합니다.

다음 시나리오에서 하이브리드 검색을 사용하세요.

  • MongoDB Search(전체 텍스트 검색)를 사용하여 키워드 쿼리를 처리하다 하고 키워드가 문서 및 컬렉션 의 문서 전체에 나타나는 빈도를 측정하여 관련성에 따라 문서 순위를 지정합니다.

  • 의미론적으로 유사한 문서를 조회 하려면 MongoDB Vector Search(시맨틱 검색 )를 사용하세요.

  • 두 검색 방법의 점수를 결합하여 더 정확하고 관련성 있는 결과를 조회합니다.

자세한 내용은 하이브리드 검색 수행 방법을 참조하세요.

동의어 검색은 검색한 문서에 정확한 키워드가 없더라도 쿼리 결과에 관련된 결과가 포함되도록 보장합니다.

동의어 검색 수행할 때는 쿼리 시 인덱싱하고 적용 동의어 매핑 컬렉션 사용합니다.

자세한 학습은 MongoDB 검색 인덱스에서 동의어 매핑 정의를 참조하세요.

MongoDB explain은 쿼리가 실행되는 방식과 특정 문서가 다른 문서보다 먼저 반환되는 이유에 대한 정보를 제공합니다.

쿼리에 explain을 사용하는 이유는 다음과 같습니다.

  • MongoDB Search가 검색 쿼리에 대한 점수를 계산하는 방법과 결과에서 문서의 관련성에 기여하는 요인을 이해합니다.

  • 검색 성능과 순위를 기반으로 인덱스와 쿼리를 개선합니다.

자세히 학습하려면 쿼리 계획 및 실행 통계를 조회하는 방법을 참조하세요.

더 관련성이 높은 문서가 MongoDB Search 쿼리 결과에 반환되도록 MongoDB Search에서 관련성을 조정할 수 있습니다. MongoDB Search 결과의 관련성을 최적화하려면 다음 사항을 고려하세요.

검색에 대한 최적의 결과를 반환하기 위해 데이터를 구조화하고 형식화하려면 다음을 수행하세요.

  • 문서의 스키마 검토하여 인덱스 할 필드를 결정합니다. 다형성 데이터의 경우, MongoDB Search는 해당 필드 의 인덱스 정의에 지정된 매핑에 해당하는 문서만 인덱싱하고, 해당 필드 의 인덱스 정의에 지정된 데이터 유형 아닌 값이 포함된 문서는 무시합니다. 지원되는 필드 유형 및 필드 매핑에 대해 자세히 학습 필드 매핑 정의를 참조하세요.

  • 필요한 경우 데이터를 정규화하여 필터링 및 정렬에 사용되는 필드의 일관성을 보장합니다. 예를 들어, 날짜 및 시간 값을 ISO-8601과 같은 표준 형식으로 변환합니다.

  • 주요 필드에서 일반적인 용어의 빈도를 분석하여 적용 분석기 및 토큰화 전략을 결정합니다. 예시 를 들어, 일부 용어는 형태소 분석 또는 동의어 매핑과 같은 특별한 처리가 필요할 수 있습니다. MongoDB Search 분석기를 사용하여 데이터에 대한 토큰을 생성하는 방법에 대해 자세히 알아보려면 분석기를 사용하여 데이터 처리를 참조하세요.

  • 데이터 양을 분석하고 확장을 계획합니다. 대규모 데이터 세트는 전략적인 인덱싱 및 분할이 필요할 수 있습니다.

최적의 검색 결과를 반환하도록 MongoDB Search 인덱스 구성하려면 다음을 수행합니다.

  • 인덱스 하려는 각 필드 에 적합한 분석기 선택합니다. 분석기는 필터를 토크나이저와 결합하여 구두점, 대문자, 필러 단어 등의 차이를 보정하는 인덱스 가능한 용어를 생성합니다. 내장 분석기를 선택하거나 사용자 지정 분석기를 빌드 할 수 있습니다. 자세한 학습은 분석기를 사용하여 데이터 처리를 참조하세요.

  • 소스 동의어 컬렉션 생성하고 MongoDB Search 인덱스 에서 동의어 소스 컬렉션 참조하는 동의어 매핑을 정의합니다. 동의어를 사용하여 검색 범위를 확장하고 관련 용어를 결과에 반환할 수 있습니다. 자세한 학습은 MongoDB 검색 인덱스에서 동의어 매핑 정의를 참조하세요.

쿼리를 빌드하여 최적의 결과를 반환하려면 다음을 수행하세요.

  • 적절한 집계 파이프라인 단계를 선택합니다. 예를 들어, 메타데이터만 조회하려면 $searchMeta를 사용합니다. 자세한 내용은 파이프라인 단계를 참조하세요.

  • 관련 결과를 검색하는 데 최적의 연산자를 선택하세요. 예를 들어, must, should, mustnot과 같은 여러 절을 쿼리에 결합하려면 복합 연산자를 고려하세요. 자세한 내용은 연산자 및 수집기를 참조하세요.

  • 정렬, 점수 매기기, 그룹화 등을 위한 MongoDB Search 지원 사용하여 검색 결과에 더 많은 프로세스를 적용하세요.

이 튜토리얼을 완료하려면 다음 항목을 갖추고 있어야 합니다.

  • MongoDB 버전 6.0 이상을 사용하는 Atlas cluster 또는 MongoDB 버전 8.2 이상을 사용하는 MongoDB 자체 관리 클러스터 .

  • 클러스터 에 로드된 샘플 데이터입니다.

  • Project Data Access Admin 프로젝트 에 대한 더 높은 액세스 부여하여 MongoDB Search 인덱스를 생성합니다.

  • 클러스터에서 쿼리를 실행하기 위한 검색 테스터, mongosh, Compass, 또는 지원되는 MongoDB 드라이버.

참고

$search 집계 단계를 통해 운전자 사용하여 MongoDB Search 쿼리를 실행 수 있습니다. 이 튜토리얼에는 클라이언트 선택에 대한 예제가 포함되어 있습니다. 자세한 내용은 특정 튜토리얼 페이지를 참조하세요.

Atlas CLI 또는 온프레미스 배포서버 사용하여 생성한 로컬 배포를 사용하여 이 튜토리얼을 완료할 수도 있습니다. 자세히 학습 로컬 Atlas 배포서버 만들기 및 자체 관리형 배포를 참조하세요.

돌아가기

Search Playground

이 페이지의 내용