ETL Proses pada Aplikasi Pentaho (Kettle) dan Proses Pengolahan Data Menggunakan Artificial Neural Network (ANN) PDF

Title ETL Proses pada Aplikasi Pentaho (Kettle) dan Proses Pengolahan Data Menggunakan Artificial Neural Network (ANN)
Author I. Teddy Pradana
Pages 34
File Size 1.8 MB
File Type PDF
Total Downloads 252
Total Views 420

Summary

TUGAS PAPER MATA KULIAH BUSINESS INTELLIGENCE ETL PROSES PADA APLIKASI PENTAHO DAN PROSES PENGOLAHAN DATA MENGGUNAKAN ARTIFICIAL NEURAL NETWORK (ANN) Dosen: Prof. Dr. Ir. Marimin, M.Sc Oleh: I Gusti Made Teddy Pradana F351190288 DEPARTEMEN TEKNOLOGI INDUSTRI PERTANIAN FAKULTAS TEKNOLOGI PERTANIAN IN...


Description

TUGAS PAPER MATA KULIAH BUSINESS INTELLIGENCE

ETL PROSES PADA APLIKASI PENTAHO DAN PROSES PENGOLAHAN

DATA MENGGUNAKAN ARTIFICIAL NEURAL NETWORK (ANN) Dosen: Prof. Dr. Ir. Marimin, M.Sc

Oleh:

I Gusti Made Teddy Pradana

F351190288

DEPARTEMEN TEKNOLOGI INDUSTRI PERTANIAN FAKULTAS TEKNOLOGI PERTANIAN INSTITUT PERTANIAN BOGOR BOGOR 2020

BAGIAN 1. ETL PROSES PADA APLIKASI PENTAHO

2.1 Mengenal Aplikasi Pentaho Pentaho BI adalah salah satu platform Open Source Business Intelligence (OSBI) yang memberikan solusi terkait Bussiness Intelligence kepada pengguna. Pentaho memiliki kemampuan untuk membuat report, melakukan analisis data, membuat dashboard, dan mengintegrasikan data. Ketika Pentaho diimplementasikan, kita dapat melihat berbagai macam informasi dari data yang kita miliki. Misalnya saja kita dapat melihat analisis dari penjualan produk kita, berapa produk yang terjual, siapa saja pembelinya, dan masih banyak lagi. Informasi tersebut disajikan dalam bentuk report yang bersifat interaktif. Sebagai contoh kita dapat melihat report sesuai dengan waktu yang kita inginkan.

Gambar 1. Logo Aplikasi Pentaho

Pentaho BI Suite memiliki beberapa fungsionalitas, diantaranya adalah: 1) Fungsi Reporting Dengan Pentaho reporting kita bisa melihat report dari data yang kita miliki. Pentaho report ini ada dua macam, yaitu report yang sifatnya terjadwal (scheduled), atau yang sifatnya on-demand. Ada beragam format yang bisa digunakan dalam report ini, seperti PDF, HTML, XLS, dan text. Pentaho Reporting ini dibuat berdasarkan JFreeReport project. 2) Fungsi Analisis Pentaho juga dapat digunakan untuk melakukan analisis data. Data yang kita miliki dapat ditampilkan dengan menarik dalam berbagai bentuk, seperti pivot tabel, dashboard yang terintegrasi, portal, dan workflow. Di Pentaho juga ada Spreadsheet Services sehingga kita dapat melakukan browsing, melihat grafik, jauh ke dalam data yang berbentuk Microsoft Excel. Layanan Analysis di Pentaho dibuat berdasarkan Mondrian OLAP yaitu sebuah Open Source OLAP Server.

