Как вы подходите к управлению версиями базы данных при выполнении регулярных сборок? - PullRequest
3 голосов
/ 24 апреля 2009

У меня есть проект веб-приложения, который работает с довольно большой базой данных (более 5 ГБ). Данные в базе данных разбиты по проектам. Каждый проект занимает примерно 1 ГБ, и это минимальный набор для работы приложения (мы делаем некоторые математические вычисления, которые распространяются по этому набору данных, и удаление части набора данных не вариант).

В рамках ежедневной сборки мы также развертываем наше приложение в тестовой среде. Для этого сборщик запускает специальную утилиту обновления БД, которая обновляет текущую БД до соответствующей версии. Но у нас также есть требование сохранять все ежедневные сборки, чтобы команда QA могла «вернуться назад во времени» и сравнить результаты расчетов для разных сборок. Как бы мы ни старались иметь обратно совместимую схему данных, иногда это очень сложно и отнимает много времени. Итак, отсюда вопрос:

Какой подход к управлению версиями базы данных вы бы использовали, если бы у вас было требование поддерживать и выполнять предыдущие ежедневные сборки и вам нужно управлять большой базой данных при выполнении ежедневных сборок?

Мы используем SQL Server 2005 и ColdFusion с некоторыми Java-интерфейсами, если это имеет какое-либо значение.

1 Ответ

3 голосов
/ 24 апреля 2009

Я бы предложил прочитать список Леона Бамбрика под названием 11 Инструменты для управления версиями базы данных

И я бы добавил Visual Studio for Database Professionals в список , который можно найти здесь

Также у Джеффа Этвуда есть хорошее сообщение в блоге на эту тему со ссылками на некоторые материалы для чтения.

...