1
PETUNJUK PENGGUNAAN APLIKASI OPEN SOURCE PENTAHO
DISUSUN OLEH: 1. Azkiyatu Rahimah
1301065326
2. Ratna Juwita
1301065414
3. Made Arya Pratiwi
1301071392
Kelas: 07PAM
BINUS UNIVERSITY JAKARTA 2012 / 2013
2
TUTORIAL PENTAHO DATA INTEGRATION
Pentaho Data Integration (PDI) merupakan aplikasi yang digunakan untuk ETL (Extract, Transform, dan Load). Berikut akan dijelaskan cara menggunakan aplikasi ini : 1. Membuka Aplikasi PDI 1. Buka folder dimana PDI disimpan. Lalu double klik pada spoon.bat
2. Setelah di-klik akan muncul window PDI-nya
2. Membuat Transformasi Pada PDI
3 1. Klik File – New – Transformation atau CTRL + N
2. Maka akan muncul lembar kerja transformasi baru
3. Untuk membuat transformasi ETL, pertama harus membuat koneksi database yang dibutuhkan. Pilih tab view lalu klik kanan pada Database Connection dan pilih New
4. Maka akan muncul window Database Connection. - Isikan nama pada Connection Name, nama yang diisikan bebas. Pada contoh diisi dengan dufan. - Pilih Connection Type sesuai dengan DBMS yang dibutuhkan. Pada contoh dipilih MySQL.
4 - Untuk Host Name, jika tidak tersambung dengan client-server isi dengan localhost. - Database Name isi dengan nama database yang ingin diakses. Pada contoh diisi dengan dbdufanlive - Untuk port number sudah di-set default otomatis ketika memilih connection type jika port DBMS yang akan diakses tidak mengalami perubahan port. Jika port diubah maka port number yang diisi harus sesuai dengan port number yang sudah mengalami perubahan. - User Name diisi default dengan root jika pada DBMS tidak di-set user name dan passwordnya. - Lalu klik OK jika koneksi yang dibuat sudah dites dan terbukti tidak error
- Untuk mengetes apakah koneksi yang telah dibuat dengan benar klik Test, maka akan muncul pesan berhasil.
- Jika koneksi yang di-test ternyata error makan akan muncul pesan error
5 5. Membuat ETL untuk dimensi yang datanya berasal dari database sumber. Dalam contoh akan dijelaskan membuat dimensi harga tiket masuk (dim_htm). - Pilih table input untuk memasukkan data yang berasal dari tabel database sumber
- Klik pada gambar tabel input, maka akan muncul window untuk tabel input
- Pada combo box Connection pilih koneksi yang telah dibuat sebelumnya. Jika ingin membuat koneksi baru bisa klik New.
- Lalu klik Get SQL select statement untuk memilih tabel pada database yang ingin digunakan. Bisa juga langsung query pada tempat yang sudah disediakan. Maka akan muncul window Database Explorer. Pilih tm_htm dan klik OK
6
- Setelah itu query akan muncul. Jika tidak ada modifikasi pada atribut klik OK
- Setelah itu klik transform dan drag add sequence untuk membuat surogate key. Kemudian klik table input dan tekan shift, tahan shift dan drag dari table input menuju add sequence
- Klik add sequence dan start value dimulai dari satu dan increament (penambahan nilai) nya satu
7
- Kemudian klik transform, pilih dan drag Select Values yang berguna untuk mapping dari database sumber ke database star skema. Kemudian klik add sequence dan tekan shift, tahan shift dan drag dari add sequence menuju Select values
- Kemudian klik output, pilih dan drag insert/update. Kemudian klik select values dan tekan shift, tahan shift dan drag dari select values menuju insert/update.
- Kemudian klik dua kali pada insert/update dan klik new connection untuk membuat koneksi pada database star skema.
8
- Pada saat membuat new connection : Isikan nama pada Connection Name, nama yang diisikan bebas. Pada contoh diisi dengan star_skema. Pilih Connection Type sesuai dengan DBMS yang dibutuhkan. Pada contoh dipilih MySQL. Untuk Host Name, jika tidak tersambung dengan client-server isi dengan localhost. Database Name isi dengan nama database yang ingin diakses. Pada contoh diisi dengan tiket_ancol Untuk port number sudah di-set default otomatis ketika memilih connection type jika port DBMS yang akan diakses tidak mengalami perubahan port. Jika port diubah maka port number yang diisi harus sesuai dengan port number yang sudah mengalami perubahan. User Name diisi default dengan root jika pada DBMS tidak di-set user name dan passwordnya. Lalu klik OK jika koneksi yang dibuat sudah dites dan terbukti tidak error. Kalau koneksi sukses klik OK
9
- Kemudian browse target table untuk menentukan table mana yang kita inginkan.
- Klik dua kali pada select values kemudian klik edit mapping untuk penyocokan atribut antara database sumber dengan database tujuan
10 - Klik dua kali kembali pada insert/update kemudian klik get fields untuk mengambil atribut pada tabel dim_htm. Kemudian hapus atribut yang bukan merupakan key. Kemudian klik get update fields, pada kolom Update ditentukan mana atribut yangdapat di update dan tidak dapat di update. Untuk contoh sk_htm tidak dapat d update sedangkan atribut lain dapat d update. Setelah itu klik OK.
- Kemudian klik run
- Kemudian save transformation
11
- Jika terdapat error maka akan terlihat seperti ini
- Jika sukses maka di setiap gambar akan muncul tanda ceklis berwarna hijau seperti gambar di bawah ini :
6. Membuat ETL untuk dimensi yang datanya di-generate sendiri. Dalam contoh akan dijelaskan membuat dimensi unit (dim_unit). - Klik input pilih dan drag generate rows
12
- Klik dua kali pada generate row kemudian isi unit unit yang diinginkan.
- Kemudian klik transform, pilih dan drag row normaliser.
13
- Row normaliser berfungsi untuk menormalisasi rows yang sudah di generate menjadi bentuk kolom.
- Setelah itu klik transform dan drag add sequence untuk membuat surogate key. Kemudian klik row normaliser dan tekan shift, tahan shift dan drag dari row normaliser menuju add sequence
14
- Kemudian klik transform, pilih dan drag Select Values yang berguna untuk mapping dari database sumber ke database star skema. Kemudian klik add sequence dan tekan shift, tahan shift dan drag dari add sequence menuju Select values
- Kemudian klik output, pilih dan drag insert/update. Kemudian klik select values dan tekan shift, tahan shift dan drag dari select values menuju insert/update.
- Klik new connection untuk membuat koneksi pada database star skema
15
- Pada saat membuat new connection : Isikan nama pada Connection Name, nama yang diisikan bebas. Pada contoh diisi dengan star_skema_unit. Pilih Connection Type sesuai dengan DBMS yang dibutuhkan. Pada contoh dipilih MySQL. Untuk Host Name, jika tidak tersambung dengan client-server isi dengan localhost. Database Name isi dengan nama database yang ingin diakses. Pada contoh diisi dengan star_schema Untuk port number sudah di-set default otomatis ketika memilih connection type jika port DBMS yang akan diakses tidak mengalami perubahan port. Jika port diubah maka port number yang diisi harus sesuai dengan port number yang sudah mengalami perubahan. User Name diisi default dengan root jika pada DBMS tidak di-set user name dan passwordnya. Lalu klik OK jika koneksi yang dibuat sudah dites dan terbukti tidak error. Kalau koneksi sukses klik OK
16
- Kemudian pilih target table pada database star skema yaitu dim_unit
17
- Kemudian klik OK
18 - Klik dua kali pada select value kemudian klik edit mapping.
- Kemudian lakukan penyocokan antara data sumber dengan atribut tabel database tujuan
- Kemudian klik OK
19
- Klik dua kali kembali pada insert/update kemudian klik get fields untuk mengambil atribut pada tabel dim_unit. Kemudian hapus atribut yang bukan merupakan key. Kemudian klik get update fields, pada kolom Update ditentukan mana atribut yangdapat di update dan tidak dapat di update. Untuk contoh sk_unit tidak dapat d update sedangkan atribut lain dapat d update. Setelah itu klik OK.
- Kemduan run. Jika sukses maka hasil yang terlihat sebagai berikut
20
- Lakukan langkah yang sama untuk transformasi dimensi lainnya baik yang memiliki sumber data maupun meng-generate sendiri sumber datanya. 7. Membuat ETL untuk fakta unit. - Klik Input, pilih dan drag table input
- Create new connection dengan nama awa
21
- Kemudian klik get SQL select statement dan melakukan query sesuai kebutuhan
- Untuk unit-unit yang lain dilakukan hal yang sama dengan membuat masing masing koneksi
22
- Selanjutnya melakukan filter terhadap ID_BANK untuk menangkap data-data yang tidak memiliki nilai ID_BANK atau NULL.
- Konfigurasikan Filter Row seperti gambar di bawah ini:
23
- Selanjutnya menentukan langkah apabila data yang telah difilter bernilai TRUE atau memiliki nilai NULL dengan menggunakan step “If field value is null”
- Data yang bernilai NULL akan di-replace dengan nilai 00 dengan melakukan konfigurasi step seperti gambar berikut : • Pilih select field • Masukkan field yang akan diganti value-nya dan masukkan value-nya berupa 00 untuk me-replace value yang NULL
24
- Langkah berikutnya adalah menentukan step yang menangani data yang telah di-filter sebelumnya yang ID_BANK-nya tidak NULL (FALSE). Untuk data yang bersifat false, masuk ke tahap filter data lagi. Kali ini akan memfilter data yang tidak memiliki ID_JNS_KARTU atau NULL. Konfigurasinya sama dengan filter row sebelumnya untuk ID_BANK
25 - Selanjutnya menentukan tahap untuk menangani data yang telah difilter sebelumnya yang bernilai TRUE dan FALSE. Konfigurasinya juga hampir sama dengan ID_BANK. Hanya saja pada ID_JNS_Kartu data yang NULL akan direplace dengan value 03.
- Setelah itu, lanjut ke tahap lookup database. Lookup database ini dimaksudkan untuk mendapatkan surrogate key masing-masing dimensi yang berhubungan dengan fakta seperti pada contoh dim_time, dim_unit, dim_bank, dim_jenis_kartu, sk_tipe_pengunjung, dan dim_promo.
26
- Untuk mendapatkan sk_unit, dilakukan pencocokan antara id_unit pada dim_unit dengan kd_unit pada masing-masing sumber data pada unit. Untuk lebih jelasnya lihat gambar berikut
- Lakukan hal yang sama yaitu lookup database untuk dimensi lainnya. Sehingga akan seperti ini
27
- Proses selanjutnya adalah mapping yaitu melakukan pemilihan dan pencocokan atributatribut dari data sumber yang akan disimpan ke star_schema. Konfigurasinya sama dengan proses mapping pada transformasi mapping dimensi. Jika sudah maka tampilannya akan seperti ini
28
- Langkah yang terakhir adalah proses memasukkan data ke dalam star_schema yang menggunakan step “insert/update”. Pada tahap ini, dilakukan proses penyimpanan dan update terhadap record yang ada pada tabel fact_transaksi_pgu. Proses penyimpanan dilakukan
apabila
tidak
ditemukan
sk_unit,
sk_bank,
sk_jenis_kartu,
sk_tipe_pengunjung, sk_promo, sk_time, dan id_transaksi_unit yang sama pada tabel fact_transaksi_unit. Namun jika ditemukan, akan dilihat apakah kolom jml_pengunjung, jml_pendapatan mengalami perubahan atau tidak. Jika mengalami perubahan maka kolom jml_pengunjung, jml_pendapatan akan di-update.
29
- Save tranformasi ini misalkan simpan dengan nama fact_transaksi_unit.ktr - Jalankan / run tranformasinya, jika berhasil maka akan muncul tanda ceklis berwarna hijau di setiap step
30 TUTORIAL PENTAHO SCHEMA WORKBENCH
Pentaho Schema Workbench (PSW) adalah aplikasi GUI yang digunakan untuk merancang skema XML Mondrian. Schema di Mondrian merupakan suatu file teks XML yang mendefiniskan model logis dari cube, hierarchies, levels, members dan pemetaan dari model ini ke tabel fisik database relasional. Tabel-tabel fisik yang merupakan sumber data ini biasanya menggunakan pemodelan star schema dimana suatu tabel fisik dikelilingi oleh beberapa tabel dimensi. 1. Instalasi • Copy file PSW “psw-ce-3.4.1.1.stable.zip” dari download paket Schema Workbench terbaru dari projecy Mondrian di http://sourceforge.net/projects/mondrian. • Ekstrak ke folder yang diinginkan misalnya di E:\Semester 7\Software\schema-workbench
2. Melengkapi Driver Database Schema Workbench tidak datang dengan driver database apapun di dalam paketnya sehingga perlu dilengkapi sendiri. Caranya : • Download driver yang dibutuhkan dari internet untuk database yang akan digunakan. Misalnya mysql-connector-xxx.jar untuk database MySQL (http://www.mysql.com). Sedangkan untuk SQL Server bisa download driver open source yaitu jtds-xxx.jar dari http://jtds.sourceforge.net. • Atau file-file driver tersebut dapat diambil dari folder “libext/JDBC” dari Pentaho Data Integration
31
• Copy-kan file-file tersebut di folder schema-workbench\drivers
3. Menjalankan Schema Workbench dan Membuat Koneksi Database • Jalankan workbench.bat hingga muncul aplikasi GUI dari Schema Workbench
• Untuk membuat koneksi pilih Option -> Connection.
32 • Lengkapi spesifikasi koneksi (Connection Name, Connection Type, Host Name, Database Name, User dan Pasword) sesuai dengan spesifikasi database yang akan kita akses. Klik tombol “OK”.
4. Contoh Mapping Cube • Pilih menu File | New | Schema. Akan muncul ruang kerja untuk perancangan. Pada contoh kali ini datanya merupakan hasil data warehouse tiketing_ancol pada database star_schema. • Pada panel kiri, klik pada node “Schema” lalu isikan nama skemanya.
• Klik kanan pada node Schema dan pilih menu “Add cube”
• Klik node “New Cube 0” dan namakan cube tersebut “Transaksi Unit”
33 • Klik kanan pada node cube dan pilih “Add Table”
• Klik pada Table dan “fact_transaksi_unit”
masukkan
tabel
fact
yang
diinginkan.
Contohnya
tabel
• Tambahkan measure : klik kanan pada node “Transaksi Unit” dan pilih menu “Add Measure”
• Masukkan nama, field nilai pengukuran, dan juga tipe data serta agregasinya (count, sum, average, dll) pada spesifikasi measure yang kita buat
• Lakukan langkah yang sama untuk measure lainnya • Tambahkan dimensi : klik kanan pada node “Transaksi Unit” dan pilih menu “Add dimension”
34
• Mapping Tabel : akan muncul node “New Dimension 0”. Klik simpul untuk membuka node tersebut sampai muncul node “Table”. Pilih tabel dimensi yang diinginkan, misalnya “dim_unit”. Perhatikan tanda x berwarna merah akan hilang setelah tabel dipilih
• Klik node “Hierarchy”. Masukkan input seperti pada gambar. Perhatikan bahwa primaryKey mutlak dimasukkan
• Penamaan Dimensi : klik node “New Dimension 0” dan namakan node tersebut “Unit” dengan type “Standart Dimension” (untuk dimensi waktu pilih “Time Dimension”) serta lengkapi dengan foreignKey-nya
35
• Membuat Level : klik kanan pada node hierarchy “Unit” dan pilih menu “Add Level”
• Pada contoh, level dari dimensi unit adalah nama unit. Masukkan konfigurasi seperti pada gambar berikut :
• Untuk dimensi lainnya lakukan dengan cara yang sama. Kecuali pada dimensi waktu yang terdapat perbedaan dengan dimensi lainnya. Perbedaannya terletak pada type dimensinya yaitu time dimension.
36
• Untuk menambahkan dimensi baru baru, table, hierarki, dan level caranya sama dengan yang diatas
• Saat melakukan konfigurasi Level, perhatikan level type-nya. Level type waktu harus disesuaikan dengan type level yang ada di time dimension.
37
• Lakukan langkah yang sama untuk membuat cube, dimensi, dan measure lainnya. Sehingga pada contoh terbentuk 2 cube dengan mapping dimensi dan faktanya masing-masing untuk skema data warehouse tiketing Ancol.
38
• Simpan skema yang telah dibuat. Misalkan dengan nama “ancol.xml”
5. Mem-publish Skema Ke Pentaho BI Server • Buat koneksi database baru pada Pentaho BI Server. Pertama buka Pentaho Administration Console di folder tempat kita menginstall Pentaho BI Server. Jalankan start-pac.bat.
39 • Ketikkan di browser seperti Mozilla Firefox http://localhost:8099 untuk membuka Pentaho Administration Console. Masukkan username : admin dan password : password
• Setelah berhasil login, pilih Administration | Database Connection
• Klik icon + untuk membuat database connection baru sehingga muncul jendela konfigurasi database connection. Lalu klik OK
40 • Setelah itu, membuat password untuk mem-publish skema ke Pentaho BI Server. Buka file publisher_config pada folder biserver-ce-4.5.0-stable\biserver-ce\pentaho-solutions\system
• Setelah file dibuka masukkan password. Misalnya pada contoh “madeya”
• Kemudian publish skema dengan cara pilih menu File | Publish
• Masukkan password seperti password yang sudah disetting pada publisher_config sebelumnya. Lalu klik OK
41 • Publish schema di biserver-ce-4.5.0-stable\biserver-ce\pentaho-solutions\steelwheels\analysis. Isi Pentaho or JNDI Data Source dengan nama koneksi yang telah dibuat pada Pentaho Administration Console sebelumnya. Klik Publish
• Jika berhasil maka akan muncul pesan sukses
•
Setelah berhasil di-publish hasil skema akan terlihat di dalam folder tempat kita mempublish skema tadi
42 TUTORIAL PENTAHO BI SERVER Pentaho BI Server adalah aplikasi server Java berbasis web yang di dalamnya terdapat layanan solusi dan integrasi dari komponen produk Pentaho seperti Pentaho Data Integration, Pentaho Data Analysis / Mondrian, Pentaho Reporting / JfreeReport, charts, dan lain-lain 1. Instalasi BI Server 4.5 Community Edition Ekstrak biserver-ce 4.5.0.stable.zip ke folder E:\pt\biserver-ce-4.5.0-stable
Masuk ke folder E:\pt\biserver-ce-4.5.0-stable\biserver-ce dan jalankan file “startpentaho.bat”
Buka browser dan ketikkan http://localhost:8080 . Login dengan username dan password default dengan username:joe dan password:passwor
Setelah login maka akan muncul home dari Pentaho User Console
43
2. Membuat Pivot Setelah masuk pilih “New Analysis” atau klik File | New | Analysis View
Pilih schema yang sebelumnya kita publish melalui Schema Workbench yaitu “skripsi_ticketing_ancol” dan pilih cube yang ingin ditampilkan di pivot misalnya “transaksi_unit”
44 Untuk pertama kali hasil view analysis seperti tampilan di bawah ini, kemudian kita bisa mengeditnya sesuai dengan kebutuhan pivot kita
Edit dimensi dan measure dengan mengklik gambar cube/kubus di pojok kiri atas
Misalkan menampilkan pivot “Total Pendapatan Per Unit Berdasarkan Tipe Pengunjung Per Tahun”. Maka dimensi yang diperlukan untuk menampilkan pivot ini adalah dim_unit, dim_tipe_pengunjung, dan dim_waktu sedangkan measure yang dibutuhkan adalah total_pendapatan. Pada rows dimensi yang tidak diperlukan diabaikan dengan di-filter dengan mengklik gambar funnel
45
Mengkonfigurasi measure dengan mengklik Measure. Pilih total_pendapatan. Lalu OK
Pindahkan atribut time menjadi rows dengan mengklik gambar rows. Lalu klik OK
46 Tampilan pada tabel akan berubah sesuai dengan konfigurasi tadi. Klik tanda (+) untuk drill down view analysis
Untuk menampilkan chart klik gambar chart
47 Melakukan konfigurasi pada tampilan chart dengan mengklik gambar “Chart Config”. Misal melakukan konfigurasi seperti pada gambar berikut
Maka didapat hasil akhir tampilan tabel pivot beserta chart-nya
Lakukan langkah yang sama untuk menampilkan pivot lainnya