3) Dashboard Hasil dari reporting dan analisis dapat ditampilkan dalam Pentaho Dashboard. Jadi, cukup dengan melihat dashboard, kita bisa mengetahui semua info yang kita inginkan. 4) Data Mining Kita juga bisa melakukan data mining. Jika Anda tahu Weka, maka fungsi data mining di Pentaho adalah gabungan dari Weka. Weka itu sendiri adalah sebuah kumpulan algoritma dari machine learning yang diterapkan untuk memining data. Algoritma tersebut dikombinasikan dengan teknologi OLAP (Online Analytical Processing). Tool Data Mining ini digunakan untuk menganalisis data yang sifatnya historical sehingga bisa dibuat suatu model yang sifatnya prediktif. 5) Data Integration Data Integration di Pentaho dikenal dengan Kettle dan atau Spoon. Kettle dan Spoon ini adalah tool ETL yang memiliki tampilan antarmuka untuk mendesain job yang sifatnya fleksibel untuk pemrosesan data.

2.2 Instalasi Aplikasi Pentaho Sebelum kita menggunakan aplikasi Pentaho, kita perlu menginstal beberapa aplikasi agar aplikasi dapat berjalan di komputer kita. Adapun aplikasi-aplikasi tersebut adalah sebagai berikut: 1) Java Development Kit (JDK) dan Java Runtime Environment (JRE) JRE adalah sebuah paket aplikasi yang berisi JVM (Java Virtual Machine) serta beberapa library kode program tambahan yang diperlukan untuk menjalankan aplikasi Java. Meskipun kurang pas, tapi secara sederhana bisa dibilang bahwa untuk bisa menjalankan sebuah aplikasi Java di sebuah komputer, harus terinstall aplikasi JRE atau dengan kata lain, bilamana kita hanya ingin menjalankan aplikasi Java saja dan tidak berencana membuat kode program Java, maka JRE adalah aplikasi yang dibutuhkan. JDK adalah sebuah paket aplikasi yang berisi JVM (Java Virtual Machine) + JRE (Java Runtime Environment) + berbagai aplikasi untuk proses pembuatan kode program Java. Salah satu tambahan perintah yang ada di JDK adalah perintah javac yang dipakai untuk memproses kode program Java menjadi byte code. Jadi karena dalam aplikasi pentaho kita perlu menggunakan aplikasi java termasuk membuat program atau memasukan script pada dokumen pentaho, kita perlu menginstal JRE dan JDK terlebih dahulu. JRE dan JDK dapat diunduh melalui website oracle dapa link dibawah https://www.oracle.com/java/ kemudian mendownload JRE dan JDK versi

terbaru yang disesuaikan dengan sistem operasi pada komputer masingmasing. Proses instalasinya ditunjukan sebagai berikut.

Gambar 2. Proses Instalasi Aplikasi JDK

Gambar 3. Proses Instalasi Aplikasi JRE 2) Xampp Xampp adalah sebuah software komputer yang sistem penamaannya diambil dari akronim kata X, Apache, MySQL (dulu) / MariaDB (sekarang), PHP, dan Perl. X yang terdapat pada awal kata berasal dari istilah cross platform sebagai simbol bahwa aplikasi ini bisa dijalankan di empat sistem operasi berbeda, seperti OS Linux, OS Windows, Mac OS, dan juga Solaris.

Program aplikasi XAMPP berfungsi sebagai server lokal (localhost). Aplikasi ini dalam prakteknya banyak digunakan untuk menguji kinerja fitur ataupun menampilkan konten yang ada didalam website kepada orang lain tanpa harus terkoneksi dengan internet, atau istilahnya website offline. XAMPP biasanya banyak digunakan oleh para mahasiswa maupun pelajar untuk melihat hasil desain website sebelum akhirnya dibuat online menggunakan web hosting yang biasa dijual dipasaran. Namun, mengingat fungsinya sebagai server lokal, XAMPP juga dapat digunakan untuk keperluan lain seperti untuk membuat localhost dan menghubungkan database dari proses ETL di Pentaho. Aplikasi XAMPP dapat diunduh melalui website link apache berikut (https://www.apachefriends.org/download.html), dengan mendownload sesuai dengan sistem operasi komputer yang digunakan dan versi dari XAMPP (terbaru disarankan). Kemudian dapat dilakukan proses instalasi sebagai berikut, sampai proses instalasi selesai (finish).

Gambar 4. Proses Instalasi Aplikasi XAMPP 3) SQLyog SQLyog adalah aplikasi client MySQL yang sangat populer digunakan di Indonesia. Aplikasi ini memiliki banyak fitur yang memudahkan pengguna melakukan administrasi maupun melakukan pengolahan data MySQL. SQLyog adalah salah satu tool yang dapat digunakan untuk administrasi untuk database MySQL. Jika kita biasanya menggunakan PhpMyAdmin

