【发布时间】:2017-04-01 11:36:20
【问题描述】:
我第一次尝试使用 MongoDB 集合来保存我的物联网传感器数据。通过编写 API,我想从 MongoDB 中提取数据以将这些数据以图表形式呈现给用户。
我的架构如下,timestamp 是 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 recursion 或The $subtract accumulator is a unary operator。
我还找到了符合我要求的解决方案:https://stackoverflow.com/a/27751029/1765404。但结果也是InternalError: too much recursion。
如果有帮助,可以更改阅读模式。该集合现在包含过去一个月的约 70.000 行虚拟数据。
【问题讨论】:
标签: mongodb aggregation-framework