问题标签 [mongodb-atlas-search]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
mongodb - MongoDB Atlas 全文搜索
MongoDB Atlas 全文搜索是否支持以下内容:
- 像 Elasticsearch 中的自动完成(edge_ngram tokenizer):
以下查询:
将返回这些文件:
- 像 Elasticsearch 中的前缀查询:
以下查询:
将返回此文档:
mongodb - 我如何在 mongodb atlas 中结合 $searchbeta 和地理搜索
我的团队将数据迁移到 mongodb atlas。
我有个问题。
如何在 mongodb atlas 中结合 $searchbeta 和地理搜索。
mongodb-atlas - MongoDb Atlas 全文搜索索引重建,无需停机
我正在寻找对生产设置全文搜索索引(在 4.2 中添加)进行更改(添加新字段)的最佳方法,而不会造成任何停机并影响我的客户。
mongodb - 使用带有多租户集合的 MongoDb Atlas 全文搜索 ($searchBeta)
我有一个 MongoDb 集合,其中包含数千个租户的数据,这些数据由包含租户 ID 的字段分隔。
我想对特定租户执行包含全文搜索和分面的查询(见下文)。
由于 $searchBeta 必须是聚合管道中的第一阶段,这意味着它将从所有租户返回一个巨大的文档列表,只是为了在 $match 阶段将它们过滤掉,而不是使用索引。
有没有更有效的方法来执行这样的查询?
使用 $searchBeta 运行它需要 14 秒,而删除它会将查询时间减少到 6 毫秒(而分面适用于更多文档,因为它包含所有租户的数据)。
* 使用 Doug 的回答将其减少到 ~70-120ms。
* 时间测量是在 Atlas 免费层上完成的,所以它并不意味着太多
mongodb - 是否有 mongodb 驱动程序可以在 .net 核心应用程序中使用 Atlas 搜索?
我在我的 .net 核心应用程序中使用 MongoDB Atlas,使用 c# 驱动程序连接数据库,最近了解了 Atlas Search,我能够为我的集合创建索引,有没有办法使用 $searchbeta from我的应用程序来查询我的索引?
mongodb - 有没有办法逃避 mongodb 全文搜索的重音
有了新的 Atlas Search 功能,就有了一种逃避口音的方法。
我做了这个索引:
有了这些数据:
并通过此搜索:
我有 :
重音不会被转义(é 应该像 ae 一样处理)。我期待:
有没有办法用 Mongodb Atlas Search 来逃避口音(变音符号)?
我想我需要一个 ascii 折叠分析器,但我没有在分析器列表中找到它: https ://docs.atlas.mongodb.com/reference/atlas-search/analyzers/#analyzers-ref
排序规则的使用似乎不起作用:
仍然只返回“René”
mongodb - “模糊”在 MongoDB 的 $searchBeta 聚合阶段如何工作?
我不太了解模糊在 $searchBeta 聚合阶段是如何工作的。当我尝试在后端实现全文搜索时,我没有得到想要的结果。MongoDB 的全文搜索于去年(2019 年)发布,因此除了文档之外,确实没有太多教程和/或参考资料可供参考。我已经阅读了文档,但我仍然感到困惑,所以我想澄清一下。
假设我的数据库中有这 5 个文档:
这是我在 MongoDB Compass 中的聚合:
我期望我的结果是:
我实际得到的:
我真的不明白为什么我的结果是空的,所以如果有人解释我做错了什么,将不胜感激。
regex - 在 MongoDB 的 $searchBeta 中使用正则表达式运算符时,格式化正则表达式元字符和选项的正确方法是什么?
我正在尝试使用 $searchBeta (聚合)在 MongoDB 中进行全文搜索,并且我正在使用“正则表达式”运算符来执行此操作。这是我所拥有的 $searchBeta 的一部分,它没有按照我的预期工作:
这是我希望表达式匹配的两个文档的示例:
我实际得到的:
如果我使用如下表达式:
然后我得到结果。
我无法让任何包含正则表达式元字符和/或选项的表达式起作用,所以我很确定我只是在查询字符串中输入错误。$searchBeta 正则表达式文档并没有真正涵盖如何将元字符格式化为查询字符串。此外,$searchBeta 正则表达式运算符与 $regex 不同,因为它不需要斜杠(即 "/your expression/" )。真的把我的头发拉到了如此简单的事情上,我无法弄清楚。
mongodb - 如何在运行 MongoDB Atlas 全文搜索之前应用过滤器?
根据有关Atlas Search的文档,它指出:
$search 必须是它出现的任何管道的第一阶段。
那么如果是这样的话,你如何应用 Mongo 过滤器。将这些过滤器应用于搜索的输出似乎非常违反直觉?
我们正在考虑使用 Mongodb 全文搜索作为 Algolia 的替代方案,但是这个限制似乎很奇怪
当前管道:
mongodb - 连接到另一个嵌套集合的 MongoDB 集合中的全文搜索
我想在我的 mongodb 集合中搜索一个字符串,并且搜索字符串存在于另一个集合中,该集合作为我当前集合中的对象数组连接。
示例集合集合 1:
收藏2:
我想搜索collection1,它也可以返回collection2中的结果
例如:搜索 'version' 结果应该返回 collection1->requestHead[0]