【问题标题】:Improving MongoDB Text Search Performance提高 MongoDB 文本搜索性能
【发布时间】:2014-07-01 16:10:00
【问题描述】:

我正在寻找一些关于如何使用 MongoDB 2.6 提高文本搜索性能的建议。我也在用猫鼬。

我的 mongoose 架构有“正文:字符串”,其中包含大量 XML。我运行了 ensureIndex,这花了几分钟......

db.models.ensureIndex({ body:"text"})

我想使用用户定义的字符串搜索此文本。

Model.find({ $text: { $search: searchstr }},function(err,data){ });

虽然只有几千个文档,但搜索通常会超时(2 分钟以上)。我怎样才能提高我的表现?谢谢!

【问题讨论】:

    标签: javascript node.js mongodb


    【解决方案1】:

    一般来说,AFAIK 建议在处理 textSearch 时使用标准 find 的管道框架。

    例如做一些事情:

    db.model.aggregate(
       [
         { $match: { $text: { $search: "text" } } },
         { $sort: { score: { $meta: "textScore" } } },
         { $limit: 10 }
       ]
    )
    

    将只返回前 10 个最多的元素。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-09-01
      • 1970-01-01
      • 2010-12-31
      • 1970-01-01
      • 2021-11-22
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多