Atlas Search 教程
您可以通过我们的交互式实验、用例教程或视频,了解如何设置和查询 Atlas Search 索引。
通过互动实验学习
先决条件
要完成交互式实验,您必须在 Atlas 帐户中创建以下内容:
一个名为
MDB_EDU
的项目。名为
myAtlasClusterEDU
的集群。一个名为
myAtlasDBUser
的数据库用户,密码为myatlas-001
,权限为readWriteAnyDatabase
。
关于实验
以下实验将将指导您如何利用动态映射来创建 Atlas Search 索引。然后,您可以使用文本操作符运行查询,并显示匹配文档的相关性及其分数。
单击浏览器内 Integrated Development Environment(集成开发环境)中的 Launch(启动)按钮可启动实验。
完成教程后,请参阅操作符了解可以运行的查询类型。
通过教程学习
先决条件
要完成本教程,必须具备以下条件:
运行 MongoDB 4.2 或更高版本的 Atlas 集群。
示例数据已加载到您的 Atlas 集群中。
用于在 Atlas 集群上运行查询的以下应用程序之一:
注意
还可以通过使用 Atlas CLI 创建的本地 Atlas 部署来完成这些教程。要了解详情,请参阅创建本地 Atlas 部署。
关于教程
如何使用 Atlas Search 和 Atlas App Services 构建应用程序包含教程,描述如何使用Atlas App Services和 Atlas Search 构建搜索用户界面并为应用程序添加反向搜索。
如何使用 Atlas Search 检查空值和非空值教程介绍了如何添加包含
null
值的文档以及如何在sample_mflix.users
集合上创建动态索引。查询将搜索sample_mflix.users
集合中的null
和非null
字段。如何对查询结果进行分页 描述了如何在 阶段之后使用
$skip
$limit
$search
和SEARCH_META
对查询结果进行分页,以及如何使用 聚合变量 来返回找到的文档总数。如何定义自定义分析器并运行 Atlas Search 不区分变音符号的查询教程介绍了如何创建使用自定义分析器的索引并对
sample_mflix.movies
集合执行不区分变音符号的搜索。该查询在sample_mflix.movies
集合中搜索包含给定词元的电影标题,而无论该词元是否包含变音符号。如何运行 Atlas Search 复合地理 JSON 查询教程介绍了如何在
sample_airbnb.listingsAndReviews
集合上创建索引并运行查询,该查询返回使用coordinates
定义的指定多边形中每个属性的name
、address
和property_type
的文档。Atlas Search 结果反映了对condominium
类型属性的偏好,结果中的每个文档都被分配了相关性score
,按从高到低的顺序返回。如何使用加权字段运行 Atlas Search 复合查询教程介绍了如何创建动态索引和使用自定义评分运行复合查询。查询将搜索
sample_mflix.movies
集合,并使用constant
、boost
和function
选项改变结果中文档的相关性分数。如何运行多语言 Atlas Search 查询教程介绍了如何创建使用语言分析器的索引并对
sample_mflix.movies
集合执行多语言搜索。这些查询在sample_mflix.movies
集合中搜索包含多语言术语的完整电影情节。如何运行部分匹配 Atlas Search 查询教程介绍了如何在
sample_mflix.movies
集合上创建索引,以及如何使用 autocomplete、phrase、regex 和 wildcard 操作符对带有索引的字段运行区分大小写的部分匹配查询。如何跨集合运行 Atlas 搜索查询包含介绍如何跨多个集合运行查询的教程,方法是首先使用
$lookup
和$unionWith
组合集合,然后对这些集合运行$search
查询。如何对数组中的对象运行 Atlas Search 查询教程演示了如何对对象数组内的字符串类型字段进行索引,并对索引字段运行 Atlas Search 查询。
如何使用日期范围筛选器运行 Atlas Search 查询教程介绍了如何创建动态索引并运行使用
range
操作符的复合查询。这些查询在sample_mflix.movies
集合中搜索指定日期范围内的电影。如何对日期和数值字段运行 Atlas Search 字符串查询教程介绍了如何使用仅支持字符串查询的操作符对数值和日期字段运行查询。这些查询搜索在特定日期列出的属性,并允许它们最长保留特定天数。
如何对 Atlas Search 结果进行排序教程介绍了如何在
sample_mflix.movies
中对日期、数字和字符串进行索引以进行排序,以及如何使用$search
sort
选项按索引字段的升序和降序对结果进行排序。如何将自动完成功能与 Atlas Search 结合使用教程介绍了如何使用
autocomplete
操作符创建和查询配置有autocomplete
字段的 Atlas Search 索引。我们将在sample_mflix.movies
集合上创建 Atlas Search 索引,并索引title
字段文本值以实现自动完成。我们将使用autocomplete
操作符运行 Atlas Search 查询,以在索引字段中搜索一系列字符。如何在 Atlas Search 中使用分面教程介绍了如何使用
sample_mflix.movies
集合的分面定义创建索引,并针对分面字段运行查询,以获取按指定分面字段中的值和范围分组的结果,包括这些组中每一个组的计数。如何在 Atlas Search 中使用同义词教程介绍了如何添加将单词配置为同义词的集合、创建在
sample_mflix.movies
集合上定义同义词映射的索引,以及使用配置为同义词的单词对title
字段运行 Atlas Search 查询。使用 Atlas Search 更新 $text 查询以提高搜索性能教程介绍了如何将查询中的
$text
聚合管道阶段替换为$search
,以提高这些查询的灵活性和性能。使用 Atlas Search 进行全文正则表达式查询教程介绍了如何使用
$search
替换低效的正则表达式匹配,以提高文本查询的性能。如何执行混合搜索教程介绍了如何对
sample_mflix.embedded_movies
集合执行语义搜索,并使用称为倒数排名融合的流行混合搜索技术将结果与 Atlas Search 全文搜索结果合并。
提示
想了解更多 Atlas Search 内容?
学习 MongoDB University MongoDB 简介课程的9单元,了解 Atlas Search 的概述以及有关创建 Atlas Search 索引、使用复合运算符运行
$search
查询以及使用分面对结果进行分组的课程。访问MongoDB 开发者中心,了解更多 Atlas Search 实际示例。
试用《MongoDB 实用 聚合》一书中Atlas Search 的全文 示例。
通过视频学习
观看此视频,了解如何配置 Atlas Search 索引并从应用程序运行查询。
持续时间:7 分钟