Overview
Atlas Searchを使用すると、MongoDB Atlas でホストされているコレクションに対して全文検索を実行できます。 Atlas Search インデックスは、検索の動作とインデックスを作成するフィールドを指定します。
コレクションに対して次のメソッドを呼び出して、Atlas Search インデックスを管理できます。
createSearchIndex()createSearchIndexes()listSearchIndexes()updateSearchIndex()dropSearchIndex()
注意
Atlas Searchインデックスマネジメントのメソッドは非同期で実行されるため、正常に実行されたことを確認する前に戻る可能性があります。インデックスの現在のステータスを確認するには、listSearchIndexes() メソッドを呼び出します。
次のセクションでは、前述の各メソッドの使用方法を示すコード例を示します。
検索インデックスを作成
createSearchIndex() と createSearchIndexes() メソッドを使用して、1 つ以上の Atlas Search インデックスを作成できます。
次のコード例は、単一インデックスを作成する方法を示しています。
val index = Document("mappings", Document("dynamic", true)) collection.createSearchIndex("<index name>", index)
次のコード例は、複数のインデックスを作成する方法を示しています。
val indexOne = SearchIndexModel("<first index name>", Document("mappings", Document("dynamic", true))) val indexTwo = SearchIndexModel("<second index name>", Document("mappings", Document("dynamic", true))) collection.createSearchIndexes(listOf(indexOne, indexTwo))
Atlas Search インデックスの定義に使用される構文の詳細については、Atlas マニュアルの「 Atlas Search インデックス構文規則の確認 」マニュアルを参照してください。
検索インデックスをリストする
listSearchIndexes() メソッドを使用して、コレクション内のすべての Atlas Search インデックスを返すことができます。
次のコード例は、コレクション内の検索インデックスのリストを出力する方法を示しています。
val results = collection.listSearchIndexes() results.forEach { result -> println(result) }
検索インデックスをアップデートする
updateSearchIndex() メソッドを使用して、Atlas Searchインデックスを更新できます。
次のコードは、検索インデックスを更新する方法を示しています。
val newIndex = Document("mappings", Document("dynamic", true)) collection.updateSearchIndex("<index to update>", newIndex)
検索インデックスを削除する
dropSearchIndex() メソッドを使用して、Atlas Searchインデックスを削除することができます。
次のコードは、コレクションから検索インデックスを削除する方法を示しています。
collection.dropIndex("<index to delete>")
詳細情報
MongoDB Atlas Search の詳細については、「 Atlas Search インデックス」のドキュメントを参照してください。