Anda di halaman 1dari 15

Membuat Koneksi Pentaho dengan Database MySql .

1. Pastikan komputer yang anda gunakan terdapat DBMS MySQL yang berjalan dengan normal.
Dan siapkan database yang akan diakses. Dalam modul ini, database yang akan diakses ialah
classicmodel. Silahkan import file classicmodels.sql yang ada dalam folder kedalam MySQL
didalam komputer anda.
2. Untuk dapat menghubungkan pentaho dengan MySQL diperlukan pemasangan JDBC connector.
Caranya yaitu dengan mengcopykan file mysql-connector-java-5.1.27-bin.jar (terlampir dalam
folder) ke dalam direktori lib pada pentaho data integration. Jika didalam komptuter yang
digunakan menggunakan jdk versi 1.8 (jdk1.8) maka file connector yang digunakan ialah mysql-
connector-java-5.1.40-bin.jar (terlampir dalam folder). Langkah berikutnya ialah membuat

deskripsi koneksi.
3. Buatlah sebuah file transformation baru.

4. Pada panel sebelah kiri, pilih tab View. Pada tab tersebut terdapat folder Database Connection
dan belum ada deskripsi koneksi satu pun dalam folder tersebut.

5. Arahkan pointer mouse ke folder Database connection, kemudian tekan tombol kanan pada
mouse dan pilihlah menu New.
6. Akan muncul windows Database Connection.
7. Berikut adalah property yang harus ditentukan:
a. Panel kiri pastikan terpilih halaman General .
b. Connection Name : Setiap deskripsi koneksi harus diberi nama yang unik. Pada modul
ini beri nama koneksi ClassicModel.
c. Connection Type : MySQL
d. Access : Native (JDBC)
e. Hostname : sesuaikan dengan lokasi database MySQL anda. Pada modul ini diasumsikan
seluruh database berada didalam komputer yang sama dengan pentaho, sehingga host
yang digunakan localhost.
f. Database Name : Masukan nama database yang akan diakses. Pada modul ini kita akan
menggunakan database classicmodel.
g. Port Number : sesuaikan dengan port database MySQL yang anda gunakan. Default port
MySQL yang digunakan ialah port 3306.
h. User Name: Sesuaikan dengan username MySQL yang anda gunakan. Default dari
username adalah root jika belum diubah
i. Password : isi dengan password dari username mysql.
8. Tekan tombol Test. Jika tidak ada masalah pada deskripsi koneksi, akan muncul windows
Database Connection Test OK.
9. Untuk memastikan bahwa koneksi dapat mengakses beragam objek pada database, tekan
tombol explore.

10. Tutup windows Database Explorer dan juga windows databases connection.
11. Sekarang pada palnel kiri tab View, deskripsi koneksi yang baru dibuat sudah muncul.

12. Klik kanan pada koneksi database yang telah dibuat, kemudian klik share.
13. Langkah diatas dilakukan agar koneksi yang telah dibuat dapat digunakan oleh file
transformation lain.

Membaca dan Menulis Tabel Database

Spoon menyediakan step Table Input untuk keperluan membaca data dari database, dan step Table
Output untuk keperluan menulis data kedalam database. Pada modul ini, sumber data yang akan
digunakan yaitu table Orders, ordersDetail dan customer. Sedangkan target databasenya adalah
database dbLatihan dan table nya ialah ringkasan_order.

1. Buatlah sebuah database bernama dblatihan pada database latihan.


2. Buat file transformation baru.
3. Buatlah deskripsi koneksi bernama MySQL-DbLatihandan set agar terhubung dengan
dbLatihan, lalu jadikan sebagai koneksi share. Jika berhasil pada spoon anda akan
terdapat 2 buah koneksi yang dishare.

4. Bawa step Table Input ke ruang kerja, selanjutnya masuk kedalam property step table
input.
5. Pilih Connection -> ClassiscModels, isikan SQL query sebagai berikut :

6. Tekan tombol preview untuk melihat hasil query nya.

7. Bawa step Table Output ke ruang kerja, dan buat hop dari step Table Input ke Table
Output. Masuk kedalam property table output.
a. Connection : MySql-dbLatihan
b. Targettable : ringkaran_order
c. Truncate table: pilih property ini agar setiap kali transformation dijalankan, step
akan men-truncate (mengosongkan data) target table terlebih dahulu.

8. Tabel ringkasan_order merupakan target table yang saat ini belum ada. Maka buatlah
terlebih dahulu table tersebut.

9. Jalankan transformation seperti biasa. Setelah anda jalankan, jika tidak ada kesalahan,
anda akan melihat pada execution result seperti gambar berikut. Terdapat 236 baris
data yang diproses.

