索引和搜索
索引和搜索
MongoDB Atlas 带有一个全文搜索引擎,可用于搜索集合中的文档。
Atlas Search 由 Apache Lucene 提供支持。
创建索引
我们将使用 Atlas 仪表板在“sample_mflix”数据库中创建索引,该数据库来自我们在聚合入门部分加载的示例数据。
- 在 Atlas 仪表板上,单击您的**集群名称**,然后单击**搜索**选项卡。
- 单击**创建搜索索引**按钮。
- 使用**可视化编辑器**,然后单击下一步。
- 命名您的索引,选择要索引的数据库和集合,然后单击下一步。
- 如果将索引命名为“default”,则无需在
$search
管道阶段指定索引名称。 - 选择
sample_mflix
数据库和movies
集合。
- 如果将索引命名为“default”,则无需在
- 单击**创建搜索索引**,等待索引完成。
运行查询
要使用我们的搜索索引,我们将在聚合管道中使用$search
操作符。
示例
db.movies.aggregate([
{
$search: {
index: "default", // optional unless you named your index something other than "default"
text: {
query: "star wars",
path: "title"
},
},
},
{
$project: {
title: 1,
year: 1,
}
}
])
亲自尝试 »
此聚合管道的第一个阶段将返回movies
集合中所有在title
字段中包含单词“star”或“wars”的文档。
第二个阶段将从每个文档中投影title
和year
字段。