0
的數據的有限量的我有文檔的文檔data
(含有讀數),用於我的集合中的每個文件:MongoDB的:保持排序後的數組
{
"_id": ...,
"data": {
"2016-07-24": {"reading1": 1},
"2016-07-25": {"reading1": 2},
"2016-07-26": {"reading1": 3}
}
}
數據與相同的格式定期加入。
密鑰必須是唯一的,因爲新的數據將替換舊數據(例如,"2016-07-25": {"reading1": 9}
將取代上面列出的值)
如何只保留最近的10個條目(當鍵排序)?我可以用mongo查詢來做到這一點,還是應該使用應用程序端邏輯?
將data
轉成數組可能有效,但存在具有重複日期條目的問題。
感謝您的幫助!
看起來不錯。如果我這樣做,我認爲使用'upsert'來更新數據元素是正確的方法嗎? – humanoid
應該工作,假設upsert語義是你需要的。 – helmy
helmy:問題是我需要基於日期的數組元素是唯一的。 mongo似乎不允許我說「更新字段Y是baz的數組元素的字段X」,這正是我想要的。 – humanoid