пока в голову приходит только подрубить к базе еластик например, при изменении в основной базе, собирать объект и закидывать его в еластик, далее уже обращаться к нему. Т.е при любых изменениях в основ БД, пишем в быстрое хранилище, подготовленные данные. Как итог, быстрый доступ к подготовленным данным, тяжелые операции и расчеты при изменении в основной базе, через очереди, например RabbitMQ, с подтверждением успешного выполнения каждой задачи.