SQL Server - лучшая модель репликации для архивирования - PullRequest
4 голосов
/ 11 июля 2011

Я нахожусь в точке, где мне нужно начать архивирование базы данных сайта, который я веду. В основном, множество транзакционных данных генерируется ежедневно, и примерно через 2 недели эти данные в значительной степени бесполезны - они все еще необходимы для отчетности, но их можно безопасно перенести с рабочего сервера.

Итак, в идеале я бы хотел, если бы я мог сделать это:

  1. Настройка вытягивающей репликации - сервер резервного копирования ежечасно извлекает изменения с рабочего сервера.
  2. Ежедневно - очищается база данных производственного сервера - удаляются записи старше 2 недель.

В # 1 - мне интересно, является ли репликация по запросу наиболее эффективным способом перехода с точки зрения производительности? Я не хочу создавать нагрузку на рабочий сервер (или, по крайней мере, не сильно напрягаться) ... Меня не волнует синхронизация баз данных.

На # 2 - Как убедиться, что эти удаления не реплицированы - что данные хранятся на сервере архивации?

Рабочий сервер работает под управлением SQL Server 2008 Enterprise, сервер резервного копирования может запускать все необходимое (в настоящее время он работает под управлением SQL Server 2008 Express)

Ответы [ 2 ]

2 голосов
/ 12 июля 2011

Для № 1, я бы сказал, проверить это и посмотреть. У MS обычно есть несколько технических документов, в которых говорится, что подписки по запросу более производительны, но я не помню, чтобы они говорили, сколько это стоит с точки зрения ресурсов. Если вас это беспокоит, настройте удаленного распространителя (удаленный = не тот же сервер, что и издатель)

Для # 2, есть несколько способов сделать это. Когда вы настраиваете статью с помощью sp_addarticle, есть параметр @del_cmd, который может принимать значение «none». Это расскажет агенту распространения о невозможности удаления на подписчике. Вы также можете выполнить очистку с помощью хранимой процедуры, настроить выполнение хранимой процедуры как статью в репликации, а затем иметь хранимую процедуру на подписчике, которая ничего не делает. У каждого подхода есть свои плюсы и минусы.

0 голосов
/ 10 декабря 2013

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

...