Короткая версия: я ищу способ расстановки приоритетов для определенных задач в потоках управления служб SSIS 2005. То есть я хочу иметь возможность настроить его так, чтобы Задача B не запускалась до тех пор, пока Задача A не была запущена, но Задаче B не нужно ждать завершения Задачи A. Цель состоит в том, чтобы сократить количество времени, в течение которого у меня простаивают незанятые потоки, ожидающие завершения Задачи A, чтобы они могли перейти к Задачам C, D & E.
Проблема, с которой я сталкиваюсь, заключается в преобразовании нагрузки хранилища данных из линейного задания, которое вызывает группу SP, в пакет SSIS, вызывающий те же SP, но выполняющие несколько потоков параллельно. В общем, у меня есть куча объектов «Выполнение SQL» и «Контейнер последовательностей» с прецедентными ограничениями, отображающими зависимости. Пока проблем нет, все работает отлично, и это значительно сократило время загрузки.
Однако я заметил, что задачи без нижестоящих зависимостей обычно упорядочиваются раньше, чем те, у которых есть зависимости. Это вызывает много простоя в определенных местах, которые я хотел бы свести к минимуму.
Например: у меня около 60 процов, связанных с этой загрузкой, ~ 10 из них вообще не имеют зависимостей и могут работать в любое время. Затем у меня есть еще один без зависимостей, но почти все другие задачи в работе зависят от него. Я хотел бы убедиться, что задача с зависимостями запущена, прежде чем я выберу любую из задач без зависимостей. Это только один пример, подобные ситуации встречаются и в других местах.
Есть идеи?