analiza wymiarowa i jednostkowa w bazie danych SQL

Problem:

Relacyjna baza danych (Postgres) przechowująca dane timeseries różnych wartości pomiarowych. Każda wartość pomiarowa może mieć określony „typ pomiaru” (np. Temperatura, rozpuszczony tlen itp.) I może mieć określone „jednostki pomiarowe” (np. Fahrenheita / Celsjusza / Kelwina, procent / miligram na litr, itp.).

Pytanie:

Czy ktoś zbudował podobną bazę danych, aby zachować spójność wymiarową? Masz jakieś sugestie?

Zastanawiam się nad zbudowaniem typu pomiarowego i tabeli measurement_unit, obie miałyby dwie kolumny tekstowe, identyfikator i tekst. Następnie tworzyłbym klucze obce do tych tabel w tabeli measured_value. Tekst trochę mnie martwi, ponieważ istnieje możliwość niejednoznacznych duplikatów (np. „Ug / l” vs „µg / l” dla mikrogramów na litr).

Celem tego byłoby, aby zarówno konwertować, jak i weryfikować jednostki w zapytaniach lub programować zewnętrznie. Idealnie byłoby mieć później możliwość włączenia ścisłej analizy wymiarowej (np. Powiązanie µg / l z wartością „M / V” (masa podzielona przez objętość)).

Czy istnieje bardziej elegancki sposób na osiągnięcie tego celu?

questionAnswers(3)

yourAnswerToTheQuestion