Akses Transformation dengan JDBC

86 views
Skip to first unread message

Feris Thia

unread,
Oct 6, 2009, 10:08:22 AM10/6/09
to User Group Pentaho Indonesia

Hi All,

Untuk Anda para programmer Java yang banyak menggunakan Kettle tentu sering ada pertanyaan
- Gw sudah pake Kettle ini untuk integrasikan data. Bisa diakses dengan satu interface via kode Java saya ga ya ?

Jawaban untuk pertanyaan di atas saya coba sajikan dalam artikel berikut :

Mudah-mudahan berguna. Dan semoga sekarang membuat report di sistem yang "pulau data"-nya banyak dan diakses dengan JDBC tentu tidak usah pusing lagi ;)

--
Thanks & Best Regards,

Feris Thia
Business Intelligence Consultant
PT. Putera Handal Indotama
Phone  : +6221-30119353
Fax      : +6221-5513483
Mobile : +628176-474-525
http://www.phi-integration.com
http://pentaho.phi-integration.com

suseno

unread,
Oct 7, 2009, 3:15:05 AM10/7/09
to penta...@googlegroups.com
guys,
 
gw baru belajar menggunakan spoon.
Skrg ini sdg bingung bagaimana caranya utk mengirim email otomatis ke user.
Email ini akan berisi file attachment.
 
thx atas perhatiannya.
 
 

Andreas

unread,
Oct 7, 2009, 3:28:43 AM10/7/09
to Pentaho User Group Indonesia
Apa hubungannya ETL sama ngirim e-mail?
Sorry nih kayaknya saya kurang mengerti pertanyaannya.

Anda baru belajar menggunakan spoon lalu ingin ngirim e-mail otomatis
ke user? Kayaknya ini 2 hal yang berbeda deh.

Silahkan baca2 di websitenya phi dulu biar dapat gambaran, bisa di-
akses disini http://pentaho.phi-integration.com/

Regards,
Andreas

Feris Thia

unread,
Oct 7, 2009, 3:34:23 AM10/7/09
to penta...@googlegroups.com
Hi Pak Suseno dan Pak Andreas,

Kebetulan Kettle memang bisa mengirim email hasil ETL ataupun file lainnya. Cukup sederhana, saya buat contohnya sebentar. Ntar saya kirim file contohnya ya ke milis ya.

Feris Thia

unread,
Oct 7, 2009, 3:54:44 AM10/7/09
to penta...@googlegroups.com
Pak Suseno,

Attached adalah contoh job untuk mengirimkan attachment. SMTP account sudah saya ubah. Isi sesuai konfigurasi setting SMTP Anda.

Keterangannya ada pada artikel berikut :


Semoga membantu..

Regards,

Feris

2009/10/7 suseno <sus...@gmail.com>
kirim_attachment.kjb

suseno

unread,
Oct 7, 2009, 4:25:12 AM10/7/09
to penta...@googlegroups.com
thx pak feris atas responsnya yg cepat.
:-)
 
saya sdh tes create job utk send email otomatic dengan menambahkan attachment.
 
saat ini saya skrg sedang review  binatang apa kettle ini.
 
saya sedang uji transfer data via ftp dari cabang ke kantor pusat.
data yang ditransfer sifatnya urgent dan penting sekali utk kantor pusat.
 
Bagaimana caranya menggaransi bahwa proses transfer dari cabang berhasil ?
 
koneksi data yg digunakan adalah telkomflash . Lokasi cabang tidak terjangkau oleh telkomspeedy dan pihak kantor cuma mampu support budget telkomflash paket murah  :-(
Hal ini sangat rawan karena sering disconect atau terkena timeout saat transfer data.
 
Gambaran di benak saya yaitu bila proses ftp gagal.. maka akan dicoba lagi utk transfer .. bila gagal dicoba terus sampai berhasil..
Bila berhasil akan dikirim email ke user tertentu bahwa proses berhasil
 
Bagaimana caranya utk mengimplementasikan hal diatas..?

Feris Thia

unread,
Oct 7, 2009, 4:34:13 AM10/7/09
to penta...@googlegroups.com
Pak... Ini skenario yang lumrah kok, terutama dengan perusahaan yang banyak cabang dan juga yang mengimplementasikan POS system.

Solusinya biasanya campuran antara kemampuan Kettle + OS. Untuk fasilitas transfer FTP Kettle sudah tidak diragukan lagi kemampuannya.

Namun di luar kemampuan ETL, hal-hal berikut perlu ditambahkan :
- Masukkan informasi checksum untuk setiap file, sehingga kita bisa memastikan transfer sudah berhasil atau tidak
- Di Linux ada suatu perintah untuk melihat apakah suatu file sedang dalam tahap di-write. Cuma saya lupa perintahnya Pak :p Jika digabungkan akan memastikan suatu transfer berhasil atau tidak.
- Gabungkan dengan scripting lain yang berhubungan dengan OS dengan Kettle sebagai controllernya dengan step Batch di job Kettle.
- Dapat kembalian hasil eksekusi, jika berhasil / gagal email ke pihak yang terkait

Dengan demikian solusi tetap harus membuat flow kontrol yang kompleks. Untuk contoh yang agak sederhana cara Kettle menghandle flow bisa dilihat di artikel berikut :


Semoga membantu Pak.

Regards,

Feris

2009/10/7 suseno <sus...@gmail.com>
thx pak feris atas responsnya yg cepat.
:-)
 
