我想第一次使用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行的虛擬數據。