【发布时间】:2014-05-19 07:04:48
【问题描述】:
我目前正在使用 MongoDB 的全文搜索功能来统计每小时包含某个关键字的文档数。
当在每个文档都是一条推文的大型集合中运行时,这真的很有趣。例如,对于关键字“thanks”,我们看到 Nov 29(Thanks Giving)。
我目前的方法有效(它生成了上面的图),但它不会扩展。目前,我通过遍历搜索返回的文档来手动计算每小时的推文数量。此方法不会扩展,因为此搜索结果最终将达到 MongoDB 文档限制。目前它有效,因为我只有 350 万条推文,但我计划收集更多。
data = db.command('text', collection,
search=query,
project={'hour_bucket': 1, '_id': 0},
limit=-1
)
hours = Counter()
for d in data['results']:
hours[d['obj']['hour_bucket']] += 1
我的问题是:可以在聚合管道中使用文本搜索吗?这将解决我所有的问题。但是我看到的唯一评论如下:https://jira.mongodb.org/browse/SERVER-9063
有谁知道这个作品的状态是什么?
【问题讨论】: