Feldversionierung¶
Feldversionierung und Historie¶
Warum Versionierung nötig ist¶
Ein Feld kann heute „Stress 0–10“ und später „Stress 1–5“ heißen. Würde die bestehende Definition einfach überschrieben, wären alte Werte nicht mehr eindeutig interpretierbar.
Steady trennt deshalb:
- physische Feld-ID: konkrete Version,
logicalId: fachlich derselbe Messwert über mehrere Versionen.
flowchart LR
F1[stress<br/>Version 1<br/>id: stress] -->|Typ oder Skala geändert| F2[stress<br/>Version 2<br/>id: stress-xyz]
F1 -. logicalId: stress .- F2
F1 -->|retired / supersededBy| F2
Wann eine neue Version entsteht¶
Wenn historische Werte existieren und sich eine versionierte Eigenschaft ändert, wird das alte Feld stillgelegt und ein Ersatz angelegt. Dazu gehören unter anderem:
- Labels und Bereich
- Typ und Optionen
- Minimum, Maximum, Schrittweite und Einheit
- Zielrichtung und Zielbereich
- Standardwert und Statistikfreigabe
Wie Analytics damit umgeht¶
Explorer und Statistik suchen alle Felder mit derselben logicalId. Beim Lesen eines Tages wird
die Feldversion verwendet, deren ID tatsächlich im Tagesdatensatz vorhanden ist.
flowchart TD
E[Tagesdatensatz] --> K{welche Feld-ID ist vorhanden?}
K --> V1[alte Version]
K --> V2[neue Version]
V1 --> L[gemeinsamer logischer Messwert]
V2 --> L
L --> A[Aggregation]
Wichtig für zukünftige Änderungen¶
Eine neue analytische Eigenschaft muss in die Liste der versionierten Eigenschaften aufgenommen werden, wenn ihre Änderung die historische Bedeutung verändert. Andernfalls könnte eine neue Konfiguration rückwirkend alte Daten anders bewerten.