yang include di dalam aplikasi Xampp untuk melakukan administrasi database, SQLyog adalah aplikasi alternatif untuk melakukan proses administrasi database MySQL. Banyak fitur yang disediakan oleh SQLyog yang tidak disediakan oleh PhpMyAdmin maupun tool administrasi database lainnya seperti MySQLQueryBrowser. Dengan SQLyog kita dapat membuat Store Prosedure, Function maupun Trigger dengan mudah. SQL (Structured Query Language) sendiri adalah salah satu DBMS (database management system) yang saat ini banyak digunakan untuk operasi basis data dan embedded (ditempelkan) di hampir semua bahasa pemrograman yang mendukung basis data relasional. Bahasa ini secara de facto merupakan bahasa standar yang digunakan dalam manajemen basis data relasional. Perintah SQL digunakan untuk melakukan tugas-tugas seperti update data, atau mengambil data dari database. Aplikasi SQLyog dapat diunduh melalui website webyog company pada https://www.webyog.com/product/sqlyog, kemudian dilakukan proses instalisasi sebagai berikut hingga proses selesai (finish).

Gambar 5. Proses Instalasi Aplikasi SQLyog

Setelah aplikasi-aplikasi diatas selesai di-install, selanjutnya kita dapat menggunakan aplikasi pentaho. Aplikasi Pentaho dapat di download melalui Pentaho (Hitachi Vantara) di http://community.pentaho.com/projects/bi_platform/ atau https://community.hitachivantara.com/s/pentaho atau dapat juga melalui https://sourceforge.net/projects/pentaho/. Setelah berhasil diunduh aplikasi Pentaho Data Integration dapat dibuka dengan mengklik file spoon.bat.

Gambar 6. Membuka Aplikasi Pentaho Data Integration

Gambar 7. Tampilan depan Aplikasi Pentaho Data Integration

2.3 Menggunakan Aplikasi Pentaho Pada bagian ini saya akan menjelaskan tentang bagaimana menggunakkan aplikasi pentaho. Pertama kita akan menggunakan Spoon yaitu utilitas grafik untuk merancang, mengeksekusi dan melakukan troubleshooting dari proses ETL melalui job dan transformation. Buka Spoon.bat pada folder data integration, maka akan terbuka lingkungan kerja sebagai berikut. Menu & Toolbar

Ruang Kerja Panel Kiri

Panel hasil Eksekusi

Gambar 7. Lingkungan Kerja Spoon dalam Pentaho Sebelum memulai membuat projek, pertama kita harus memahami konsep dan komponen yang ada dalam pentaho, yang dapat saya jelaskan sebagai berikut. 1) Kondisi Database Dalam program pentaho (kettle) banyak sekali mendukung jenis koneksi database yang populer saat ini seperti Oracle, MS SQL Server, MongoDB, MySQL, PostgreSQL dan lainnya. Pada paper saya ini akan menggunakan MySQL Server dengan menggunakan aplikasi SQLyog dan XAMPP. 2) Step Step adalah komponen/modul kittle yang mengerjakan tugas tertentu pada suatu job atau transformation 3) Hop Hop adalah penghubung yang menghubungkan 2 step baik sebagai penentu aliran/flow dari job ataupun penghantar data di transformation. Hop Step Step Gambar 8. Step dan Hop

