我希望将一些时间序列数据存储到mondodb中。系统每分钟输出一次数据,因此我制作了一个名为hours的数组。这个数组大小为24(代表当天的小时数)。每小时包含一个大小为60的数组(该小时的每分钟)。
以下示例显示5小时,每小时分别只有3,3,5,3,2分钟的数据。
每天结束时,我会按小时平均值等更新文件......
我这样做是因为当它映射到POJO时,只需使用数组索引就可以很容易地找到正确的小时和分钟。
良好的链接。 http://blog.mongodb.org/post/65517193370/schema-design-for-time-series-data-in-mongodb
用例只是允许以各种粒度绘制图表。从几分钟到几天的一切。
{
"_id": ObjectId("55eee516b932c564bc8dd645"),
"name": "James",
"hours": [
[
1.12,
2.47,
3.25
],
[
4.12,
5.24,
6.21
],
[
7.25,
8.69,
9.54,
NumberInt(5),
6.36
],
[
10.55,
11.45,
NumberInt(12)
],
[
13.14,
14.23
]
]
}
在链接示例中使用嵌套文档中的数组方法是否会导致更新时出现任何问题以及平均等等...
db.metrics.update(
{
timestamp_hour: ISODate("2013-10-10T23:00:00.000Z"),
type: “memory_used”
},
{$set: {“values.59.59”: 2000000 } }
)