【发布时间】:2015-07-07 02:27:49
【问题描述】:
我是 NOSQL 新手,所以请多多包涵,我已经阅读了教程和相关的基于时间序列的指南,但仍然卡住了。
我目前正在使用 1 个传感器,但无论采用何种方式,都需要至少可扩展到数万个传感器。传感器将是远程的,数据通过 GPRS 中继,因此数据可能每 15 分钟以块的形式获取,但我们希望存储传感器每分钟的数据。
我希望存储时间序列数据,例如 GPS 位置、能源使用和充电率,但老实说,我对存储这些数据的数据库结构感到非常困惑。我还需要进一步存储交易列表。我还需要存储非时间序列数据,例如唯一的传感器 ID、与传感器绑定的用户等。
有一个 mongodb 博客 here 讨论时间序列和 here 用于单个传感器。
这些建议每个文档都应该存储大量时间(例如,一个小时的数据),其中的值分解如下:
{ timestamp_hour: ISODate("2013-10-10T23:06:00.000Z"), type: “energy_use”, values: { 0: -1, 1: .. 2: .. 3: 4: 5: 6: 7: 8: 58: .. 59 .. } }
我不明白如何将此数据链接到特定传感器? 如果我有 10 个传感器,我还会有相同的结构,一个文档存储一小时的数据吗?那是每个传感器每小时一份文件,还是该小时内所有传感器一份文件。为什么不为每个传感器创建一个文档,其中记录时间序列?
抱歉,如果这有点令人困惑,我显然在使用 NOSQL 模型时有些挣扎。
如果有人能就如何构建数据库提供建议,我将永远感激不尽,或者让我更全面地理解。
【问题讨论】:
标签: mongodb time-series sensors