Pull to refresh

Comments 5

UFO just landed and posted this here

Как именно денормализовать?


В dimension1|dimension2|dimensionN мы уже добавили информацию по пользователю и его аккаунту за этот день.


Для простых запросов эту таблицу можно ни с чем не джоинить, все данные уже в ней есть.


Но денормализация не работает для данных, которые обновляются в прошлое или для спорных данных, которые зависят от контекста запроса. В таких случаях всё-таки приходится делать джоин.

UFO just landed and posted this here
С такой гипер нормализованной витриной вам нужна columnstore db.
Из нее можно выжать максимальный профит в вашем случае.

Спасибо, согласен, column-oriented db может дать большой прирост производительности.


Cейчас мы используем foreign таблицы в Postgres в формате ORC, это колонко-ориентированный формат хранения данных, он уже дал нам большой прирост в производительности и пока что всем нас устраивает. Перейти с него на отдельную базу данных не так-то просто, аналитики привыкли к синтаксису Postgres и удобно, что можно в одной базе данных без DI-решений сделать сджоинить эту денормализованную таблицу с чем-то ещё.

Sign up to leave a comment.