MongoDB聚合图表的时间序列数据

时间:2017-04-01 11:36:21

标签: mongodb aggregation-framework

我第一次尝试使用MongoDB集合来保存物联网传感器数据。通过编写API,我想从MongoDB中提取数据,以便在图表中向用户表示这些数据。

我的架构如下,时间戳是Linux时间戳并读取条目的浮点值。

var ReadingSchema = mongoose.Schema({
    uuid: String,
    location: String,
    type: String,
    reading: Number,
    unit: String,
    timestamp: Number,
    battery: Number
});

经常保存读数,没有特定的间隔。传感器A可以每10秒发送一次,而传感器B可以每5分钟发送一次。

我希望能够提取数据来绘制图表。我尝试对以下示例描述的时间间隔进行分组:http://www.nrg-media.de/2013/10/mongodb-aggregation-group-by-any-time-interval/

但我得到的结果是InternalError: too much recursionThe $subtract accumulator is a unary operator

我也找到了符合我要求的解决方案:https://stackoverflow.com/a/27751029/1765404。但结果也是InternalError: too much recursion

如果有帮助,可能会更改阅读架构。该集合现在包含来自过去一个月的约70,000行虚拟数据。

1 个答案:

答案 0 :(得分:0)

到目前为止,由于时间序列数据的完美处理,我实际上从MongoDB迁移到了InfluxDB