saya sdh tes create job utk send email otomatic dengan menambahkan attachment.
 
saat ini saya skrg sedang review  binatang apa kettle ini.
 
saya sedang uji transfer data via ftp dari cabang ke kantor pusat.
data yang ditransfer sifatnya urgent dan penting sekali utk kantor pusat.
 
Bagaimana caranya menggaransi bahwa proses transfer dari cabang berhasil ?
 
koneksi data yg digunakan adalah telkomflash . Lokasi cabang tidak terjangkau oleh telkomspeedy dan pihak kantor cuma mampu support budget telkomflash paket murah  :-(
Hal ini sangat rawan karena sering disconect atau terkena timeout saat transfer data.
 
Gambaran di benak saya yaitu bila proses ftp gagal.. maka akan dicoba lagi utk transfer .. bila gagal dicoba terus sampai berhasil..
Bila berhasil akan dikirim email ke user tertentu bahwa proses berhasil
 
Bagaimana caranya utk mengimplementasikan hal diatas..?

Muhammad Edwin

unread,
Oct 7, 2009, 4:35:59 AM10/7/09
to penta...@googlegroups.com
btw, mungkin rada OOT nih,
kebetulan saya sedang menghadapi masalah yg kurang lebih hampir sama,
dan kemungkinan saya akan pake pentaho untuk solve masalah ini,
yang saya ingin tanyakan,
saya pasti akan menggunakan library punya pentaho,
apakah saya harus membayar ke pentaho?
dan bagian mana dari pentaho yang "gratis" dan mana yang harus "bayar",

terima kasih sebelumnya.

2009/10/7 suseno <sus...@gmail.com>:

Feris Thia

unread,
Oct 7, 2009, 4:42:43 AM10/7/09
to penta...@googlegroups.com
Hi Pak Muhammad Edwin,

Sejauh pengetahuan saya, lisensi Kettle (Pentaho Data Integration) adalah LGPL sehingga menggunakan librarynya code kita tidak harus open source. Tapi tetap harus mencamtumkan lisensi GPL dengan kode kita pada saat didistribusikan.

Regards,

Feris

2009/10/7 Muhammad Edwin <edwi...@gmail.com>

btw, mungkin rada OOT nih,
kebetulan saya sedang menghadapi masalah yg kurang lebih hampir sama,
dan kemungkinan saya akan pake pentaho untuk solve masalah ini,
yang saya ingin tanyakan,
saya pasti akan menggunakan library punya pentaho,
apakah saya harus membayar ke pentaho?
dan bagian mana dari pentaho yang "gratis" dan mana yang harus "bayar",

terima kasih sebelumnya.

Feris Thia

unread,
Oct 7, 2009, 4:44:39 AM10/7/09
to penta...@googlegroups.com
Mohon maaf,

Maksud saya LGPL (Less GPL).

2009/10/7 Feris Thia <fe...@phi-integration.com>

Tapi tetap harus mencamtumkan lisensi GPL dengan kode kita pada saat didistribusikan.

suseno

unread,
Oct 7, 2009, 10:10:14 PM10/7/09
to penta...@googlegroups.com
Dear All,
 
Saya skrg ini memiliki dua server database berbeda. Server A dan server B.
Hal yang ingin saya lakukan adalah melakukan replikasi database dari dua server tersebut.
Di server A banyak tabel yang digenerate secara dynamic via program.
Penamaan tabel yang dynamic memiliki aturan tersendiri. misal I0901,I0902 ,I0903  dst..
Bagaimana melakukan proses replikasi utk tabel yang digenerate secara dynamic ke server B  menggunakan kettle ?
 
Thx atas masukannya
 
 
 

Andreas

unread,
Oct 7, 2009, 10:20:31 PM10/7/09
to Pentaho User Group Indonesia
Cara yang paling mudah dan paling simple + banyak kekurangannya. :)
Delete Table di Server B -- Transfer data dari Server A ke Server B.