4) Job Job adalah komponen dari pentaho yang menangani kontrol atas aliran tugas (flow control). Job tidak memproses aliran data secara langsung, Job bisa terdiri dari suatu atau beberapa transformation atau job lain.

Gambar 9. Panel Job 5) Transformations Transformation adalah komponen dari pentaho yang melakukan proses aliran data sebenarnya. Semua proses pengambilan data (estract), perubahan (transform) dan penyimpanan (load) dilakukan disini.

Gambar 10. Panel Transformation Setelah kita mengenal beberapa fungsi penting diatas, maka baru selanjutnya kita akan memulai untuk membuat sebuah project. Ada beberapa project yang telah saya buat yang akan saya jelaskan selanjutnya sebagai berikut.

1) Membuat Project Job Sederhana

Gambar 11. Project Job Project pertama ini merupakan sebuah project yang merupakan komponen sebuah job. Pada job ini, saya memasukkan step start, javascript dan msgbox ke dalam ruang kerja dengan hop yang menghubungkan antara step yang ada seperti pada gambar. Project ini akan menghasilkan output berupa keluarnya pop up message box sesuai dengan hasil yang dijalankan pada javascript. Hop berwarna hijau menunjukkan alur yang dilalui suatu perintah. Hop berwarna merah menunjukkan bahwa hop tersebut tidak dijalankan atau dilalui. 2) Membuat Project Transformasi Sederhana

Gambar 12. Project Transformasi

Pada project transformasi diatas, saya ingin melakukan rekayasa suatu folder. Alur pemikiran project diatas adalah step check if file exist akan mengecek folder bernama FTP pada folder data integration (lokasi kettle pentaho) apakah sudah ada atau belum. Jika folder tersebut diperiksa dan ternyata belum, step create a folder FTP akan melakukan proses membuat folder bernama FTP tersebut. Jika folder tersebut sudah ada maka proses dari step check if file exist akan dilanjutkan dan berakhir pada dummy. Project diatas saya buat dengan proses runnning secara berkelanjutan, sehingga bila folder FTP tersebut dihapus sehingga tidak ada lagi di folder data integration, maka program dari pentaho akan membuatnya lagi. Inilah perbedaan job dengan transformasi. Transformasi dapat melakukan pengambilan data (estract), perubahan (transform) dan penyimpanan (load) atau kita kenal dengan ETL, sedangkan job tidak dapat melakukan hal ini. 3) Melakukan proses pengambilan data (estract) dan perubahan data (transform).

Gambar 13. Project Estract dan Transform Dari project diatas, saya mengambil data input (estract) berupa data excel yaitu file target penjualan.xls. Dataset dari file ini masih memiliki tipe yang berbeda sehingga tipe data dataset ini harus disamakan terlebih dahulu sebelum dilakukan proses pengolahan data lebih lanjut. Perubahan tipe data (transform) ini dilakukan dengan merubahnya seperti pada gambar berikut.

Gambar 14. Menu Dataset input (kiri) dan Menu Rename Value /Proses Transform (kanan) Pada gambar diatas kita dapat melihat tipe data dari dataset (kiri) yang sebelumnya masih tidak seragam akan dijadikan seragam menjadi tipe integer. Dari gambar 14 kita juga dapat melihat bahwa kolom informasi yang digunakan seperti kode cabang dan kode produk dihilangkan. Hasil dari proses pada project ini adalah untuk mengubah mengambil data input dan melakukan perubahan yang dibutuhkan pada data. Adapun bagaimana cara kita menyimpan (load) data yang telah dirubah kedalam database dan bagaimana cara menghasilkan output berupa file dataset baru akan dijelaskan pada project selanjutnya. 4) Menghubungkan ke Database

Gambar 15. Project Menghubungkan ke Database

