2016-05-17 6 views
0

У меня есть компонент Component DataFlow, чей O/P будет отличаться каждый раз, мне нужно вставить эти записи в таблицу назначения.Как передать множественный вход для компонента сценария SSIS

Проблема: - Невозможно указать столбцы ввода во время разработки для целевого компонента .. как в действии для каждого вызова задачи DataFlow. Исходный компонент будет возвращать разные столбцы O/P на основе схемы таблиц.

Решение, необходимое для: - Как принимать любые входные данные без какого-либо сопоставления в компоненте Destination DataFlow (либо любым существующим компонентом, либо пользовательским компонентом)?

+0

Это скорее похоже на вопрос разработчика процедурного кода, чем вопрос разработчиков ETL. Вы уверены, что инструмент ETL является правильным решением для вашего текущего сценария? –

+0

Ну, я сделал это с помощью индивидуального сопоставления для отдельных таблиц .. просто хотел знать, есть ли способ, которым мы можем это сделать ..: P..months back, я начал SSIS .. должен многому чему научиться ..: P –

ответ

0

Фиксированная структура потока данных предназначена для проверки достоверности данных и оптимизации. Все его компоненты будут иметь фиксированные столбцы ввода и вывода. Я бы предложил следующие возможности:

  • Написать поток данных для каждой возможной схемы. Вероятно, существует ограниченное число возможностей. Вы могли бы уменьшить усилия этой задачи, используя BIML, который мог бы создать структуру пакета для вас. Это также может привести к возможности параллельной загрузки.
  • Используйте задачу сценария вместо потока данных. В задаче скрипта напишите строки для каждого входа в таблицу.

м

+0

да .. звучит так, как будто я спросил немой вопрос ..; P .. изначально я думал об использовании задачи скрипта и массовой копии, но проблема была в производительности. я должен был пойти на компромисс с этим из-за большого объема данных. Я уже делал это с индивидуальным сопоставлением, просто хотел узнать, возможно ли что-то вроде динамического сопоставления или нет ... Спасибо .. –

0

Если вам необходимо пройти несколько входов для одного компонента сценария, единственный способ, которым я знаю, чтобы сделать это, передавая несколько входов в UNION ALL компонента, а затем передавая один выход из UNION ALL к сценарию.

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

 Смежные вопросы

  • Нет связанных вопросов^_^