У нас есть переменная окружения на каждой машине, которая указывает на каталог.В этом каталоге у нас есть один файл конфигурации служб SSIS.Файл конфигурации имеет одну запись - он настраивает свойство строки подключения диспетчера соединений, которое есть во всех наших пакетах, - SSIS_CONFIG.Эта строка подключения указывает на базу данных, в которой есть наша таблица конфигурации для этой среды.
Таблица конфигурации имеет конфигурации для менеджеров соединений, а также различные другие конфигурации.Для ConfigurationFilter для строк диспетчера соединений задано имя базы данных, а в ConfiguredValue есть строка соединения для этой базы данных.
Каждый пакет имеет диспетчер соединений SSIS_CONFIG.Все остальные диспетчеры соединений получают имя базы данных, к которой они подключаются (вместо имен серверов и базы данных по умолчанию в службах SSIS).
Диспетчер соединений SSIS_CONFIG конфигурируется конфигурациями пакетов с косвенным типом конфигурации.XML, где местоположение конфигурации хранится в переменной среды.Каждый другой диспетчер соединений использует тип конфигурации SQL Server, соединение SSIS_CONFIG и фильтр конфигурации имени базы данных, к которой они подключаются.
Если новый пакет должен подключиться к базе данных, вероятность того, чтодругой пакет также должен был, поэтому конфигурация, необходимая для этого диспетчера подключений, уже находится в таблице конфигурации, поэтому мы повторно используем это значение при создании конфигураций пакета этого пакета.
Каждая среда имеет переменную среды и свою собственнуюверсия базы данных и таблица конфигурации.Единственное отличие таблицы конфигурации между средами - это строки подключения в столбце ConfiguredValue.Например, строки подключения в среде DEV указывают на версии баз данных DEV, а записи среды QA указывают на версии баз данных QA.
Редактирование пакетов при их продвижении между средами делает тестирование недействительным.Такой подход позволяет нам продвигать пакеты, не касаясь их.Конструкция также чрезвычайно гибкая, что значительно упрощает разработку и тестирование.
Мы можем использовать этот подход с несколькими экземплярами, работающими на одной машине, используя это в качестве руководства: http://www.sqlservercentral.com/articles/Integration+Services+(SSIS)/69739/