Dari gambar 15 diatas, bisa dilihat bahwa saya ingin menyimpan tabel output dari pengubahan data ke database. Project diatas hampir serupa dengan project sebelumnya hanya saja ditambahkan dengan step table output ke SQL. Saat program di run, maka file akan ter-load kedalam host database. Pada project saya ini, saya menggunakan SQLyog dengan bantuan XAMPP untuk membuat localhost. Adapun data yang sudah tersimpan di database dapat kita lihat seperti pada gambar 16 dibawah ini.

Gambar 16. Aplikasi SQLyog untuk menyimpan dataset di database server Data yang sudah dilakukan perubahan dari file excel aslinya selanjutnya dapat kita lihat pada SQLyog ketika program dalam pentaho telah berjalan (running) dan terhubung kedalam server. Table data akan tersimpan (load) pada nama database yang dihubungkan sebagai tempat menyimpan tadi. Pada kasus saya, saya merubah tipe data dari data pemeriksaaan diabetes untuk kemudian disimpan pada database db_diabetes. Dengan terkoneksinya dengan server, maka setiap orang yang terkoneksi dengan server akan dapat mengakses data sehingga dapat dilakukan pengolahan data lebih lanjut. 5) Membuat dataset baru dari file di SQL Server. Pada saat proses ETL berhasil dilakukan dan file disimpan di server (data warehousing) maka selanjutnya kita harus dapat menarik data untuk keperluan selanjutnya yaitu pengolahan data agar ditemukannya insight/pengetahuan baru dari data tersebut. Pada aplikasi SQLyog, kita dapat menarik/meyimpan data dalam bentuk file csv, json, html, xml, excel xml atau SQL. Pada kasus saya ini, saya akan mengubah dataset diabetes yang sudah dirubah menjadi sebuah file .csv.

Gambar 17. Membuat file dari database di SQLyog Pada db_diabetes kik tombol (+) untuk melihat list lainnya (tray down). Pada bagian table data klik kanan kemudian sorot bagian backup/export, pilih export table data as dan pilih .csv seperti pada gambar 18.

Gambar 18. Menu Export database dalam aplikasi SQLyog File akan tersimpan di alamat direktori yang kita tentukan dengan menekan tombol export. Setelah data berhasil dibuat, kita dapat menggunakan data tersebut untuk keperluan pengolahan data selanjutnya tergantung dengan metode yang sesuai atau yang kita pilih. Pada bagian selanjutnya saya akan menunjukkan bagaimana data ini akan digunakan pada pengolahan data menggunakan metode artificial neural network (ANN). Selain beberapa project sederhana diatas, kita tentu dapat mengumpulkan data dengan kasus yang lebih kompleks, misalnya menggabungkan beberapa database

yang memiliki tipe data berbeda untuk selanjutnya dialakukan proses ETL. Untuk melakukan hal ini, secara konsep tidak jauh berbeda dengan project diatas. Adapun beberapa project yang sudah saya buat dalam penggabungan database saya tunjukkan sebagai berikut.

(a)

(b)

(c)

(d)

Gambar 19. Beberapa project pengabungan database menjadi data warehousing menggunakan pentaho dan SQLyog. Pada bagian a saya mencoba membuat data perkembangan update cabang dari diperoleh dari data cabang itu senduru, database kota dan provinsi. Pada b, saya ingin membuat data warehouse tentang semua karyawan yang tersebar pada semua cabang. Selanjutnya pada c, saya membuat database produk berdasarkan database produk dan kategorinya. Terakhir pada d, saya ingin membuat data warehousing

bernama fakta penjulan yang bersumber dari berbagai database seperti yang dapat dilihat pada gambar 19 bagian d. # Multidemensional dan Data Visualisasi Multidimensional Modeling (MDM) adalah suatu kumpulan konsep dan teknik yang digunakan dalam merancang data warehouse dengan penekanan pada dua jenis tabel konseptual yaitu yang berisi pengukuran dan dimensi yang memberikan konteks.

