【问题标题】:Find Query Monogodb take too longFind Query Mongodb take too long
【发布时间】:2018-09-24 06:58:51
【问题描述】:

我收藏的文档数量约为 550,000,000(文档/行/记录)。 寻找时间太长了。 集合文档只有一个字段和 id。 我需要搜索是否返回包含字段的文档。

以下是集合中的示例文档

{ _id: xxxxxxxxxxxxxxxxxxxxxxxxxx,    
'Service Area Code': 15,
Phone: 89898989898898,
Preferences: 0,
Opstype: 'X',
'Phone Type': 0 }  

这是一个示例查询

db.collection('xxxx').find({Phone:[898989898989,898989897777,78787878787]})    

这是集合只是一个初始转储。 预计每周将获得 0.5 到 100 万条记录。

我目前正在使用带有 node js 的 mongodb npm 包来执行此操作。

当前查询时间约为 5 到 6 分钟。

【问题讨论】:

  • 你能在电话列上创建一个索引,看看它是否会增加查询时间
  • “集合文档只有一个字段和id”这与示例文档相矛盾。 [....] 到底是什么?您是否设置了适当的索引?
  • 从在字段上创建索引开始
  • 我正在尝试这个选项。但是添加索引需要一些时间。让我稍后更新你
  • 添加索引会导致内存不足。

标签: node.js database mongodb


【解决方案1】:

如果经常使用此查询db.collection('xxxx').find({Phone:[xxxxxx]}),您应该在电话字段中create index 以加快查询速度

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-05-19
    • 1970-01-01
    • 1970-01-01
    • 2022-12-19
    • 2017-02-18
    • 2019-12-05
    • 2020-12-06
    • 1970-01-01
    相关资源
    最近更新 更多