В настоящее время мы сталкиваемся с некоторыми проблемами производительности, так как наша база данных становится слишком большой. Существуют данные, хранящиеся за последние 10 лет, и я не вижу причины, по которой данные старше 2 лет должны храниться в тех же таблицах, что и новые данные.
Сейчас, поскольку у меня нет большого опыта в администрировании баз данных, я ищу лучшие способы архивации старых данных.
Информация
Всего в базе данных около 310 000 000 записей.
База данных нуждается в 250 ГБ на жестком диске.
- Версия сервера - SQL Server 2008 с уровнем совместимости SQL Server 2005 (90), но мы планируем вскоре перейти на SQL Server 2012
Я думал о двух возможностях:
Новая база данных
Создайте базу данных, аналогичную той, что на рабочем сервере, и вставьте все старые данные в новую базу данных.
- Недостаток: поскольку связанные серверы не разрешены в нашей среде, при необходимости будет сложно объединить старые данные.
Схема истории
Создайте новую схему fe [hist] с теми же таблицами, что и в производственной базе данных. Вставьте все старые данные в эти новые таблицы в новую схему.
- Преимущество: простота объединения, если в будущем понадобятся старые данные
- Вы предпочитаете одно из решений другому?
- Зачем?
- Есть ли лучшие возможности?
- Существуют ли инструменты, с помощью которых эта задача легко выполнима?
- Есть еще мысли?
заранее спасибо
редактировать
Дополнительный вопрос:
Нужно ли только что созданной таблице архивов первичные / внешние ключи?
Или они должны иметь только столбцы, но без ключей / ограничений?