Pentaho-kettle: необходимо динамически создавать задания ETL на основе пользовательского ввода - PullRequest
7 голосов
/ 07 июля 2011

В моем приложении пользователь может указать формат своего файла. На основе пользовательского ввода мы динамически создаем пакет служб SSIS.

http://lakshmik.blogspot.com/2005/05...eate-ssis.html

Динамически созданный пакет служб SSIS используется для обработки файлов пользователя.

Мы хотим оценить Pentaho-Kettle для этого требования. Возможно ли это с помощью Kettle для динамического создания заданий ETL на основе пользовательских данных?

Если не Pentaho, существует ли какой-либо инструмент Java ETL, который позволяет динамически создавать задания ETL?

Ответы [ 2 ]

0 голосов
/ 11 июля 2011

Это возможно и не очень сложно.

Вы можете использовать API Kettle для динамического создания преобразований, которые могут делать все, что делает Kettle. Дизайнер GUI использует API для создания преобразований, поэтому все, что вы можете сделать с GUI, вы можете сделать через API.

Если вы посмотрите в исходное дерево 'test', вы найдете множество примеров того, как динамически создавать преобразования.

0 голосов
/ 08 июля 2011

Я не знаю о других, но это традиционно довольно сложно в Kettle, но люди делают это по-разному.

Лучшим вариантом для этого является (совершенно новый) шаг внедрения, который позволяет вам делать действительно умные вещи с метаданными - но он работает только для некоторых основных шагов. Я думаю, что он будет делать то, что вы хотите, читайте об этом в блоге Мэтта Кастерса (PDI Creator и бог) здесь:

http://www.ibridge.be/?s=inject&submit=Go

Если это не сработает; тогда другие ваши варианты - пойти по пути общего имени поля (неприятно) или динамически сгенерировать преобразование. Это проще, чем кажется, но вам потребуется гораздо более активное участие в Java, чем обычно для инструмента ETL.

...