SSIS оперативная конфигурация экземпляра сервера, базы данных и схемы? - PullRequest
1 голос
/ 15 мая 2019

Для обеспечения оперативного управления процессами интеграции данных, разработанными в SSIS, я хочу иметь возможность внешней настройки:

  1. сервер (источник данных)
  2. база данных (каталог)
  3. схема

Из того, что я видел, все они обычно жестко кодируются в пакеты служб SSIS через диспетчер соединений и в операторах SQL. Это жесткое кодирование ограничивает возможности DBA по-разному распределять ресурсы и, если есть какие-либо изменения, требует изменения каждого пакета, если используется развертывание пакета.

Похоже, что развертывание проекта несколько уменьшит это, но не устранит.

Целевой средой является SQL Server 2016 и VS 2017.

Как сервер, база данных и схема могут быть извлечены из пакета?

1 Ответ

1 голос
/ 16 мая 2019

В SSIS имеется надежное средство для настройки пакетов для каждой среды. Вы можете настроить любое свойство в пакете внешне. Это можно сделать в агенте SQL и даже из командной строки во время выполнения. Конфигурации могут храниться в конфигурационных файлах, системных переменных среды, таблице SQL и т. Д. Однако современный способ настройки пакетов заключается в модели развертывания проекта.

Вот суть того, как это работает:

  • Добавить параметр на уровне пакета или проекта
  • ссылается на этот параметр в выражении, которое настраивает свойство, которое вы хотите установить, то есть имя сервера или начальный каталог
  • Развертывание проекта на экземпляре служб SSIS
  • В службах SSIS добавьте среду и настройте переменную. Это могут быть даже пароли, которые надежно хранятся
  • Добавьте ссылку на эту среду из проекта и, наконец, укажите, какую среду вы хотите использовать во время выполнения.

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

Что касается настройки схемы, это также возможно, используя параметры, но вам нужно будет использовать выражения для ваших SQL-запросов и указать место назначения. Я бы не стал делать схемы переменными в разных средах. Это потребует больших усилий и сложности для очень маленькой гибкости, предлагаемой взамен. Пожалуйста, прочтите эти ссылки и удачи!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...