0

[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>)ます。

3) 小さなサブドキュメント規約を使用できるので、 の代わりに'rssi' : <int>come になります'rssi': {'value': <int>, 'time': <timestamp>}。これは最も重いように見えますが、最も説明的です。

そして、私がまだ考えていない、まったく別の方法があるかもしれません。

4

1 に答える 1