Каков наилучший способ хранения данных показателей, используемых при отображении графиков?Лучший способ хранения метрических данных, используемых для графиков
В настоящее время у меня есть таблица analytics(domain::text, interval_in_days::int, grouping::text, metric::text, type::text, labels[], data[], summary::json)
domain
является общей категорией метрик. Как какая часть приложения они находятся. Может быть sales
или support
т.д.
interval_in_days
и grouping
являются «параметры просмотра» конечный пользователь может указать на уровне интерфейса, чтобы иметь различный вид точек данных.
grouping
может быть date
, day_of_week
или time_of_day
interval_in_days
могут быть 7, 30 or 90
labels
представляет собой массив меток на оси х и data
являются соответствующими точками данных.
type
либо data_series
, либо summary
. Если data series
, строка представляет это данные, используемые для построения графика, в то время как summary
имеет summary:json
поле заполняется с объектом, как {total_number_of_X: 132, median_X: 320.. etc}
metric
просто метрика соответствующий граф представляет собой, таким образом, есть отдельный график для каждого значения metric
Из этого следует, что для каждой отображаемой метрики/графика у меня есть 9 (3 интервала * 3 группировки). Для каждого domain
у меня есть одна строка с типом summary
.
Каждые несколько часов я объединяю множество данных по нескольким таблицам в таблицу аналитики. Поэтому мне не нужно выполнять дорогостоящие запросы adhoc.
Я считаю, что это не оптимальный подход, поэтому мне очень интересно видеть, как другие люди выполняют одну и ту же задачу или любые предложения.