Pendahuluan
Regex atau Regular Expression adalah suatu konstruksi pemrosesan text yang sangat terkenal di dunia programming terutama di PERL. Kettle juga tidak ketinggalan dalam menggunakan konstruksi ini untuk efisiensi penulisan dan pengenalan pola teks. Step yang digunakan adalah Regex Evaluation.
Anda dapat mencoba Regex Evaluation ini pada dari contoh file transformation dan file log yang digunakan dapat Anda download di akhir dari artikel wiki ini.
Penjelasan Contoh
- Transformation akan mengambil isi dari file log tersebut melalui step [Tomcat Logs] (Text Input).
- Pengecekan pola dengan menggunakanv step [Validasi Regex] (Regex Evalution) dimana kita hanya mengambil baris data yang berisi informasi tanggal dan pesan log dari bari yang sama. Simpan hasil pengecekan - berupa nilai boolean Y/N - ke field result.
- Filter atau saring data dari step sebelumnya berdasarkan field result dengan menggunakan step [Filter Row]. Data yang cocok dengan result = Y akan menuju step [Tanggal] sedangkan jika tidak cocok akan menuju ke step [Others].
- Anda dapat melihat hasil filter ini dengan cara melakukan preview pada step dummy [Others] dan [Tangga].
- Pisahkan lagi isi yang sesuai dengan pola ke dalam 3 field (tanggal, jam and pesan) dengan menggunakan step [Hasil Akhir] (Modified Java Script Value).
- Selesai
Hasil
File log asli dan hasil preview data pada step [Hasil Akhir] yang dieksekusi di Spoon Kelemahan
Kekurangan dalam penggunaan pendekatan dalam contoh ini adalah penggunaan step Modified Java Script untuk memasukkan kode regex kita. Hal ini disebabkan sebagai step yang menggunakan scripting maka proses yang digunakan dalam step akan lebih mahal dan lama karena kode di dalam step ini harus di- interpret setiap kali proses. Jika penggunaan split text menggunakan regex tidak terhindarkan, lebih baik membuat plugin sendiri untuk keperluan ini.
Referensi
- http://www.regular-expressions.info/tutorial.html
- http://wiki.pentaho.com/display/EAI/Regex+Evaluation
Info Lebih Lanjut
Jika Anda masih mengalami kesulitan dan ingin informasi lebih lanjut silahkan gabung ke user group kita di http://groups.google.com/group/pentaho-id atau di http://pentaho-id.ning.com.
|
|