Gambar 20. Contoh Cube Scema Di dalam model multidimensional, database terdiri dari beberapa tabel fakta (fact tables) dan tabel dimensi (dimension tables) yang saling terkait. Suatu tabel .fakta berisi berbagai nilai agregasi yang menjadi dasar pengukuran (measure) .serta beberapa key yang terkait ke tabel dimensi yang akan menjadi sudut pardang dari measure tersebut. Dalam perkembangannya, susunan fact table dan dimension table ini memiliki standar perancangan atau schema karena terbukti meningkatkan performa dan kemudahan dalam penerjemahan ke sistem Online Analytical Processing (OLAP). Schema inilah yang menjadi dasar untuk melakukan data warehousing. Dua schema yang paling umum digunakan oleh berbagai OLAP engine adalah skema bintang (Star Schema) dan skema butir salju (Snowflake Schema). Sekema Bintang berpusat pada satu tabel fakta yang dikelilingi oleh suatu atau beberapa tabel dimensi sebagai cabangnya sehingga kelihatan seperti bintang. Setiap percabangan berhenti pada satu tabel dimensi atau dengan kata lain tabel dimensi dengan skema ini semuanya berupa leaf atau daun dan tidak memiliki percabangan lain. Skema Butir Salju (Snowflake Schema) Berbeda dengan Star, skema Snowflake memliki percabangan pada tabel dimensinya dan bias dioptimalkan karena pertimbangan ruang penyimpanan. Namun seiring berkembangnya waktu struktur

yang kurang bersahabat bagi kebanyakan OLAP engine, maka skerna ini kurang diad oleh perancang data warehouse.

Gambar 21. Contoh Skema Bintang

Gambar 22. Contoh Sjema Butir Salju

BAGIAN 2. PENGOLAHAN DATA DENGAN ARTIFICIAL NEURAL NETWORK (ANN) 2.1 Pengertian dan Fungsi Neural Network merupakan kategori ilmu Soft Computing. Neural Network sebenarnya mengadopsi dari kemampuan otak manusia yang mampu memberikan stimulasi/rangsangan, melakukan proses, dan memberikan output. Output diperoleh dari variasi stimulasi dan proses yang terjadi di dalam otak manusia. Kemampuan manusia dalam memproses informasi merupakan hasil kompleksitas proses di dalam otak. Misalnya, yang terjadi pada anak-anak, mereka mampu belajar untuk melakukan pengenalan meskipun mereka tidak mengetahui algoritma apa yang digunakan. Kekuatan komputasi yang luar biasa dari otak manusia ini merupakan sebuah keunggulan di dalam kajian ilmu pengetahuan. Fungsi dari Neural Network diantaranya adalah: 1) Pengklasifikasian pola 2) Memetakan pola yang didapat dari input ke dalam pola baru pada output 3) Penyimpan pola yang akan dipanggil kembali 4) Memetakan pola-pola yang sejenis 5) Pengoptimasi permasalahan 6) Prediksi 2.2 Sejarah Neural Network Perkembangan ilmu Neural Network sudah ada sejak tahun 1943 ketika Warren McCulloch dan Walter Pitts memperkenalkan perhitungan model neural network yang pertama kalinya. Mereka melakukan kombinasi beberapa processing unit sederhana bersama-sama yang mampu memberikan peningkatan secara keseluruhan pada kekuatan komputasi.

Gambar 23. McCulloch & Pitts, penemu pertama Neural Network

Hal ini dilanjutkan pada penelitian yang dikerjakan oleh Rosenblatt pada tahun 1950, dimana dia berhasil menemukan sebuah two-layer network, yang disebut sebagai perceptron. Perceptron memungkinkan untuk pekerjaan klasifikasi pembelajaran tertentu dengan penambahan bobot pada setiap koneksi antarnetwork.

Gambar 24. Perceptron Keberhasilan perceptron dalam pengklasifikasian pola tertentu ini tidak sepenuhnya sempurna, masih ditemukan juga beberapa keterbatasan didalamnya. Perceptron tidak m...


Similar Free PDFs