MongoDB的聚合管道或MapReduce功能可以查询许多文档,每个文档都有时间戳,并将它们分组在彼此设定范围内的时间戳上,基本上是“聚集”它们吗?
例如,如果我有5个包含以下时间戳的文档:
我的目标是将他们分成以下文件:
我在逻辑上所做的是说“将所有文件分组在5分钟内加上时间戳”。
重要的是要注意,我不只是说“每五分钟一次分组文件”,因为如果是这种情况(假设五小时组开始于小时),则文件3和4可能不会出现在同组。
另一件棘手的事情是处理与5相关的文件3和4.文件3和5之间的距离超过5分钟,但由于3到4之间的时间不到5分钟,而且在4到5之间,所有人都被分组了。
(我认为如果没有那个警告就可以使这个工作正常,其中该组有3个与3和4分开,因为该组从3开始并且进行一组“5分钟”,不包括5。但是如果这个小组可以像那样扩展那就太棒了。)