文档菜单

文档首页开发应用程序Python 驱动程序PyMongo

Atlas 搜索索引

本页内容

  • 概述
  • 创建搜索索引
  • 列出搜索索引
  • 更新搜索索引
  • 删除搜索索引

Atlas 搜索功能允许您在 MongoDB Atlas 上托管的集合中执行全文搜索。索引指定了搜索的行为和要索引的字段。

要了解更多关于 MongoDB Atlas 搜索的信息,请参阅Atlas 搜索索引 文档。

您可以在集合上调用以下方法来管理您的 Atlas 搜索索引

  • create_search_index()

  • create_search_indexes()

  • list_search_indexes()

  • update_search_index()

  • drop_search_index()

注意

Atlas 搜索索引管理方法异步运行。驱动程序方法可以在确认成功运行之前返回。要确定索引的当前状态,请调用 list_search_indexes() 方法。

以下部分提供了代码示例,展示了如何使用前面提到的方法。

您可以使用create_search_index()create_search_indexes()方法创建Atlas Search索引。

以下代码示例展示了如何创建单个索引

index = {
"definition": {
"mappings": {
"dynamic": True
}
},
"name": "<index name>",
}
collection.create_search_index(index)

以下代码示例展示了如何创建多个索引

index_one = {
"definition": {
"mappings": {
"dynamic": True
}
},
"name": "my_index",
}
index_two = {
"definition": {
"mappings": {
"dynamic": True
}
},
"name": "my_other_index",
}
indexes = [index_one, index_two]
collection.create_search_indexes(models=indexes)

您可以使用 list_search_indexes() 方法来获取集合的 Atlas Search 索引。

以下代码示例展示了如何打印集合的搜索索引列表

results = list(collection.list_search_indexes())
for index in results:
print(index)

您可以使用 update_search_index() 方法来更新 Atlas Search 索引。

以下代码展示了如何更新搜索索引

new_index = {
"definition": {
"mappings": {
"dynamic": True
}
},
"name": "my_new_index",
}
collection.update_search_index("my_index", new_index)

您可以使用 drop_search_index() 方法来移除 Atlas Search 索引。

以下代码展示了如何从一个集合中删除搜索索引

collection.drop_index("my_index")
← 多键索引