2014-12-09 4 views
3

Привет, я очень новичок в чайнике-чайнике пентахо. Я хочу образец программы, которая принимает входные данные из файла .csv и вставляет в базу данных, и через определенное время, например, 2:30, будет запущено задание, и несколько записей из этой базы данных (разработчик sql) в формате csv будут отправляться по электронной почте пользователю. Я использую Java, чтобы вызвать преобразование типа:Образец программы для преобразования и работы в пентахо-чайнике с использованием Java (затмение)

public static void main(String[] args) { 
    try { 
      KettleEnvironment.init(); 
      TransMeta metaData = new TransMeta("hello.ktr"); 
      Trans trans = new Trans(metaData); 
      trans.execute(null); 
      trans.waitUntilFinished(); 
      if (trans.getErrors() > 0) { 
       System.out.print("Error Executing transformation"); 
      } 
    } 
    catch(KettleException e) { 
      e.printStackTrace(); 
    } 
} 

Здесь я создал программу HelloWorld (hello.ktr) в ложке и назвал его в Java коде. Я хочу сделать подобное. Преобразование и работа в ложке и вызов в моем Java-коде. любезно помогите мне с этим.

+0

Fail быстро! Этот костюм Pentaho - это мусор и был источником многих проблем, которые мы имели в одной из систем, с которыми я работал недавно. Если вы можете найти другое решение в своей проблеме, вы должны. – DroidT

+0

На самом деле мне нужно сделать пример программы (как начать с сюитом) и объединить с java. Просто хочу проверить, работает ли он. Если вы можете поделиться образцом, который был бы полезен сейчас. Спасибо – Saket

+0

DroidT, вы можете подробно рассказать о проблемах, которые у вас были, я нахожусь в процессе выбора решения для своей компании, и это может быть полезной информацией при принятии решения, спасибо –

ответ

0

Почему вы не планируете запуск программы в 2:30 с помощью crontab? В lunux, создать скрипт, что вы хотите, например, start.sh и добавьте следующий код сценария:

#!/bin/bash 
30 2 * * * /root/transScript.sh /dev/null 2>&1 | mail -s "Cronjob ouput" [email protected] 

Затем создать другой сценарий, может быть, под названием transScript как /root/transScript.sh и добавить следующее в сценарии для запуска преобразование с использованием панорамирования. pan - это инструмент, который управляет преобразованиями чайников через командную строку. Для выполнения заданий в кешетах с помощью командной строки вам необходимо использовать кухню.

$ cat pdi.sh 
#!/bin/bash 
/opt/data-integration/pan.sh -file=/Users/saket/Transformations/hello.ktr 
/level:Basic 

Тогда все, что вам нужно сделать, это запустить эту команду, чтобы начать запланированное задание:

crontab start.sh 
+0

На самом деле, мне нужно создать большое приложение с огромным объемом преобразование данных. И каждый процесс будет автоматизирован в разные сроки w.r.t страны. Поэтому я искал его формат. Если простой работает, то я буду продвигаться вперед с фреймворком, подобным Spring в Java, интегрированным с Kettle и планировщиками. – Saket

+0

Hi Saket.I рекомендовал бы автоматизировать ваш чайник Преобразование и задания с использованием mule esb. Мы используем его в нашей компании для интеграции и автоматизации приложений, включая автоматизацию выполнения преобразования чайников. Любая точка Mule основана на затмении, поэтому использование любой точки mule будет легко. Если вы заинтересованы в этом подходе, дайте мне знать, и я могу предоставить дополнительную информацию о том, как настраивать преобразования чайников в любой точке mule esb, чтобы вы могли автоматизировать преобразования вашего чайника и делать все виды интеграции. –

+0

Да, Грузия была бы очень полезной .... – Saket