【问题标题】:Mongo search structureMongo搜索结构
【发布时间】:2015-04-19 00:38:21
【问题描述】:

我有几个在搜索单词时应该搜索的集合。 这些集合被合并到一个搜索集合中。 我有一些全文本字段和一些文本标签数组的字段。这些标签来自多个上下文

考虑到 mongo 每次搜索只使用一个索引,而 compound index can only contain one array field 。我倾向于将所有标签放在这个搜索结构的某个字段上。

我的问题是:全文字段呢?我应该将它们连接起来并将它们添加为一些巨大的文本字段吗?

我应该一起跳过 mongo 并在其他数据库中输入我的字段吗?

【问题讨论】:

  • 如果您需要复杂的全文搜索功能(或者如果全文搜索是您的应用程序的主要目的),我建议使用专门的完整测试搜索引擎,如弹性搜索或 solr。但是,您可以在 MongoDB 中使用index multiple text fields
  • 酷。暂时会使用 mongo 并尽快尝试其他两个选项
  • MongoDB Atlas 现在也支持 Lucene 驱动的全文搜索(类似于 Elastic 和 Solr)。 docs.atlas.mongodb.com/atlas-search

标签: mongodb indexing


【解决方案1】:

在生产中使用我的解决方案一段时间后,我得出以下结论:

  • 即使对于大型数据集,将所有数组保存在单个字段中以进行索引也足够了;
  • 一个专门的文本引擎,虽然增加了技术栈,但更强大和可扩展,我会推荐ElasticSearch

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2010-11-23
    • 2020-05-03
    相关资源
    最近更新 更多