размерный и модульный анализ в базе данных SQL

Проблема:

Реляционная база данных (Postgres), хранящая данные временных рядов различных значений измерений. Каждое значение измерения может иметь определенный «тип измерения»; (например, температура, растворенный кислород и т. д.) и могут иметь конкретные «единицы измерения»; (например, Фаренгейт / Цельсий / Кельвин, проценты / миллиграммы на литр и т. д.).

Вопрос:

Has anyone built a similar database such that dimensional integrity is conserved? Have any suggestions?

Я рассматриваю возможность создания таблицы Measure_type и Measurement_unit, оба из которых будут иметь два столбца: текст и идентификатор. Затем я бы создал внешние ключи для этих таблиц в таблице measure_value. Текст меня несколько беспокоит, потому что есть возможность для неуникальных дубликатов (например, "мкг / л" против "г / л" для микрограммов на литр).

Цель этого заключается в том, чтобы я мог как конвертировать, так и проверять единицы по запросам или посредством внешнего программирования. В идеале у меня была бы возможность позже включить строгий размерный анализ (например, связать «g / l» со значением «M / V» (масса, деленная на объем)).

Is there a more elegant way to accomplish this?

Ответы на вопрос(3)

Ваш ответ на вопрос