Docs Menu
Docs Home
/ / /
Scala
/

Atlas search 인덱스

이 페이지의 내용

  • 개요
  • 검색 인덱스 만들기
  • 검색 인덱스 나열
  • 검색 인덱스 업데이트
  • 검색 인덱스 삭제
  • 추가 정보

Atlas Search 기능을 사용하면 MongoDB Atlas에서 호스팅되는 컬렉션에서 전체 텍스트 검색을 수행할 수 있습니다. Atlas Search 인덱스는 검색 동작과 인덱싱할 필드를 지정합니다.

컬렉션에서 다음과 같은 메서드를 호출하여 Atlas Search 인덱스를 관리할 수 있습니다.

  • createSearchIndex()

  • createSearchIndexes()

  • listSearchIndexes()

  • updateSearchIndex()

  • dropSearchIndex()

참고

Atlas Search 인덱스 관리 방법은 비동기적으로 실행되며 성공적으로 실행되었는지 확인하기 전에 반환될 수 있습니다. 인덱스의 현재 상태를 확인하려면 listSearchIndexes() 메서드를 호출합니다.

다음 섹션에서는 코드 예시를 제공하여 이전의 각 메서드를 사용하는 방법을 보여줍니다.

createSearchIndex()createSearchIndexes() 메서드를 사용하여 하나 이상의 Atlas Search 인덱스를 만들 수 있습니다.

이러한 방법을 사용하여 Atlas Vector Search 인덱스를 만들 수도 있습니다. Atlas Vector Search를 사용하면 MongoDB Atlas에 저장된 벡터 임베딩에 대해 시맨틱 검색을 수행할 수 있습니다. 이 기능에 대해 자세히 알아보려면 Atlas Vector Search 개요를 참조하세요.

다음 코드 예시에서는 Atlas Search 인덱스를 생성하는 방법을 보여줍니다.

val index = Document("mappings" -> Document("dynamic" -> true))
collection.createSearchIndex("<index name>", index)
.subscribe((result: String) => ())

다음 코드 예시 여러 인덱스를 만드는 방법을 보여 줍니다. 생성된 인덱스 에 기본값 이름을 할당하는 createSearchIndex() 메서드와 달리 createSearchIndexes() 메서드를 사용할 때는 각 인덱스 에 대한 인덱스 이름을 제공해야 합니다.

val indexOne = SearchIndexModel("<first index name>", Document("mappings" -> Document("dynamic" -> true, "fields" -> Document("field1" -> Document("type" -> "string")))))
val indexTwo = SearchIndexModel("<second index name>", Document("mappings" -> Document("dynamic" -> false, "fields" -> Document("field2" -> Document("type" -> "string")))))
collection.createSearchIndexes(List(indexOne, indexTwo))
.subscribe((result: String) => ())

Atlas Search 인덱스를 정의하는 데 사용되는 구문에 대해 자세히 알아보려면 Atlas 매뉴얼의 Atlas Search 인덱스 구문 검토 가이드를 참조하세요.

listSearchIndexes() 메서드를 사용하여 컬렉션 의 모든 Atlas Search 인덱스를 반환할 수 있습니다.

다음 코드 예시 listSearchIndexes() 메서드에서 반환된 Observable 을(를) 구독 하여 컬렉션 의 검색 인덱스 목록을 인쇄하는 방법을 보여 줍니다.

collection.listSearchIndexes()
.subscribe((result: Document) => println(result.toJson()))
{"id": "...", "name": "<index name 1>", "type": "search", "status": "READY", "queryable": true, ... }
{"id": "...", "name": "<index name 2>", "type": "search", "status": "READY", "queryable": true, ... }

updateSearchIndex() 메서드를 사용하여 Atlas Search 인덱스 업데이트 수 있습니다.

다음 코드에서는 검색 업인덱스를데이트하는 방법을 보여줍니다.

val updateIndex = Document("mappings" -> Document("dynamic" -> false))
collection.updateSearchIndex("<index to update>", updateIndex)
.subscribe((result: Unit) => ())

dropSearchIndex() 메서드를 사용하여 Atlas Search 인덱스 삭제 수 있습니다.

다음 코드에서는 컬렉션에서 검색 인덱스를 삭제하는 방법을 보여줍니다.

collection.dropSearchIndex("<index name>")
.subscribe((result: Unit) => ())

MongoDB Atlas Search에 대해 자세히 학습 Atlas Search 설명서를 참조하세요.

이 가이드에서 사용되는 메서드 또는 유형에 대해 자세히 알아보려면 다음 API 문서를 참조하세요.

돌아가기

멀티키