Найти тему
436 подписчиков

Снижаем нагрузку на БД с помощью аналитической базы


Не новая, но концептуально верная статья ReportingDatabase от дядьки Боба.

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

Для обработки сложных аналитических запросов предлагается создать отдельную базу данных — reporting database. Причем это может быть совершенно любая другая база данных, отличная от основной.
К плюсам такого подхода относятся:
— возможность выбрать базу, заточенную под аналитические запросы
— нет необходимости заботиться нормализации данных
— сложные запросы к reporting db не нагружают основную базу

Возможно, для вашей задачи отдельная БД не требуется. Вот и дядька Боб в конце рассказывает, что хороший базовый вариант — использовать классические views с вынесением их на отдельную ноду кластера. Представления позволяют создавать логические таблицы с данными, а их вынесение на отдельные вычислительные ресурсы позволяет разгрузить базу при построении сложной аналитики.
#skills #database
Снижаем нагрузку на БД с помощью аналитической базы  Не новая, но концептуально верная статья ReportingDatabase от дядьки Боба.
Около минуты