Join

Join adalah konsep yang sangat umum dalam dunia database, khususnya dalam database
relational. Jika table-tabel yang berelasi berada dalam sebuah database, anda tidak
memerlukan pentaho untuk melakukan join, biarkanlah dilakukan oleh database bersangkutan.
Join pada pentaho sangat berguna jika data yang akan dijoin berasal dari domain yang berbeda.
Misalkan dari file excel akan dijoin dengan data yang berasal dari teks atau dari database.

Pada modul ini akan membuat join dengan hasil sama seperti pada modul sebelumnya. Hanya
saja pada modul ini akan melibatkan 3 sumber data yang berbeda yaitu file excel, teks dan
database. File yang digunakan dalam modul terlampir bersama modul.

Yang akan dilakukan ialah membuat join dari file orders.xls dan file orderdetails.txt
menggunakan step Merge join. Dengan demikian akan ada 2 jalur baris data yang masuk ke
step marge join, yaitu jalur baris data dari orders.xlx dan jalur baris data dari file
ordersdetails.txt

1. Buat transformation baru.


2. Bawa step Microsoft Excel Input ke ruang kerja untuk membentuk jalur baris data
pertama. Set properties step ini agar dapat memproses file orders.xls.
a. Pastikan pilihan pada Spread sheet type (engine) : Excel 97-2003 XLS
b. Pilih file or directory dengan menekan tombol browse kemudian pilih file
orders.xls. Jangan lupa tekan tombol Add

c. Pada tab Sheet, klik tombol get sheetnames, untuk memilih sheet mana pada file
xls yang akan digunakan.
d. Pindah ke tab Fields. Tekan tombol Get Fields.
e. Pastikan bahwa tipe data untuk fields orderNumber dan CustomerNumber
adalah integer.

3. Bawa step short rows dengan tujuan untuk mengurutkan baris berdasarkan kunci join.
pada modul ini, yang menjadi kunci ialah orderNumber. Buat hop dari step Microsoft
Excel Input ke step Short Rows. Set properties step rows, tambahkan baris berikut pada
panel Fields.
No Fieldname Ascending Case sensitive Presorted
compare
1 orderNumber Y N N
4. Sekarang kita akan membuat jalur ke-2 yaitu jalur dari file orderDetails.txt. Masukan
step Text File Input ke ruang kerja. Set properties step ini agar memproses file tersebut.
File orderdetails.txt merupakan file CSV.

5. Pada tab Fields, pastikan Type dan Format field-nya sebagai berikut :
6. Kita akan menghitung perkalian dari field quantityOrdered dengan field priceEach.
Bawa step Calculator ke ruang kerja. Buat hop dari step Text File Input ke Calculator.
Set property dari step calculator.

7. Sama seperti pada jalur partama, jalur kedua ini pun harus diurutkan sesuai dengan field
kuncinya yaitu orderNumber. Bawa step Sort Rows keruang kerja.
8. Set property Sort Rows sama persis seperti Sort Rows pada jalur 1.

9. Bawa step Marge Join ker ruang kerja. Buat dua buah hop, pertama dari Sort Rows ke
marge join dan dari Sort rows 2 ke marge join.
10. Sunting property marge joint seperti berikut :

11. Klik OK. Jika ada windows Warning! tekan saja tombol I Understand. Jika tidak ada
masalah, maka hasil preview data akan terlihat seperti gambar berikut ini :
12. Bawa step Group By ke ruang kerja. Buat hop dari step Marge Join ke Group By. Set
Properti pada step Group By seperti berikut ini:
13. Field customerNumber diperlukan untuk proses selanjutnya yaitu sebagai field kunci
untuk proses lookup ke table customers.
14. Berikutnya kita ambil customerName dengan field Kunci customerNumber. Bawa step
Database Lookup keruang kerja. Buat hop dari step Group By ke Step Database Lookup.
Set property pada Database Lookup.

15. Bawa step Select Value untuk meubah posisi field dan meubah meta data field total.
Buat hop dari Database Lookup ke Select value. Set Properti dari Select Value.
16. Jika tidak ada kesalahan maka akan terlihat hasil seperti berikut :

17. Langkah terakhir ialah menyimpan data tersebut kedalam table ringkasan_order pada
database dbLatihan.
18. Bawa step Table Output kedalam halaman kerja. Buat hop dari select Values ke Table
Output. Set properties dari Table Output.
19. Simpan file transformasi anda, kemudian jalankan. Jika tidak ada kesalahan, maka table
ringkasan_order akan terisi data sebelumnya.

Anda mungkin juga menyukai