Docs 菜单
Docs 主页
/
Atlas
/ /

常见问题解答: MongoDB Search

不需要,在集群上启用MongoDB Search 时,不会产生任何额外费用或收费。但是,您可能会发现集群上的资源利用率有所增加,具体取决于索引集合大小或索引定义等因素。要管理和控制MongoDB搜索资源利用率,您可以部署个专用搜索节点,每个节点会产生额外费用。我们建议在您的生产环境中使用此方法。

提示

是的。以下MongoDB Search 操作符支持部分字符串匹配查询:

是。您可以将 wildcardregex 操作符与自定义分析器一起使用,以执行不区分大小写的搜索。您可以使用以下分词器和词元筛选器定义自定义分析器,以执行通配符不区分大小写搜索:

是的。MongoDB Search StoredSource 选项存储原始值。要在 $search 阶段之后对使用 returnStoredSource 选项返回的结果执行不区分大小写的操作,必须在创建集合时将集合的默认规则强度设立为 12,并且不得指定其他排序规则在查询和索引中。

如果将分片添加到具有现有MongoDB搜索索引的集合,则会在为该MongoDB搜索索引新添加的分片上进行初始同步。每个分片的MongoDB Search索引仅包含该分片上存在的集合中的文档。要学习;了解更多信息,请参阅对全局集合进行分片。

警告:如果您对已经具有MongoDB Search索引的集合分片,当该集合开始出现在分片上时,您可能会遇到短暂的查询停机。此外,如果您为包含MongoDB Search索引的已分片的集合添加分片,则针对该集合的搜索查询将失败,直到添加的分片完成初始同步进程为止。要学习;了解详情,请参阅初始同步进程。

不可以,您不能使用分片键对特定分片或分片子集运行MongoDB Search 查询。在分片集群环境中, MongoDB搜索查询是在所有分片上运行的分散-聚集查询。

但是,如果您使用 区域将分片的集合分布到集群中的一部分分片上,则MongoDB Search 会将查询路由到包含您正在查询的集合的分片的区域,并运行$search 查询仅在集合所在的分片上。

默认下,查询在主节点 (primary node in the replica set)节点上运行。您可以配置读取偏好(read preference),或使用副本集标签来指定读取偏好(read preference)。要学习;了解更多信息,请参阅什么是MongoDB Search?

是,您可以执行以下操作以复制索引:

1

您可以从 Search & Vector Search 选项或 Data Explorer 转到MongoDB搜索页面。

2
  1. 在要复制的索引上,单击 Action 列中的

  2. 单击 Edit With JSON Editor(连接)。

3
4

使用MongoDB Search JSON Editor 创建新索引。粘贴您复制的索引,然后单击 Create Search Index。创建MongoDB搜索索引后,您可以直接在MongoDB搜索 JSON Editor 或MongoDB搜索 Visual Index Builder 中进行所需的任何编辑。

注意

正在开发

我们目前正在为此研究一种不需要上述步骤的解决方案。 如果您想为此功能投票或提交反馈,请参阅此反馈项。

不可以, MongoDB Search 将内存用于Java虚拟机(JVM)堆指标,其中存储了搜索索引的自动完成和文本标记。与其他数据库引擎类似, MongoDB Search 将大部分索引文件存储在磁盘上,这得益于根本的操作系统页面缓存。

  • 验证您输入的数据库和集合名称是否正确。如果您输入的数据库或集合名称不存在,Atlas 用户界面将临时构建索引并在不久后将其删除。

  • 如果您使用$out聚合阶段覆盖您的集合,则必须删除并重新创建Atlas Search索引,因为Atlas Search索引不会复制到目标集合。 要了解更多信息,请参阅$out 索引约束。

  • 如果对使用MongoDB Search 的集合进行重新分片,此操作会删除现有的搜索索引。分片操作完成后,您必须手动重建集合的搜索索引。

对于 M10+ 专用集群,Atlas 会从云备份快照恢复 MongoDB Search 索引定义。Atlas不会恢复搜索索引数据,因此 mongot 进程会对所有恢复的搜索索引定义执行初始同步。如果在集群上定义了大型搜索索引,则在快照恢复期间可能会遇到延迟。

是的,您可以使用CSFLE加密客户端在MongoDB 6.0及更高版本中对未加密数据运行MongoDB Search 查询。

不可以,您无法使用MongoDB Search查询CSFLE加密数据。

不可以,Queryable Encryption与MongoDB Search 不兼容。

不可以,您不能在时间序列集合上使用MongoDB Search。

是的,用户可以请求新功能,也可以使用MongoDB 反馈引擎对现有请求进行投票。

是的, MongoDB支持部门可以在专用节点和共置节点上访问权限您的MongoDB搜索基础架构,并从这些节点下载mongot 日志。但是,您可以在组织级别区块MongoDB支持人员的访问权限,然后根据需要授予MongoDB支持人员访问权限24 小时。要学习;了解更多信息,请参阅配置MongoDB支持访问Atlas后端基础架构。

不可以,但是您可以使用 $lookup$unionWith 在多个集合中运行搜索查询。要学习;了解更多信息,请参阅如何跨多个集合运行MongoDB搜索查询。

后退

常见问题解答:应用程序