Реплицированная база данных для хранения исторических данных
Только часть данных в базе данных обрабатывается приложением, остальные необходимы для целей отчетности, но это приводит к низкой производительности приложения. Я хотел бы архивировать исторические данные без изменения схемы базы данных.
Есть ли возможность реплицировать базу данных, удалять старые данные из первичного экземпляра и регулярно синхронизировать новые изменения в реплицируемой базе данных? Таким образом, первичная "транзакционная" база данных будет легкой, а реплицированная база данных будет содержать полный набор как текущих, так и исторических данных для целей отчетности.
Не могли бы вы порекомендовать некоторые инструменты или дать несколько советов для достижения этого в Oracle?
редактирование: мне интересно, смогу ли я использовать потоки и каким-то образом сделать обработчик DML, чтобы игнорировать операции DELETE над строками (docs.oracle.com/cd/B28359_01/server.111/b28321/…), чтобы во время репликации данных исторические строки были сохраняется несмотря на удаление из транзакционной БД.
1 ответ
Вам не нужно создавать две отдельные базы данных. Просто создайте одну транзакционную базу данных, в которой вы сохраните все свои транзакции, а затем создадите представления на основе этих таблиц для отображения необходимых данных. Таким образом, вы просто должны поддерживать только одну базу данных.