我想第一次使用MongoDB集合来保存我的物联网传感器数据。通过编写一个API,我想从MongoDB中提取数据,以便在图表中将这些数据表示给用户。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 recursion
或The $subtract accumulator is a unary operator
。
我还发现这个解决方案符合我的要求:https://stackoverflow.com/a/27751029/1765404。但结果也是InternalError: too much recursion
。
阅读架构可能会改变,如果这将有所帮助。该集合现在包含过去一个月〜70,000行的虚拟数据。