Comments 5
Как именно денормализовать?
В dimension1|dimension2|dimensionN
мы уже добавили информацию по пользователю и его аккаунту за этот день.
Для простых запросов эту таблицу можно ни с чем не джоинить, все данные уже в ней есть.
Но денормализация не работает для данных, которые обновляются в прошлое или для спорных данных, которые зависят от контекста запроса. В таких случаях всё-таки приходится делать джоин.
Из нее можно выжать максимальный профит в вашем случае.
Спасибо, согласен, column-oriented db может дать большой прирост производительности.
Cейчас мы используем foreign таблицы в Postgres в формате ORC, это колонко-ориентированный формат хранения данных, он уже дал нам большой прирост в производительности и пока что всем нас устраивает. Перейти с него на отдельную базу данных не так-то просто, аналитики привыкли к синтаксису Postgres и удобно, что можно в одной базе данных без DI-решений сделать сджоинить эту денормализованную таблицу с чем-то ещё.
Аналитические данные за пределами аналитики в Wrike