我应该如何建模与我的pymongo文档中的时间戳相关联的数字字段?

时间:2013-09-13 19:12:51

标签: python mongodb python-3.x pymongo

相对较新的[py] mongo [db] ...

我有一个文档结构,其中包含一个字段结构,包括:

{ ...
'rssi': <int>,
'battery': <float>,
'status': <int>
'valve_status': {
    '0A000011': <int>,
    '0A000012': <int>, ...}
'pressure_in': {
    '0A000011': <int>,
    '0A000012': <int>, ...}
'pressure_out': {
    '0A000011': <int>,
    '0A000012': <int>, ...}
... }

所以我的设计需要改变以适应每个数字保存时间戳。不同值之间的时间戳不相同。我很好奇这是一个很好的惯用方法,因为我在这个领域还没有很多经验。

我可以看到2或3种不同的方法:

1)我可以使用字段命名约定来拥有字段对。因此,我可以拥有'rssi'而不仅仅是'rssi_time',而只需重复其他字段的模式。看起来有点俗气,但简单在某种程度上有点吸引力。

2)我可以为每个数字 - 时间对使用元组。因此,'rssi' : <int>代替'rssi' : (<int>, <timestamp>),而不是'rssi' : <int>

3)我可以使用一个很小的子文档约定,因此'rssi': {'value': <int>, 'time': <timestamp>}的内容会来{{1}}。这个似乎最重,但最具描述性。

也许有一种完全不同的做法,我还没想过。

1 个答案:

答案 0 :(得分:0)

这里没有引起很多讨论......我会回答我自己的问题。在与其他论坛的人交谈后,我得出的结论是#3是最好的。到目前为止,我没有遇到任何问题。