Apakah Penamaan di Server B juga ada aturan sendiri? Atau hanya
mengikuti penamaan dari server A? Kalau sama kayak Server A, ya bisa
pake cara seperti di atas, tapi kalau ada penamaan sendiri, ya harus
design ETL yang lebih kompleks.

Regards,
Andreas

suseno

unread,
Oct 7, 2009, 10:40:47 PM10/7/09
to penta...@googlegroups.com
to pak andreas thx atas responsnya

di server B hanya mengikuti isi yang ada di server A.

Bila mengikuti saran pak andreas sptnya ada kendala bila database sdh
berukuran sangat besar.
Mungkinkah di kettle ada cara utk mendeteksi tabel baru yang muncul di
server yang tidak ada di server B.
Bila ada tabel baru, maka tabel ini saja yang di transfer ke server B.

Mohon masukannnya

Andreas

unread,
Oct 7, 2009, 10:55:27 PM10/7/09
to Pentaho User Group Indonesia
Wah baru denger saya ada cases yang kayak gini.
Yang ingin di replikasi bukan cuma data tapi malah table2 nya juga
sekalian. Maksudnya ingin Mirror-ing yah?

Btw: Pak Suseno untuk lain kali mohon create thread baru tersendiri
untuk membahas masalah, jangan hanya mereply thread lama lalu ganti
subject nya.

Regards,
Andreas

Admin IyaLa

unread,
Oct 8, 2009, 12:58:52 AM10/8/09
to penta...@googlegroups.com
Hai pak Feris,

Untuk tutorial mengirim email nya bisa di tambahkan sedikit fasilitas zip atau rar. sepertinya akan menjadi lebih bagus.. karena rar file nya lebih dr xls.

Terus kl sudah di zip, apakah yg dikirim itu file zip nya saja atau file xls nya juga?

Cheers,

Biya



2009/10/7 Feris Thia <fe...@phi-integration.com>

Feris Thia

unread,
Oct 8, 2009, 2:01:27 AM10/8/09
to penta...@googlegroups.com
Hi Pak Biya,

Yup, sudah ada fasilitas tersebut di step Mail. Jadi ada pilihan zip filenya ;)

Regards,

Feris

2009/10/8 Admin IyaLa <admin...@gmail.com>

Hai pak Feris,

Untuk tutorial mengirim email nya bisa di tambahkan sedikit fasilitas zip atau rar. sepertinya akan menjadi lebih bagus.. karena rar file nya lebih dr xls.

Terus kl sudah di zip, apakah yg dikirim itu file zip nya saja atau file xls nya juga?

Cheers,

Biya

W

unread,
Oct 8, 2009, 2:05:58 AM10/8/09
to penta...@googlegroups.com
Beuh .., bisa juga toh ...

Bener2 harus meluangkan waktu untuk coba2 tool ini nih ...

Salam,
Wildan
---
---
OpenThink Labs
http://wildanm.wordpress.com

Making IT, Business and Education in Harmony

>> 087884599249

Y! : hawking_123
Linkedln : http://www.linkedin.com/in/wildanmaulana



2009/10/8 Feris Thia <fe...@phi-integration.com>:

Feris Thia

unread,
Oct 11, 2009, 12:41:17 PM10/11/09
to penta...@googlegroups.com
Pak Suseno,

Kettle atau ETL lainnya bukan jawaban untuk masalah seperti ini. Tapi tentu saja bisa dirancang untuk mendekatinya dengan berbagai step database relasional yang ada (Table Input, Table Output, Execute SQL, dsbnya).

Apalagi jika terdapat index yang mengikuti. Sebaiknya tetap mengambil pendekatan engine dari database sendiri dengan skenario masing2 (mekanisme push-pull, log shipping, dsbnya). SQL Server memiliki skenario yang cukup lengkap, MySQL sendiri juga memiliki master-slave replication yang sederhana tapi cukup handal, dsbnya.

Kesimpulan akhir: walaupun bisa dipaksakan, semua ETL bukan jawaban yang baik untuk meng-"cloning" dan memonitor "detak jantung" secara real time dari suatu sistem database.

Regards,

Feris

2009/10/8 suseno <sus...@gmail.com>

to pak andreas thx atas responsnya

di server B hanya mengikuti  isi yang ada di server A.

Bila mengikuti saran pak andreas sptnya ada kendala bila database sdh
berukuran sangat besar.
Mungkinkah di kettle ada cara utk mendeteksi  tabel baru yang muncul di
server yang tidak ada di server B.
Bila ada tabel baru, maka tabel ini saja yang di transfer ke server B.

Mohon masukannnya
Reply all
Reply to author
Forward
0 new messages