Dimensions- und Einheitenanalyse in der SQL-Datenbank

Problem:

Eine relationale Datenbank (Postgres), in der Zeitreihendaten verschiedener Messwerte gespeichert sind. Jeder Messwert kann einen bestimmten "Messtyp" haben (z. B. Temperatur, gelöster Sauerstoff usw.) und kann bestimmte "Maßeinheiten" haben (z. B. Fahrenheit / Celsius / Kelvin, Prozent / Milligramm pro Liter usw.).

Frage:

Hat jemand eine ähnliche Datenbank erstellt, so dass die Dimensionsintegrität erhalten bleibt? Hast du irgendwelche Vorschläge?

Ich überlege, einen Mess_Typ und eine Mess_Einheit-Tabelle zu erstellen. Beide haben Text, zwei Spalten, ID und Text. Dann würde ich Fremdschlüssel für diese Tabellen in der Messwerttabelle erstellen. Text bereitet mir etwas Sorge, da möglicherweise nicht eindeutige Duplikate vorhanden sind (z. B. "ug / l" gegenüber "µg / l" für Mikrogramm pro Liter).

Der Zweck wäre, dass ich Einheiten bei Abfragen oder durch externe Programmierung konvertieren und verifizieren kann. Idealerweise hätte ich später die Möglichkeit, eine strenge Dimensionsanalyse durchzuführen (z. B. Verknüpfung von µg / l mit dem Wert "M / V" (Masse geteilt durch Volumen)).

Gibt es einen eleganteren Weg, um dies zu erreichen?

Antworten auf die Frage(3)

Ihre Antwort auf die Frage