Análisis dimensional y unitario en base de datos SQL.

Problema:

Una base de datos relacional (Postgres) que almacena datos de series temporales de varios valores de medición. Cada valor de medición puede tener un "tipo de medición" específico (por ejemplo, temperatura, oxígeno disuelto, etc.) y puede tener "unidades de medición" específicas (por ejemplo, Fahrenheit / Celsius / Kelvin, porcentaje / miligramos por litro, etc.).

Pregunta:

¿Alguien ha construido una base de datos similar para conservar la integridad dimensional? ¿Tienes alguna sugerencia?

Estoy considerando construir un tipo de medición y una tabla de medición de unidad, ambos tendrían texto dos columnas, ID y texto. Luego crearía claves foráneas para estas tablas en la tabla measuring_value. El texto me preocupa un poco porque existe la posibilidad de duplicados no únicos (por ejemplo, 'ug / l' frente a 'µg / l' para microgramos por litro).

El propósito de esto sería que yo pueda convertir y verificar unidades en consultas, o mediante programación externa. Idealmente, más tarde tendría la capacidad de incluir un análisis dimensional estricto (por ejemplo, vinculando µg / l al valor 'M / V' (masa dividida por volumen)).

¿Hay una manera más elegante de lograr esto?

Respuestas a la pregunta(3)

Su respuesta a la pregunta