История оптимизации работы с БД в одном проекте. Особенности: используются 2 БД — объектная и реляционная. Первая является основным хранилищем, с ней работают бизнес-операции. А вторая (в нее реплицируются данные из первой) используется для чтения во всяких отчетах (или даже вообще повсеместно). Для чего нужна вторая — то ли для скорости, то ли из-за бедности языка запросов в используемой объектной БД. По мере роста объема данных возникли 2 основные проблемы:
- долго выполняются запросы при интерактивной работе (> 3 минут)
- лаг чтения из-за репликации (> 1 часа)
Решали денормализацией, настройкой индексов, оптимизацией планов выполнения.