AI 에이전트의 경우: 문서 인덱스는 https://www.mongodb.com/ko-kr/docs/llms.txt에서 사용할 수 있으며, 모든 페이지의 마크다운 버전은 어떤 URL 경로에 .md를 추가하여 사용할 수 있습니다.
Docs Menu

MongoDB Search Architecture

MongoDB Search는 MongoDB 데이터베이스 배포(mongod)와 함께 mongot 프로세스를 배포하여 Kubernetes 환경에서 전문 검색 기능을 제공합니다. mongot 프로세스는 검색 인덱스를 관리하고 데이터베이스에서 데이터를 가져와 $search$searchMeta 쿼리를 처리합니다. 이로써 고급 검색 기능을 제공하면서 별도 검색 시스템을 유지관리할 필요가 없어집니다.

MongoDB Search를 배포하려면 Kubernetes 연산자가 실행하고 사용하여 mongot 팝을 배포하고 spec에 지정된 영구 저장을 요청하는 MongoDBSearch 사용자 지정 리소스(CR)를 적용합니다.

배포 절차에 대한 자세한 내용은 MongoDB Search 및 벡터 검색 배포를 참조하세요.

mongot 프로세스 에는 데이터베이스 또는 다른 검색 노드와 공유되지 않는 자체 영구 볼륨이 있습니다. 저장소는 데이터베이스 에서 지속적으로 제공되는 데이터로 구축된 인덱스를 유지 관리하는 데 사용됩니다. 인덱스 정의(메타데이터)는 데이터베이스 자체에 저장됩니다.

mongot 는 다음 조치를 수행합니다.

  • 인덱스 관리합니다.

    mongot 는 데이터베이스 의 인덱스 정의를 업데이트하는 역할을 합니다.

  • 데이터베이스 에서 데이터를 가져옵니다.

    mongot 노드는 데이터베이스 에서 실시간 인덱스를 업데이트 위해 데이터베이스 에 대한 영구 연결을 설정합니다.

  • 검색 쿼리를 처리합니다.

    When mongod receives a $search or $searchMeta 쿼리, it directs the 쿼리 to one of the mongot 노드. 쿼리를 수신하는 mongot 는 쿼리를 처리하고 데이터를 집계한 다음 결과를 mongod에 반환하고, 은 결과를 사용자에게 전달합니다.

mongot 구성 요소는 단일 MongoDB 복제본 세트와 긴밀하게 결합되어 있으며 여러 데이터베이스 또는 복제본 세트에서 공유할 수 없습니다. 각 복제본 세트 배포서버에는 고유한 검색 노드가 있습니다. 검색 노드 아키텍처에 대해 자세히 알아보려면 MongoDB Search 문서에서 노드 아키텍처 를 참조하십시오.

mongotmongod 간의 네트워크 연결은 양방향으로 진행됩니다.

  • mongot 인덱스를 빌드하고 쿼리를 실행하는 데 사용되는 데이터를 소싱하기 위해 복제본 세트에 대한 연결을 설정합니다.

  • mongod mongot 에 연결하여 인덱스 관리 및 데이터 쿼리와 같은 검색 관련 작업을 전달합니다.

mongod 은 모든 검색 쿼리의 프록시 역할을 합니다. mongot과 직접 상호 작용하지 않습니다.

mongotmongod 프로세스가 모두 Kubernetes 클러스터 내에 배포되면 Kubernetes 연산자는 두 프로세스에 대한 구성을 자동으로 수행합니다. 구체적으로 Kubernetes 연산자는 다음을 수행합니다.

  1. spec.source.mongodbResourceRef를 사용하여 MongoDBSearch에서 참조하는 MongoDB CR을 찾거나 MongoDBSearch와 이름이 같은 MongoDB CR을 찾아 명명 규칙에 따라 찾습니다.

  2. YAML 파일 에 mongot 구성을 생성하고 <MongoDBSearch.metadata.name>-search-config이라는 구성 맵에 저장합니다.

  3. CRspec.persistencespec.resourceRequirements 에 따라 구성된 저장 및 리소스 요구 사항을 사용하여 이름이 <MongoDBSearch.metadata.name>-search 인 MongoDB Search 스테이트풀 세트를 배포합니다.

  4. mongot 호스트의 호스트 이름 및 포트 번호를 포함하여 필요한 setParameter 옵션을 추가하여 모든 mongod 프로세스의 구성을 업데이트합니다.

MongoDB 복제본 세트가 Kubernetes 외부에 있는 경우 Kubernetes Operator를 사용하여 mongot 를 배포하고 일부 단계를 수동으로 수행합니다. Kubernetes Operator는 검색 팝의 구성을 처리하지만 MongoDB 노드와 네트워킹은 다시 구성해야 합니다.

MongoDB 서버가 Kubernetes 클러스터 내부에 있는 경우 Kubernetes 연산자가 MongoDB Search에 대한 키파일 인증을 자동으로 설정합니다. MongoDB 서버가 외부에 있는 경우 복제본 세트의 키 파일 자격 증명이 포함된 Kubernetes 시크릿을 만들고 MongoDBSearch CR에서 참조해야 합니다.

다음 아키텍처에서는 MongoDB Search를 배포할 수 없습니다.

  • IBM Power (ppc64le)

  • IBM Z (s390x)