PENGEMBANGAN MODUL EXTRACT, TRANSFORM, LOAD DATA WAREHOUSE HASIL KOMODITAS PERTANIAN INDONESIA MENGGUNAKAN TALEND
INTAN YULI KISWARI
DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2016
PERNYATAAN MENGENAI SKRIPSI DAN SUMBER INFORMASI SERTA PELIMPAHAN HAK CIPTA Dengan ini saya menyatakan bahwa skripsi berjudul Pengembangan Modul Extract, Transform, Load Data Warehouse Hasil Komoditas Pertanian Indonesia Menggunakan Talend adalah benar karya saya dengan arahan dari komisi pembimbing dan belum diajukan dalam bentuk apa pun kepada perguruan tinggi mana pun. Sumber informasi yang berasal atau dikutip dari karya yang diterbitkan maupun tidak diterbitkan dari penulis lain telah disebutkan dalam teks dan dicantumkan dalam Daftar Pustaka di bagian akhir skripsi ini. Dengan ini saya melimpahkan hak cipta dari karya tulis saya kepada Institut Pertanian Bogor. Bogor, Agustus 2016 Intan Yuli Kiswari NIM G64120006
ABSTRAK INTAN YULI KISWARI. Pengembangan Modul Extract, Transform, Load Data Warehouse Hasil Komoditas Pertanian Indonesia Menggunakan Talend. Dibimbing oleh RINA TRISMININGSIH. Kementerian Pertanian Indonesia menghimpun data hasil komoditas pertanian Indonesia dalam fail yang tidak saling terintegrasi. Solusi terbaik untuk melakukan integrasi data tersebut adalah data warehouse dengan proses extract, transform, load (ETL). Penelitian ini membangun ETL data warehouse hasil komoditas pertanian Indonesia yang memungkinkan praproses dan pembersihan data lebih cepat sebelum dimuat ke data warehouse. Pembangunan ETL diawali dengan merancang data warehouse menggunakan skema bintang dan merancang pemodelan ETL untuk melakukan transformasi. Transformasi dilakukan dengan membagi fail menjadi header dan body file. Implementasi model transformasi dilakukan menggunakan tool Talend. Hasil pengujian transformasi menunjukkan bahwa proses ETL berjalan dengan baik. Pengujian nilai menunjukkan bahwa nilai keluaran pada DBMS dan operasi OLAP menghasilkan nilai yang sama dengan nilai masukan yang berasal dari fail masukan. Kata kunci: data warehouse, ETL, komoditas pertanian, Talend.
ABSTRACT INTAN YULI KISWARI. Development of Extract, Transform, Load Data Warehouse Module of Indonesian Agricultural Commodities Using Talend. Supervised by RINA TRISMININGSIH. The Indonesian Ministry of Agriculture stores data of Indonesian agricultural commodities in files that are not integrated with each other. The best solution for the integration of these data is to create a data warehouse with extract, transform, load (ETL) processes. This study aimed to create an ETL data warehouse of Indonesian agricultural commodities that provides the possibility of faster preprocessing and data cleaning before being stored in the data warehouse. ETL development begins with designing a data warehouse using a star schema and designing the ETL model to perform the transformation. The transformation is done by dividing the file into a header and a body. The Implementation of the transformation model was done using Talend. The transformation test results showed that the ETL process runs well. The data value test showed that the resulting value of the DBMS and OLAP operations are the same values inputted from the inserted file. Keywords: agricultural commodities, data warehouse, ETL, Talend.
PENGEMBANGAN MODUL EXTRACT, TRANSFORM, LOAD DATA WAREHOUSE HASIL KOMODITAS PERTANIAN INDONESIA MENGGUNAKAN TALEND
INTAN YULI KISWARI
Skripsi sebagai salah satu syarat untuk memperoleh gelar Sarjana Komputer pada Departemen Ilmu Komputer
DEPARTEMEN ILMU KOMPUTER FAKULTAS MATEMATIKA DAN ILMU PENGETAHUAN ALAM INSTITUT PERTANIAN BOGOR BOGOR 2016
Penguji: 1 Dr Imas Sukaesih Sitanggang, SSi MKom 2 Irman Hermadi, SKom MS PhD
Judul Skripsi : Pengembangan Modul Extract, Transform, Load Data Warehouse Hasil Komoditas Pertanian Indonesia Menggunakan Talend Nama : Intan Yuli Kiswari NIM : G64120006
Disetujui oleh
Rina Trisminingsih, SKomp MT Pembimbing
Diketahui oleh
Dr Ir Agus Buono, MSi MKom Ketua Departemen
Tanggal Lulus:
PRAKATA Segala puji bagi Allah atas segala nikmat, rahmat serta karunia-Nya sehingga karya ilmiah ini berhasil diselesaikan. Penelitian yang telah peneliti laksanakan sejak Februari 2016 ini berjudul Pengembangan Modul Extract, Transform, Load Data warehouse Hasil Komoditas Pertanian Indonesia Menggunakan Talend. Penulisan skripsi ini merupakan salah satu syarat memperoleh gelar Sarjana Komputer pada program studi Ilmu Komputer. Bukan hal yang mudah dalam penyelesaian penelitian ini, namun atas ridho Allah Subhanahu wa ta’ala penulis mampu melewati segala hambatan yang ada. Dukungan serta bantuan dari orang orang terdekat penulis menguatkan penulis untuk selalu semangat menyelesaikan penelitian ini. Oleh karena itu penulis menyampaikan terima kasih kepada seluruh pihak yang telah membantu baik secara langsung maupun tidak langsung dalam menyelesaikan penelitian ini, yaitu: 1 Ayahanda Darmijan, Ibunda Jumiati, Adik Popita Nilam Sari, Nenek Waginah, Kakek Padiman serta Mas Khoirul Anwar atas doa, kasih sayang, dukungan, serta motivasi kepada penulis dalam penyelesaian penelitian ini. 2 Ibu Rina Trisminingsih, SKomp MT selaku dosen pembimbing yang telah dengan sabar membimbing dan memberi banyak saran, bantuan, serta dukungan sampai selesainya penelitian ini. 3 Teman-teman Ilmu Komputer IPB angkatan 49, UKM Karate IPB dan Himpunan Mahasiswa Rembang di Bogor atas segala kebersamaan, bantuan, dukungan, serta kenangan bagi penulis selama menjalani masa studi. 4 Sahabat terbaik penulis yang belum tersebut di atas, yaitu Nurul Hudachair, M. Rakha Mauludi, Krisna Arianti, dan Dita Firgiawati yang selalu memberikan bantuan dan dukungan selama masa studi penulis. 5 Tim Talend Forum Mr. Jan Lolling, Mr. Shicong Hong, Ms. Xiaodi Shi dan Mr. Amine Hallam atas bantuanya dalam mempelajari tool Talend yang digunakan penulis untuk menyelesaikan penelitian ini. Penulis mohon maaf atas segala kekurangan yang terdapat pada penelitian ini. Semoga penelitian ini dapat memberikan manfaat yang sebesar-besarnya.
Bogor, Agustus 2016
Intan Yuli Kiswari
DAFTAR ISI DAFTAR GAMBAR
viii
DAFTAR LAMPIRAN
viii
PENDAHULUAN
1
Latar Belakang
1
Perumusan Masalah
2
Tujuan Penelitian
2
Manfaat Penelitian
2
Ruang Lingkup Penelitian
2
METODE
3
Data Penelitian
3
Tahapan Penelitian
3
Lingkungan Pengembangan
7
HASIL DAN PEMBAHASAN
8
Akuisisi Data
8
Perancangan Data warehouse
9
Pembangunan modul ETL
10
Pemodelan ETL
10
Implementasi ETL
13
Pembuatan kubus data
18
Pengujian
19
Pengujian Transformasi
19
Pengujian nilai data pada DBMS
19
Pengujian nilai data pada operasi OLAP
20
Keterbatasan Sistem
21
SIMPULAN DAN SARAN
21
Simpulan
21
Saran
22
DAFTAR PUSTAKA
22
LAMPIRAN
24
RIWAYAT HIDUP
36
DAFTAR GAMBAR 1 Tahapan penelitian 2 Ilustrasi skema bintang 3 Notasi pemodelan konseptual ETL 4 Notasi pada pemodelan logika 5 Contoh tampilan fail data hasil komoditas pertanian Indonesia 6 Skema bintang perancangan data warehouse (Hartomo 2015) 7 Skema bintang perancangan data warehouse 8 Pemodelan konseptual ETL data warehouse 9 Pemodelan logika ETL data warehouse hasil komoditas pertanian 10 Pemodelan fisik ETL data warehouse hasil komoditas pertanian 11 Implementasi pemodelan ETL dalam Talend 12 Header file data hasil komoditas pertanian 13 Implementasi ETL pada Talend untuk memproses header file 14 Tabel hasil ekstraksi header file 15 Tabel identitas hasil ekstraksi header file dan dimensi lokasi 16 Body and tail fail data hasil komoditas pertanian 17 Implementasi ETL pada Talend untuk memproses body dan tail file 18 Hasil pemrosesan body file 19 Tabel fakta hasil pemrosesan fail masukan 20 Transformasi penggabungan 4 tabel dimensi dan tabel fakta 21 Tabel yang terbentuk pada DBMS oleh job ETL 22 Tabel fakta data warehouse hasil komoditas pertanian 23 Kubus data warehouse hasil komoditas pertanian 24 Hasil eksekusi job ETL untuk tabel fakta 25 Pengujian nilai data pada DBMS yang dihasilkan 26 Pengujian nilai data pada tampilan operasi OLAP
3 4 5 6 9 9 10 11 12 12 13 14 14 14 15 15 16 16 16 17 17 18 18 19 20 21
DAFTAR LAMPIRAN 1 Template transformasi berdasarkan kategori 2 Pemodelan logika ETL dimensi data warehouse 3 Pemodelan fisik ETL dimensi data warehouse 4 Notasi pada pemodelan konseptual dan implementasi Talend 5 Implementasi ETL tabel dimensi data warehouse 6 Proses transformasi tabel dimensi 7 Potongan template Mondrian OLAP hasil komoditas pertanian 8 Tampilan operasi OLAP hasil komoditas pertanian Indonesia 9 Hasil eksekusi job ETL untuk tabel dimensi 10 Hasil pengujian nilai data pada DBMS
24 25 26 27 28 29 32 33 34 35
PENDAHULUAN Latar Belakang Kementerian Pertanian (Kementan) Republik Indonesia menghimpun data komoditas hasil dari subsektor tanaman pangan, hortikultura, perkebunan dan peternakan di seluruh Indonesia. Data tersaji dalam situs Kementan yang dapat diakses berdasarkan nilai ukuran terpilih dengan identitas data, satuan dan periode tahun tertentu. Pengguna tidak dapat menampilkan informasi yang lebih besar atau lebih kecil karena data setiap indikator tersebut tidak saling terintegrasi. Pengguna dapat menerapkan praproses data manual untuk integrasi, namun akan membutuhkan waktu yang sangat lama. Integrasi data hasil komoditas pertanian dapat dilakukan dengan menggabungkannya ke dalam data warehouse. Data warehouse menawarkan arsitektur dan tools bagi para eksekutif bisnis untuk mengorganisir secara sistematik, memahami dan menggunakan data dalam pengambilan keputusan (Han et al. 2011). Pembangunan data warehouse hasil komoditas pertanian untuk subsektor tanaman hortikultura telah dilakukan pada penelitian Online Analytical Processing (OLAP) berbasis web pada tanaman hortikultura menggunakan Palo yang dilakukan Dwiprianti (2015) dan menggunakan SpagoBI oleh Permana (2015). Namun permasalahan yang dihadapi adalah data yang diperoleh dari situs Kementan merupakan data yang masih memerlukan proses transformasi dari data mentah sehingga menjadi data yang sesuai dengan format data warehouse. Hal ini karena data yang dapat dimuat ke dalam data warehouse hanya data terstruktur dan sesuai dengan format. Sehingga diperlukan proses transformasi data untuk merapikannya ke dalam format yang sesuai dengan format data dalam data warehouse yang dituju. Data warehouse umumnya dicirikan dengan adanya proses Extract, Transform, Load (ETL) yang memungkinkan penggabungan data dari berbagai sumber, penyesuaian format dan pembuatan datamart untuk berbagai kebutuhan (Boulekrouche et al. 2015). Kesuksesan dalam pembangunan data warehouse bergantung pada kesuksesan proses Extract, Transform, Load (ETL) dari basis data Online Transactional Processing (OLTP) ke dalam data warehouse (Amborowati 2010). Meskipun proses ETL dalam data warehouse sangat penting, penelitian terkait bidang ini masih terbilang sedikit dilakukan. Hal ini karena sulit dan kurangnya model formal untuk mewakili aktivitas ETL yang memetakan data mentah dari sumber data yang berbeda ke dalam format yang sama untuk dipetakan ke dalam data warehouse (El-Sappagh et al. 2011). Tugas utama ETL adalah melakukan ekstraksi, transformasi dan integrasi seluruh data yang kemudian dibersihkan sebelum dipetakan ke dalam data warehouse (Vassiliadis et al. 2002). Pembangunan data warehouse hasil komoditas pertanian pada subsektor tanaman hortikultura oleh Dwiprianti (2015) dan Permana (2015) tersebut kemudian dilanjutkan oleh Hartomo (2015) dengan menambahkan modul ETL menggunakan Kettle. Penelitian tersebut masih melakukan transformasi data
2 secara manual untuk menghasilkan data dengan format yang sesuai dengan format data warehouse, sehingga memerlukan waktu praproses data yang cukup lama. Penelitian ini mengembangkan modul ETL untuk data warehouse komoditas pertanian Indonesia yang meliputi subsektor tanaman pangan, tanaman hortikultura, perkebunan dan peternakan. Data mentah yang digunakan dalam penelitian diperoleh dari situs resmi Kementrian Pertanian Indonesia yang tersedia pada http://aplikasi.pertanian.go.id/bdsp/newlok.asp. Peneliti memilih tool Talend Open Studio untuk mengimplementasikan pemodelan dalam melakukan transformasi data mentah hasil komoditas pertanian Indonesia. Perumusan Masalah Transformasi data yang diunduh dari situs Kementerian Pertanian Indonesia masih dilakukan secara manual dalam proses ETL menyebabkan proses pembangunan data warehouse menjadi lama. Rumusan masalah pada penelitian ini adalah: 1 Bagaimana mentransformasikan data mentah hasil komoditas pertanian Indonesia menjadi data yang sesuai format dan siap dimuat ke dalam data warehouse? 2 Bagaimana membangun modul ETL data warehouse untuk integrasi data hasil komoditas pertanian Indonesia menggunakan Talend? Tujuan Penelitian Tujuan dari penelitian ini adalah membangun modul ETL data warehouse hasil komoditas pertanian Indonesia menggunakan Talend. Pembangunan modul ETL ini difokuskan pada proses transformasi data untuk memperbaiki proses transformasi pada modul ETL Hartomo (2015). Manfaat Penelitian Modul ETL data warehouse yang dibangun ini diharapkan dapat memudahkan para pengembang data warehouse dalam merancang dan mengimplementasikan data warehouse hasil komoditas pertanian Indonesia. Penelitian ini juga diharapkan dapat memberikan kemudahan para pengguna data dalam melakukan analisis terhadap data hasil komoditas pertanian Indonesia. . Ruang Lingkup Penelitian Ruang lingkup penelitian ini difokuskan pada transformasi data pada modul ETL data warehouse hasil komoditas pertanian Indonesia. Data yang digunakan adalah data dari seluruh subsektor hasil komoditas pertanian yang dihimpun oleh situs Kementerian Pertanian (Kementan) Republik Indonesia dengan alamat http://aplikasi.pertanian.go.id/bdsp/newlok.asp. Tools yang digunakan adalah Talend Open Studio.
3
METODE Data Penelitian Data yang digunakan dalam penelitian adalah data hasil komoditas pertanian yang diperoleh dari situs Kementrian Pertanian Republik Indonesia pada alamat http://aplikasi.pertanian.go.id/bdsp/newlok.asp. Penelitian ini memproses data dari keempat subsektor yang dimiliki Kementerian Pertanian Indonesia. Subsektor yang diproses adalah subsektor tanaman pangan, tanaman hortikultura, peternakan dan perkebunan dari 505 kabupaten di seluruh Indonesia. Penelitian ini memproses 32 komoditas yang dipilih secara acak dari keempat subsektor tersebut. Data tersebut diunduh dalam fail spreedsheet dengan format .asp.xls. Tahapan Penelitian Menurut Caster et al. (2010) arsitektur data warehouse terdapat empat layer yaitu sumber data, proses ETL, penyimpanan data warehouse, dan end user. Berkaitan dengan proses ETL data warehouse, menurut Rizescu (2006) data warehouse sebagai portal data yang canggih harus memiliki alat integrasi yang mampu mengakses data baik data terstruktur (database) maupun data tak terstruktur (dokumen). Proses ETL data warehouse terdiri dari ekstraksi data dari sumber data, transformasi dan pembersihan data dalam Data Staging Area (DSA), serta pemuatan data ke dalam data warehouse (Vassiliadis et al. 2002). Tahapan penelitian yang dilakukan ditunjukkan pada Gambar 1. Mulai
Akuisisi data
Perancangan data warehouse
Implementasi Data warehouse Pembangunan Modul ETL Implementasi ETL
Pengujian transformasi Tidak Transformasi berjalan baik
Ya Selesai
Ya
Pemodelan ETL Tidak
Pengujian nilai data pada DBMS
sesuai Ya
Pengujian nilai data pada operasi OLAP
sesuai Tidak
Gambar 1 Tahapan penelitian
Pembuatan kubus data dan visualisasi
4 Akuisisi Data Seluruh data diperoleh dari situs Kementrian Pertanian Republik Indonesia dengan alamat http://aplikasi.pertanian.go.id/bdsp/index.asp. Data yang diunduh memiliki format .asp.xls. Data yang ditampilkan adalah nilai indikator dari setiap komoditas dengan identitas data yang meliputi keterangan subsektor, komoditas, indikator, satuan, level, status angka dan pada periode tahun tertentu. Indikator yang dimaksud adalah luas panen, produksi dan produktivitas, populasi dan pemotongan ternak. Perancangan data warehouse Perancangan data warehouse dimulai dari perancangan skema model data warehouse, yaitu model data yang memiliki banyak dimensi (multidimensional). Model data ini terdiri dari tabel fakta dan beberapa tabel dimensi. Data multidimensional ini disajikan dalam bentuk kubus data sehingga memungkinkan data dianalisis dan ditampilkan ke dalam beberapa dimensi. Setiap dimensi memiliki tabel asosiasi yang disebut tabel dimensi. Model data multidimensional terdiri dari tabel dimensi, tabel fakta, dan measure. Tabel – tabel tersebut membentuk skema perancangan data warehouse. Skema yang akan digunakan pada penelitian ini adalah skema bintang. Ilustrasi skema bintang dapat dilihat pada Gambar 2. Menurut Han et al. (2011) skema bintang merupakan skema data warehouse yang paling umum digunakan dalam merancang data warehouse. Data warehouse yang seperti ini memiliki 1 tabel fakta besar yang menjadi bagian terpenting dari data dan sejumlah tabel dimensi. Skema bintang disusun menyerupai bintang, dimana tabel dimensi digambarkan dalam pola radial yang mengelilingi pusat tabel fakta.
Gambar 2 Ilustrasi skema bintang (Han et al. 2011) Implementasi Data warehouse Tahap implementasi data warehouse dilakukan dengan membangun modul ETL dan dan membangun kubus data untuk visualisasi OLAP pada data warehouse . Tahap pembangunan modul ETL meliputi pemodelan ETL nya dan
5 pengimplementasian pemodelan tersebut pada tool yang digunakan untuk membangun modul ETL. Pemodelan ETL Pemodelan ETL diklasifikasikan menjadi tiga kategori pendekatan, yakni pemodelan berdasarkan mapping expression and guideline, pemodelan berdasarkan konseptual, dan pemodelan berbasis UML environment (El-Sappagh et al. 2011). Penelitian ini menggunakan pemodelan ETL yang berdasarkan konseptual. Pemodelan ETL berbasis konseptual meliputi pemodelan konsep, pemodelan logika dan pemodelan fisik. Pemodelan konseptual menggambarkan konsep transformasi yang akan dilakukan. Konsep transformasi meliputi transformasi struktur data dan format tampilan data. Konsep transformasi data digambarkan menggunakan notasi konseptual ETL yang diperkenalkan oleh Vassiliadis et al. (2002). Notasi pemodelan konseptual ETL ditunjukkan pada Gambar 3.
Gambar 3 Notasi pemodelan konseptual ETL (Vassiliadis et al. 2002) Keterangan notasi pemodelan konseptual: Concept merepresentasikan sebuah entitas dalam data warehouse. Attributes merupakan sekumpulan informasi yang menjelaskan setiap konsep. Transformation merupakan perubahan sebagian maupun seluruhnya yang terjadi pada data selama proses ETL. ETL Constraints digunakan ketika menghadapi kondisi tertentu yang memberikan syarat untuk dipenuhi. Notes ini digunakan untuk menambahkan keterangan yang ingin perancang lakukan pada transformasi atau fase tertentu. Part-of Relationship menunjukkan hubungan antara konsep dengan atribut. Provider Relationship 1:1 memetakan sekumpulan atribut masukan ke dalam sekumpulan atribut keluaran menggunakan transformasi yang sesuai. Provider Relationship N:M memetakan beberapa kumpulan atribut masukan ke dalam beberapa kumpulan atribut keluaran menggunakan transformasi yang tepat. Transformation Serial Composition digunakan ketika akan dilakukan kombinasi dari beberapa transformasi. Dalam pemodelan konseptual, seluruh transformasi yang digunakan dikelompokkan berdasarkan kategorinya dalam template transformasi. Template transformasi yang digunakan dalam proses ETL ini ditunjukkan pada Lampiran 1. -
6 Pemodelan logika ETL menggambarkan alur kerja ETL yang fokus pada proses aliran data dari sumber data hingga menuju data warehouse. Gambaran alur ETL, aktivitas yang terlibat, kumpulan data, dan fungsi digambarkan menggunakan notasi architecture graph yang diperkenalkan oleh Simitsis (2005). Notasi architecture graph digambarkan pada Gambar 4 berikut ini.
Gambar 4 Notasi pada pemodelan logika (Simitsis 2005) Keterangan notasi pada pemodelan logika: Attributes dicirikan dengan nama dan tipe data. Recordsets dicirikan dengan nama, skema logikal dan ekstensinya pada skema fisikal. Elementary Activities representasi perubahan yang terjadi pada proses ETL yang dilakukan. Provider mengambarkan proses pemetaan antara atribut pada skema dan entitas yang terlibat. Part-of Relationship meliputi hubungan atribut dan parameter. Data types merupakan tipe data dari sebuah atribut. Functions adalah fungsi yang terdapat pada aktivitas transformasi. Function types biasanya dituliskan dalam note. Pemodelan fisik dalam proses ETL menentukan pemodelan setiap entitas dalam DBMS. Pemodelan fisik proses ETL fokus pada tipe setiap atribut yang menjadi ciri detil setiap atribut. Implementasi ETL Implementasi ETL dilakukan menggunakan komponen yang tersedia di pada Talend Open Studio sebagai data integration tool dengan konfigurasi yang sesuai dengan kebutuhan transformasi. Extract, transform, load merupakan kombinasi tiga fungsi yang secara otomatis melakukan ekstraksi data dan menempatkannya ke basis data lain yang lebih besar. Extract, Transform, Load (ETL) merupakan salah satu bagian kecil dari suatu data warehouse. Namun demikian ETL mempunyai peran yang sangat vital pada data warehouse. ETL merupakan pintu masuk data dari berbagai sumber asalnya menuju data warehouse. Data yang memasuki data warehouse harus sudah berada pada kondisi bersih, tidak ada lagi missing data, redudansi data, struktur yang tidak jelas dan sebagainya. Oleh karena itu diperlukan proses ETL untuk melakukan transformasi data dari data tak terstruktur menjadi data terstruktur. Fungsi – fungsi ETL menurut Gour et al. (2010) dijelaskan sebagai berikut. Extract – proses pembacaan data sumber data tertentu dan mengekstraknya menjadi suatu set data yang diinginkan.
7
Transform – proses konversi data yang telah diekstrak dari format sebelumnya menjadi data dengan format yang dibutuhkan sehingga dapat ditempatkan ke dalam basis data yang lain. Proses transformasi memerlukan tabel lookup untuk mengkombinasikan data. Load – proses pemetaan data ke suatu data warehouse yang dituju.
Pembuatan kubus data Tahap ini melakukan pembuatan kubus data yang diperlukan untuk membuat data warehouse. Data hasil transformasi pada tahap pembangunan modul ETL dibuatkan kubus data. Kubus data ini memungkinkan data disajikan dalam tampilan multidimensional sehingga data dapat diamati dari banyak sisi. Dalam penelitian ini kubus data dibuat menggunakan tool SpagoBI Studio. SpagoBI merupakan salah satu free and open source software (FOSS) buissness intelegence (BI) package yang memiliki analytical tools. SpagoBI merupakan BI package yang memiliki fitur lebih lengkap dibandingkan dengan beberapa BI package lainnya seperti JasperSoft, OpenI, Palo, Pentaho, dan Vanilla (Bernardio 2011). Pemilihan tool Talend pada pembangunan modul ETL memiliki keterkaitan dengan pemilihan SpagoBI sebagai BI platform. Talend merupakan ETL tool yang direkomendasikan oleh SpagoBI, karena SpagoBI telah dilengkapi dengan ETL engine yang bernama SpagoBITalendEngine. SpagoBITalendEngine digunakan untuk mengeksekusi modul ETL. Job ETL yang dibangun pada Talend Open Studio ditempatkan ke SpagoBI server. Pengujian Tahap pengujian melakukan tiga tahap pengujian yaitu pengujian transformasi pada job ETL, pengujian nilai pada DBMS dan pengujian nilai data pada operasi OLAP. Pengujian sistem ini didasarkan pada prinsip software testing yang meliputi verifikasi dan validasi. Verifikasi dilakukan dengan pengujian fungsi transformasi dan validasi dilakukan dengan pengujian nilai data pada DBMS dan pada hasil operasi OLAP. Pengujian transformasi menunjukan apakah seluruh transformasi berjalan dengan baik atau tidak. Pengujian fungsi transformasi berhasil jika selama transformasi tidak terjadi error sistem. Kemudian pengujian dilanjutkan dengan melakukan pengujian nilai data pada DBMS. Jika nilai data yang terdapat pada fail hasil komoditas pertanian sama dengan nilai keluaran pada DBMS setelah dilakukan transformasi maka pengujian nilai data pada DBMS telah berhasil. Jika masih belum selesai maka konfigurasi DBMS pada pembangunan modul ETL diulangi lagi sampai pengujian dinyatakan berhasil. Pengujian nilai data dilanjutkan pada pengujian nilai data setelah dilakukan operasi OLAP pada data warehouse. Jika nilai yang ditampilkan pada operasi OLAP data warehouse sama dengan nilai data pada fail masukan, maka pengujian telah berhasil dilakukan. Lingkungan Pengembangan Spesifikasi perangkat keras dan perangkat lunak yang digunakan untuk penelitian ini adalah sebagai berikut:
8 1 Perangkat keras berupa komputer personal dengan spesifikasi sebagai berikut : Processor Intel Core i3 CPU @ 2.40 GHz RAM 6 GB HDD 500 GB 2 Perangkat lunak yang digunakan dalam penelitian ini adalah sebagai berikut: Sistem Operasi Windows 7 Ultimate Talend Open Studio sebagai tools untuk membangun job ETL data warehouse SpagoBI Studio 5.0 sebagai tool untuk membangun skema data warehouse dan membuat kubus data multidimensi SpagoBI Server 5.0 sebagai OLAP server sebagai tempat penyimpanan kubus data multidimensi DBMS PostgreSQL sebagai penyimpanan data warehouse yang berasal dari modul ETL data warehouse JDBC 5.1 sebagai penghubung antara PostgreSQL dan SpagoBI
HASIL DAN PEMBAHASAN Akuisisi Data Data hasil komoditas pertanian Indonesia diperoleh dari situs Kementerian Pertanian Indonesia dengan alamat http://aplikasi.pertanian.go.id/bdsp/newlok.asp. Data diunduh dalam format .asp.xls. Data yang digunakan dalam penelitian ini sebanyak 32 fail yang diunduh secara langsung dari situs Kementerian Pertanian Indonesia. 32 fail tersebut terdiri dari enam fail dari subsektor perkebunan, delapan fail dari subsektor dari subsektor peternakan, tiga fail dari subsektor tanaman pangan dan 15 fail yang diambil dari subsektor tanaman hortikultura. Seluruh fail yang diunduh kemudian dilakukan perubahan format fail dari format .asp.xls menjadi format fail .xlsx. Perubahan format dilakukan agar fail dapat diproses dengan mudah ditransformasi untuk memperoleh data yang diperlukan dalam pembangunan data warehouse. Contoh tampilan fail data hasil komoditas pertanian Indonesia dapat dilihat pada Gambar 5. Seluruh fail dengan empat subsektor yang berbeda tersebut, setiap subsektornya memiliki nilai indikator masing – masing sebagai ukuran nilainya. Ukuran yang digunakan pada data tanaman pangan yaitu luas panen (ha), produksi (ton), dan produktivitas (ku/ha). Ukuran yang digunakan pada data perkebunan yaitu luas areal (ha), produksi (ton), dan produktivitas (kg/ha) serta pada data peternakan yaitu populasi (ekor), pemotongan (ekor) dan produksi (ton). Seluruh fail yang digunakan berasal dari 32 provinsi yang berbeda.
9
Gambar 5 Contoh tampilan fail data hasil komoditas pertanian Indonesia Perancangan Data warehouse Data warehouse dirancang menggunakan skema bintang dengan satu tabel fakta dan empat tabel dimensi. Tabel dimensi yang dihasikan adalah dimensi komoditas, dimensi status angka, dimensi lokasi dan dimensi waktu. Perancangan data warehouse hasil komoditas pertanian Indonesia mengadopsi perancangan data warehouse hasil komoditas pertanian Indonesia untuk subsektor tanaman hortikultura yang dilakukan oleh Hartomo (2015) yang ditunjukkan oleh Gambar 6 dengan penambahan measure.
Gambar 6 Skema bintang perancangan data warehouse (Hartomo 2015)
10 Measure yang ditambahkan adalah populasi dan pemotongan yang berasal dari subsektor peternakan. Skema bintang perancangan data warehouse setelah dilakukan penambahan measure dapat dilihat pada Gambar 7. Tabel Dimensi Komoditas id_komoditas subsektor komoditas
Tabel Dimensi lokasi id_lokasi provinsi kabupaten
Tabel Fakta id_fakta id_komoditas id_lokasi id_status id_waktu luas_panen produksi produktivitas populasi pemotongan
Tabel Dimensi Status Angka id_status status
Tabel Dimensi waktu id_waktu tahun
Gambar 7 Skema bintang perancangan data warehouse hasil komoditas pertanian Tabel dimensi yang dibentuk kemudian dibuatlah hierarki dari setiap dimensi. Hierarki ini menunjukan tingkatan dari struktur dimensi, dengan level 1 menunjukan tingkatan yang paling tinggi. Misalnya pada dimensi lokasi tingkatan “All” merupakan aggregate dari nilai measure Provinsi. Kemudian level Provinsi merupakan aggregate dari nilai measure Kabupaten. Struktur hierarki diberikan pada Tabel 1.
Dimensi Lokasi Komoditas Status Waktu
Tabel 1 Struktur hierarki tabel dimensi Level 1 Level 2 Level 3 Seluruh provinsi Provinsi Kabupaten Seluruh komoditas Subsektor Komoditas Seluruh status angka Status angka Seluruh tahun Tahun Pembangunan modul ETL
Pemodelan ETL Pemodelan konseptual pada tahap ini adalah membuat desain ETL untuk mengambil informasi dari setiap fail yang dieksekusi. Pemodelan konseptual ETL data warehouse hasil komoditas pertanian dapat dilihat pada Gambar 8. Fail masukan yang ditempatkan pada satu folder (file list) dieksekusi melalui dua job flow. Job flow pertama mengambil bagian header dan jobflow kedua mengambil bagian body dan tail. Header file yang berada pada job flow pertama terdiri dari delapan baris informasi dan tiga kolom dalam flat table, sehingga harus dipetakan ke dalam bentuk tabel basis data normal terlebih dahulu agar informasi fail dapat diekstrak.
11
Gambar 8 Pemodelan konseptual ETL data warehouse Header file diberikan perlakuan pivoting untuk mengubah struktur tabel pada header file. Pivoting mengubah tabel data 8 baris 3 kolom menjadi 3 baris 8 kolom yang kemudian dari ketiga baris tersebut dipilih baris header, baris data dan baris tidak terpakai yang dibuang. Informasi yang diperoleh dari header file digunakan sebagai lookup tabel untuk melakukan join dengan nilai keluaran dari body file. Job flow kedua mengambil bagian body dan tail file. Body file merupakan tabel nilai komoditas sedangkan tail file hanya berupa baris kosong dan keterangan kepemilikan data, yaitu Kementerian Pertanian Indonesia. Oleh karena informasi yang dikandung tail file tidak diperlukan oleh struktur data pada data warehouse, maka pada job flow kedua diperlukan filtering untuk mendapatkan body file saja dan menghilangkan tail file. Body file terdiri dari 11 kolom yang terdiri dari satu kolom nama kabupaten dan 10 kolom identitas tahun. Jumlah barisnya berbeda–beda di setiap file input-nya karena jumlah baris tersebut mengacu pada seberapa banyak jumlah kabupaten. Body file hasil filtering diberikan perlakuan unpivoting untuk mendapatkan struktur tabel yang sesuai dengan penambahan id_body sebagai surrogate key (SK). SK tersebut kemudian diproyeksikan menjadi id_fakta setelah digabungkan dengan informasi pada header file. Body file yang diberikan perlakuan unpivoting menghasilkan kolom kabupaten, tahun dan nilai. Informasi yang diperoleh dari header dan body file dipetakan ke dalam tabel fakta.
12 Tahap pemodelan logika menggambarkan aliran data hasil komoditas pertanian dan gambaran setiap transformasi yang diberikan untuk data masukan. Pemodelan logika hasil komoditas pertanian digambarkan pada Gambar 9. Aliran data digambarkan dari file tak terstruktur yang diperoleh dari file list hingga menjadi data terstruktur yang siap dipetakan ke data warehouse. Aliran data ini merupakan keluaran sementara dari setiap transformasi yang dialami file hingga ditempatkan ke dalam data warehouse.
Gambar 9 Pemodelan logika ETL data warehouse hasil komoditas pertanian Pada pemodelan logika tabel fakta dan tabel dimensi dibangun terintegrasi namun dieksekusi pada job terpisah. Pemisahan eksekusi dilakukan untuk mempermudah ekstraksi data yang fokus untuk masing-masing tabel dimensi. Pemodelan logika tabel dimensi komoditas, dimensi lokasi, dimensi status, dan dimensi waktu dapat dilihat pada Lampiran 2. Tahap pemodelan fisik melakukan penentuan tipe data setiap atribut pada setiap transformasi yang dilakukan. Pemodelan fisik data warehouse hasil komoditas pertanian Indonesia digambarkan pada Gambar 10, sedangkan
Gambar 10 Pemodelan fisik ETL data warehouse hasil komoditas pertanian
13 pemodelan fisik untuk dimensi komoditas, dimensi lokasi, dimensi status, dan dimensi waktu dapat dilihat pada Lampiran 3. Gambar tersebut menunjukkan alur transformasi yang terjadi, dimulai dengan data input di setiap job flow yang memiliki tipe data character dengan panjang karakter 25. Pada transformasi pivoting dan agregation untuk header memiliki tipe data yang sama dengan data input. Data masukan yang diproses pada job flow kedua memiliki tipe character dengan panjang 25 sampai pada transformasi penggabungan untuk kedua job flow tersebut. Setelah penggabungan kedua job flow, dilakukan transformasi konversi tipe data. Untuk atribut id_komoditi sampai dengan id_tahun yang berada pada tabel fakta memiliki tipe data character. Atribut luas panen sampai dengan pemotongan dikonversi menjadi integer karena atribut–atribut tersebut merupakan measure yang memiliki fungsi agregasi SUM. Data bersih yang telah tersimpan pada tabel fakta akan mengacu pada tabel dimensi, sehingga data yang dihasilkan saling terintegrasi. Implementasi ETL Pemodelan ETL yang telah dibuat diimplementasikan menggunakan tool Talend. Notasi konseptual yang digunakan dalam implementasi pada tool Talend dapat dilihat pada Lampiran 4. Implementasi pemodelan konseptual pada Gambar 8 untuk modul ETL data warehouse hasil komoditas pertanian ditunjukan pada Gambar 11. Implementasi ETL untuk masing-masing dimensi dapat dilihat pada Lampiran 5. Satu per satu fail yang tersimpan dikirim ke komponen Talend Excel Input. Header merupakan inisiasi fail untuk header file sedangkan body untuk body dan tail file.
Gambar 11 Implementasi pemodelan ETL dalam Talend Gambar 12 menunjukkan header file data hasil komoditas pertanian Indonesia sebelum dilakukan transformasi. Header file berisi informasi subsektor komoditas, indikator, satuan, level, provinsi, status angka dan tahun.
14
Gambar 12 Header file data hasil komoditas pertanian Informasi tersebut disajikan di setiap baris, sehingga harus dilakukan pivoting untuk memindahkan posisi baris ke kolom dan header file yang telah dibersihkan dari kolom-kolom tidak terpakai terdiri dari dua kolom saja, yaitu kolom A dan kolom C. Header file pada Gambar 12 diproses dengan implementasi pada Talend yang ditunjukkan oleh Gambar 13.
Gambar 13 Implementasi ETL pada Talend untuk memproses header file Kolom A dipilih sebagai input column yang diproyeksikan menjadi header table, sedangkan kolom C menjadi nilai yang tersimpan pada tabel. Hasil denormalisasi menggunakan tDenormalize pada Gambar 13 menyimpan kedelapan baris yang di transpose masih berada dalam satu kolom yang dipisahkan oleh operator “;”. Kemudian komponen tExtractDelimitedFields akan melakukan splitting berdasarkan operator “;” sehingga menghasilkan delapan kolom hasil splitting. Nilai yang dihasilkan digabungkan oleh komponen tUnite dengan menunggu iterasi dilakukan terhadap seluruh fail masukan. Setelah seluruh fail masukan dieksekusi menghasilkan tabel hasil ekstraksi header file yang memiliki atribut subsektor, komoditas, indikator, satuan, level, provinsi, status angka dan tahun yang ditunjukkan oleh Gambar 14.
Gambar 14 Tabel hasil ekstraksi header file Nilai tersebut kemudian digabungkan dengan dimensi lokasi yang memiliki atribut id_lokasi, Kabupaten dan Provinsi untuk mendapatkan nama kabupaten di setiap provinsi sehingga menghasilkan tabel identitas. Tabel identitas hasil ekstraksi header file dan dimensi lokasi ditunjukan pada Gambar 15. Hasil
15 ekstraksi header file tersebut menjadi lookup tabel pada proses penggabungan dengan job flow kedua.
Gambar 15 Tabel identitas hasil ekstraksi header file dan dimensi lokasi Job flow kedua memproses body dan tail file yang ditunjukkan oleh Gambar 16. Body file merupakan tabel komoditas pada lokasi dan tahun tertentu. Informasi yang dikandung sudah terangkum dalam 11 kolom, yaitu kolom lokasi yang berisi nama kabupaten di Indonesia dan 10 kolom identitas tahun pada periode tertentu yang berbeda setiap failnya. Tail file berisi informasi sumber data, dalam Gambar 16 sumber datanya diperoleh dari Kementerian Pertanian.
Gambar 16 Body and tail fail data hasil komoditas pertanian Body dan tail file yang ditunjukkan oleh Gambar 16 diproses menggunakan implementasi ETL pada Talend yang ditunjukkan oleh Gambar 17. Nama kabupaten dan kota pada kolom tersebut selalu diawali dengan awalan “Kab.” atau “Kota”. tFileList pada Gambar 17 mewakili folder penyimpanan fail, kemudian dipanggil untuk diproses body dan tail file nya saja. Tail fail dalam pemrosesan ini tidak digunakan
16
Gambar 17 Implementasi ETL pada Talend untuk memproses body dan tail file Filtering untuk mendapatkan body file dilakukan dengan memilih rows yang diawali dengan tulisan ”Kab.” Atau “Kota”. Tabel ini dinormalisasi menggunakan komponen tUnpivotRow Talend. Hasil unpivoting di disimpan sementara oleh komponen tUnite kemudian melakukan join dengan lookup tabel dari job flow pemrosesan header file. Tabel hasil pemrosesan body file ditunjukan pada Gambar 18.
Gambar 18 Hasil pemrosesan body file Dari keluaran kedua job flow di atas komponen utama tabel fakta dibentuk dan disimpan oleh DBMS. Kolom identitas hasil pemrosesan header file selanjutnya digabungkan dengan tabel hasil pemrosesan body file sehingga terbentuk tabel fakta yang ditunjukkan pada Gambar 19.
Gambar 19 Tabel fakta hasil pemrosesan fail masukan
17 Tabel fakta hasil pemrosesan pada Gambar 19 selanjutnya dilakukan pengkodean terhadap tabel fakta tersebut dengan menggabungkanya dengan seluruh tabel dimensi yang telah dieksekusi sebelumnya. Keempat tabel dimensi tersebut dan tabel fakta dipetakan ke dalam tabel fakta sebagai lookup kode menggunakan tMap Talend yang ditunjukkan oleh Gambar 20.
Gambar 20 Transformasi penggabungan 4 tabel dimensi dan tabel fakta Pengkodean dilakukan dengan mengubah nama komoditas, lokasi, status dan tahun menggunakan kode yang terdapat pada masing-masing tabel dimensi. Kode tersebut merupakan primary key setiap tabel dimensi. Misalkan status angka “Angka Tetap” pada tabel dimensi status memiliki id = 1, maka kolom status angka dalam tabel fakta yang seharusnya berisi keterangan “Angka Tetap” akan terisi dengan kode 1. Pemanggilan tabel dimensi dilakukan setelah job seluruh transformasi tabel dimensi dieksekusi. Proses transformasi tabel dimensi dapat dilihat pada Lampiran 6. Keluaran hasil transformasi seluruh tabel dimensi tersebut tersimpan di DBMS yang kemudian dipanggil oleh job tabel fakta melalui Talend DBMS input sebagai lookup tabel. Selanjutnya seluruh record yang dihasilkan disesuaikan tipe data yang dibutuhkan data warehouse menggunakan tConvertType. Nilai keluaran tabel fakta dan keempat tabel dimensi disimpan sementara pada DBMS postgresql. Nilai dalam tabel-tabel tersebut dapat bertambah nilai dan jumlah record-nya sesuai dengan data input yang dikirim melalui job pada tool Talend. Tabel fakta hasil keluaran akhir job ETL pada DBMS ditunjukkan oleh Gambar 21. Tabel yang terbentuk adalah tabel dim_komodit, dim_lokasi, dim_status, dim_waktu dan tabel fakta.
Gambar 21 Tabel yang terbentuk pada DBMS oleh job ETL
18 Hasil keluaran dari tabel fakta yang telah dikodekan dengan tabel dimensi menghasilkan tabel fakta dengan pengkodeannya. Tabel fakta hasil pemetaan akhir yang dihasilkan pada DBMS ditunjukkan pada Gambar 22.
Gambar 22 Tabel fakta data warehouse hasil komoditas pertanian Pembuatan kubus data Kubus data untuk data warehouse hasil komoditas pertanian Indonesia dibuat menggunakan BI platform SpagoBI. Penelitian ini menghasilkan satu kubus data data warehouse hasil komoditas pertanian Indonesia. Kubus data terdiri atas satu tabel fakta dan empat tabel dimensi. Pembuatan kubus data dimulai dengan menentukan dimensi dan kubus serta memilih atribut – atribut pada tabel kubus yang menjadi measure. Pembuatan kubus data dilanjutkan dengan membuat hierarki dari masingmasing dimensi dan menentukan relasi antara tabel dimensi dan kubus. Kubus data yang dihasilkan dari SpagoBI Studio ditunjukkan pada Gambar 23. Kemudian dari bisnis model kubus data, dibuatlah template OLAP untuk ditempatkan ke SpagoBI Server. Template OLAP yang terbentuk ditunjukkan pada Lampiran 7, sedangkan tampilan OLAP data warehouse hasil komoditas pertanian yang ditampilkan melalui SpagoBI Server dapat dilihat pada Lampiran 8.
Gambar 23 Kubus data warehouse hasil komoditas pertanian
19 Pengujian Pengujian pada penelitian ini didasarkan pada prinsip software testing yang meliputi verifikasi dan validasi. Verifikasi dilakukan dengan pengujian fungsi transformasi seluruh job ETL dan validasi dilakukan dengan pengujian kesesuaian nilai data antara nilai data masukan dengan nilai data yang terdapat pada DBMS maupun nilai data yang ditampilkan pada hasil operasi OLAP. Pengujian Transformasi Pengujian fungsi transformasi dilakukan dengan mengekseskusi semua job tabel fakta, job dimensi komoditas, job dimensi lokasi, job dimensi status angka dan job dimensi waktu pada Talend Open Studio. Pengujian transformasi proses ETL berhasil dilakukan tanpa terjadi error. Laporan keberhasilan proses ETL untuk tabel fakta pada jendela eksekusi ditunjukkan oleh Gambar 24. Eksekusi job yang berhasil tanpa error akan menunjukkan kode 0 pada exit code jendela eksekusi.
Gambar 24 Hasil eksekusi job ETL untuk tabel fakta Kelima job ETL telah berhasil melakukan transformasi hingga pemuatan data ke dalam data warehouse untuk mentransformasi 32 fail yang digunakan sebagai data masukan. Proses ETL pada tabel fakta menghasilkan 3490 baris data dari 32 fail masukan tersebut. Dari 32 fail masukan, job ETL menghasilkan 30 baris komoditas yang berbeda, 505 kabupaten dari seluruh provinsi di Indonesia, 2 status angka dan 56 tahun dari tahun 1960 sampai dengan 2016. Laporan keberhasilan eksekusi dimensi komoditas, dimensi lokasi, dimensi status angka, dan dimensi waktu dapat dilihat pada Lampiran 9. Pengujian nilai data pada DBMS Pengujian nilai data menunjukan apakah nilai yang terdapat pada DBMS dan nilai data yang terdapat pada tampilan hasil operasi OLAP telah sesuai dengan nilai pada data masukan sebelum melalui proses transformasi. Pengujian nilai data dimulai dengan membandingkan nilai data masukan dengan nilai data yang dihasilkan pada DBMS. Pengujian nilai data pada DBMS ditunjukkan oleh Gambar 25.
20
Gambar 25 Pengujian nilai data pada DBMS yang dihasilkan Berdasarkan data masukan produksi pepaya di Kab. Buton pada tahun 2005 adalah 511 Ton. Setelah dilakukan pengecekan bahwa komoditas pepaya memiliki kode 14 pada dimensi komoditas, kabupaten Buton memiliki kode 14 pada dimensi lokasi, status angka tetap memiliki kode 1 dan tahun 2005 memiliki kode 46. Tabel fakta dengan kode komoditas 14, kode lokasi 408, kode status 1 dan kode tahun 46 memiliki nilai 511, itu artinya nilai yang tersimpan pada tabel fakta sama dengan nilai yang terdapat pada data masukan. Pengujian nilai data masukan dengan nilai data pada DBMS dilakukan empat kali. Pengujian dilakukan sebanyak empat kali dengan mengambil empat sampel fail dari empat komoditas dari empat subsektor yang berbeda, empat provinsi dari empat pulau yang berbeda. Keempat nilai data yang diuji menghasilkan nilai yang sama antara data masukan dan data keluaran pada DBMS. Tabel Pengujian nilai data pada DBMS diberikan pada Lampiran 10. Pengujian nilai data pada operasi OLAP Pengujian nilai data DBMS telah berhasil dilakukan dan sesuai dengan data masukan. Pengujian kemudian dilanjutkan dengan pengujian nilai data pada tampilan operasi OLAP. Hasil Pengujian nilai data terhadap nilai data pada tampilan hasil operasi OLAP memiliki nilai yang sama dengan data masukan. Hasil pengujian nilai data hasil operasi OLAP ditunjukkan pada Gambar 26.
21
Gambar 26 Pengujian nilai data pada tampilan operasi OLAP Keterbatasan Sistem Penelitian ini telah diusahakan dan dilaksanakan sesuai dengan prosedur, namun demikian masih terdapat banyak kekurangan di dalamnya. Data hasil komoditas pertanian Indonesia hanya dapat diproses dengan baik oleh sistem jika untuk setiap provinsi memiliki 1 komoditas pertanian saja. Jika terdapat 2 atau lebih fail yang berisi komoditas berbeda tapi berasal dari provinsi yang sama maka akan terjadi redundansi record, meskipun pada pengujian fungsi transformasi berjalan dengan baik. Tidak tersedianya aturan formal dalam pemodelan ETL menyebabkan sulitnya membuat pemodelan ETL dengan benar. Pemodelan ETL data warehouse untuk data hasil komoditas pertanian Indonesia terhambat dengan tidak adanya informasi yang sama pada kedua bagian fail setelah fail dipisah sebagai body file dan header file. Keterbatasan pembuatan model ETL tersebut menyebabkan pembangunan modul ETL ini tidak dapat memproses seluruh fail dengan baik. Implementasi ETL yang telah dibuat pada Talend Open Studio seharusnya dapat dilakukan dengan secara langsung melalui SpagoBI Server. Job yang telah ditempatkan ke SpagoBI kemudian job serta repository ETLnya akan tersimpan di workspace SpagoBI. Talend job tersebut selanjutnya dieksekusi melalui SpagoBI Server. Keterbatasan pengetahuan dan referensi terkait konfigurasi dan pembangunannya pada modul ETL menggunakan SpagoBITalendEngine menyebabkan pengintegrasian Talend dan SpagoBI tidak dilakukan.
SIMPULAN DAN SARAN Simpulan Penelitian ini berhasil membangun modul ETL data warehouse untuk mentransformasikan data hasil komoditas pertanian Indonesia yang tidak terstruktur menjadi data terstruktur sehingga dapat diintegrasikan ke dalam data
22 warehouse. Penelitian ini menghasilkan lima job flow transformasi untuk membangun empat tabel dimensi dan satu tabel fakta yang digunakan untuk kebutuhan dalam membangun data warehouse. Pengujian telah dilakukan pada fungsi transformasi, keluaran nilai data pada DBMS dan keluaran nilai data pada tampilan hasil operasi OLAP. Transformasi telah berhasil di lakukan untuk lima job yang dihasilkan dan nilai yang dihasilkan oleh transformasi telah sesuai dengan nilai awal pada fail unduhan hasil komoditas pertanian Indonesia. Saran Dalam penelitian ini masih terdapat banyak kekurangan sehingga diperlukan pengembangan dengan menambahkan fungsi crawling. Fungsi crawling memungkinkan ekstraksi data secara langsung dari web sehingga proses extract, transform dan load data akan berjalan lebih dinamis dan cepat tanpa harus melakukan proses pengunduhan data dari situs Kementan terlebih dahulu. Transformasi masih terbatas untuk komoditas yang sama di setiap provinsinya, sehingga diperlukan pengembangan agar modul ETL data warehouse hasil komoditas pertanian dapat melakukan transformasi untuk seluruh data yang tersedia. Kemampuan modul ETLyang dibangun menggunakan Talend akan lebih baik jika diintegrasikan dengan SpagoBI sebagai BI platform pendukungnya. Sehingga diperlukan otomatisasi pengeksekusian modul ETL melalui SpagoBITalendEngine.
DAFTAR PUSTAKA Amborowati A. 2010. Analisis faktor – faktor yang mempengaruhi proses ETL pada data warehouse. Seminar Nasional Teknik Informatika. 2010 Mei 22; Yogyakarta, Indonesia. Yogyakarta (ID): UPN Veteran Yogyakarta. hlm338 – 344. Bernardio J. 2011. Open source business intelligence platforms for engineering education. Di dalam: Bernardino J, Quadrado JC. 1st World Engineering Education Flash Week; 2011 Sep 27-30; Lisbon, Portugal. Lisbon (PT) : SEFI. hlm 693-698. Boulekrouche B, Jabeur N, Alimazigi Z. 2015. An intelligent ETL grid-based solution to enable spatial data warehouse deployment in cyber physical system context. The 12th International Conference on Mobile Systems and Pervasive Computing; 2015 Agt 17-20; Belfort, Prancis. Belfort (FR): Procedia Computer Science. hlm 111–118. Caster C, Bouman R, Dongen JV. 2010. Pentaho Kettle Solutions: Building Open Source ETL Solutions with Pentaho Data Integration. Indianapolis (US): Wiley. Dwiprianti F. 2015. Online analytical processing (OLAP) berbasis web untuk tanaman hortikultura menggunakan Palo [skripsi]. Bogor (ID): Institut Pertanian Bogor. El-Sappagh SHA, Hendawi AMA, El-Bastawissy AH. 2011. A proposed model for data warehouse ETL processes. Journal of King Saud – Computer and Information Sciences. 23(2011): 91–104. doi:10.1016/j.jksuci.2011.05.005.
23 Gour V, Sarangdevot SS, Tanwar GS, Sharma A. 2010. Improve performance of extract, transform and load (ETL) in data warehouse. International Journal on Computer Science and Engineering (IJCSE). 02(03):786-789. Han J, Kamber M, Pei J. 2011. Data Mining: Concepts and Techniques. Ed ke-3. Massachusetts (US): Morgan Kaufmann. Hartomo R. 2015. Modul extract, transform, dan load untuk data warehouse tanaman hortikultura menggunakan Kettle [skripsi]. Bogor (ID): Institut Pertanian Bogor. Permana ER. 2015. Aplikasi online analytical processing (OLAP) berbasis web dari data tanaman hortikultura menggunakan SpagoBI [skripsi]. Bogor (ID): Institut Pertanian Bogor. Rizescu G. 2006. The role of enterprise portal in enterprise integration. The Annals Of "Dunãrea De Jos" University Of Galaţi Fascicle I; 2006 Sep 2123; Galați, Romania. Galati (RO): EDRC. hlm 117-122. Simitsis A. 2005. Mapping conceptual to logical model for ETL processes. 8th ACM International Workshop on Data Warehousing and OLAP (DOLAP 2005); 2005 Nov 4-5; Bremen, Jerman. Bremen (DE): ACM. hlm 67-76. Vassiliadis P, Simitsis A, Skiadopoulos S. 2002. Conceptual modeling for ETL processes. 5th ACM International Workshop on Data Warehousing and OLAP (DOLAP 2002); 2002 Nov 8; McLean, Virginia, USA. McLean (US): ACM. hlm 14-21.
24
LAMPIRAN Lampiran 1 Template transformasi berdasarkan kategori (Vassiliadis et al. 2002) No. Nama Transformasi 1 Filters Selection Not null Primary key violation Foreign key violation Unique value Domain mismatch 2 Unary transformations Push Aggregation Projection Function application Surrogate key assignment Tuple normalization Tuple denormalization 3 Binary transformations Union Join Diff Update Detection 4 Transfer operations ftp Compress/Decompress Encyrpt/Decrypt 5 File Operation EBCDIC to ASCII conversion Sort file 6 Composite transformation Slowly changing dimension Format mismatch Data type conversion Switch Extended union
Notasi
Keterangan
σ NN PK FK UN DM
Melakukan pengecekan pada kondisi tertentu, dimulai dari selection kondisi tertentu secara umum, pemrosesan untuk mengecek null value, primary atau foreign key violation.
γ π F SK N DN U ∆ ∆UPD FTP Z/DZ Cr/dCr EB2AS
Melakukan penggabungan sederhana seperti aggregation/projection dan custom function pada penugasan surrogate key, normalisasi dan denormalisasi.
Merupakan operasi biner seperti konsep union, join dan difference serta pendeteksian terhadap update data.
Merupakan transformasi untuk data besar seperti dalam arsip
Merupakan transformasi untuk data dalam format khusus
Sort SDC-x FM DTC σ* U
Merupakan kombinasi dari transformasi sederhana yang fokus pada task-task yang ada di dalam data warehouse.
25 Lampiran 2 Pemodelan logika ETL dimensi data warehouse a
Pemodelan logika dimensi komoditas
b
Pemodelan logika dimensi waktu
c
Pemodelan logika dimensi status
d
Pemodelan logika dimensi lokasi
26 Lampiran 3 Pemodelan fisik ETL dimensi data warehouse a
Pemodelan fisik ETL dimensi komoditas
b
Pemodelan fisik ETL dimensi lokasi
c
Pemodelan fisik ETL dimensi status angka
d
Pemodelan fisik ETL dimensi waktu
27 Lampiran 4 Notasi pada pemodelan konseptual dan implementasi Talend Pemodelan Konseptual
Nama Row selection Union Tupple denormalization Unique value Filter row Replace value Projection Agregation Unpivoting Looping Java code
Implementasi pada Talend
28 Lampiran 5 Implementasi ETL tabel dimensi data warehouse a
Implementasi ETL dimensi waktu
b Implementasi ETL dimensi status
c
Implementasi ETL dimensi komoditas
d Implementasi ETL dimensi lokasi
29 Lampiran 6 Proses transformasi tabel dimensi a
Proses transformasi dimensi komoditas
(a)
(b)
(c) 3 kolom 2 baris terpilih dari fail masukan untuk membentuk dimensi komoditas ditunjukkan oleh gambar (a). tDenormalize dan tExtractDelimitedFields pada gambar (b) melakukan transpose sehingga dihasilkan 2 kolom 3 baris. Baris pertama sebagai header tabel dimensi, baris ketiga sebagai nilai tabel dan baris kedua sebagai baris terbuang karena hanya berisi operator “:”. tUniqueRow mengeliminasi baris yang redundan. Sehingga hasil dari implementasi dimensi komoditas pada gambar (b) menghasilkan tabel dimensi komoditas pada gambar (c).
b
Proses transformasi dimensi status angka
(a)
(c)
(b)
30 Lanjutan Lampiran 6 Proses transformasi tabel dimensi 3 kolom 1 baris terpilih dari fail masukan yang digunakan untuk membentuk tabel dimensi status angka ditunjukkan oleh gambar (a). Kolom ketiga dipilih secara langsung sebagai nilai kolom status. tUniqueRow mengeliminasi baris yang redundan. Sehingga hasil dari implementasi transformasi dimensi status pada gambar (b) menghasilkan tabel dimensi pada gambar (c). c
Proses transformasi dimensi lokasi
(b)
(a)
(c) Tabel dimensi lokasi ditransformasi dari data kota dan kabupaten di seluruh Indonesia yang diperoleh dari penelitian Hartomo (2015). Tidak ada perubahan struktur maupun format data. Komponen tMap pada implementasi tranformasi yang ditunjukkan oleh gambar (b) memetakan seluruh data ke dalam tabel dimensi lokasi. Sehingga menghasilkan tabel dimensi lokasi pada gambar (c). d Proses transformasi dimensi waktu
(a)
(b)
31 Lanjutan Lampiran 6 Proses transformasi tabel dimensi
(c)
(d) Tabel dimensi waktu di-generate dari fail spreadsheet yang berisi field tanggal dimulainya dimensi waktu. Pembentukan tabel dimensi ini dilakukan dengan membangkitkan tanggal 1 Januari 1960 yang terdapat pada gambar (a) menggunakan komponen tJava pada implementasi transformasi yang ditunjukkan oleh gambar (b). Konfigurasi komponen tJava pada gambar (b) ditunjukkan oleh gambar (c). TalendDate.diff() membangkitkan nilai diantara 2 tanggal “StartDate” dan “CurrentDate” yaitu semua tanggal dari tanggal 1 Januari 1960 sampai dengan tanggal saat ini. Kamudian nilai tahun “yyyy” saja yang diambil dari hasil bangkitan tersebut, sehingga menghasilkan nilai tahun saja yang ditunjukkan oleh gambar (d).
32
Lampiran 7 Potongan template Mondrian OLAP hasil komoditas pertanian <SCHEMA name="Ko_Pertanian">
<Measure name="Luas panen" column="luas_panen" aggregator="sum" formatString="#,###"/> <Measure name="Produksi" column="produksi" aggregator="sum" formatString="#,###"/> <Measure name="Produktivitas" column="produktivitas" aggregator="sum" formatString="#,###"/> <Measure name="Populasi" column="populasi" aggregator="sum" formatString="#,###"/> <Measure name="Pemotongan ternak" column="pemotongan_ternak" aggregator="sum" formatString="#,###"/>
33 Lampiran 8 Tampilan operasi OLAP hasil komoditas pertanian Indonesia
Gambar diatas merupakan potongan hasil operasi OLAP pada data warehouse hasil komoditas pertanian Indonesia digunakan untuk melakukan pengujian nilai data hasil dari pemrosesan oleh module ETL data warehouse. Setiap satu provinsi hanya mengisi 1 mesure karena data masukan dari setiap provinsi hanya 1 komoditas dan 1 measure saja.
34 Lampiran 9 Hasil eksekusi job ETL untuk tabel dimensi a
Hasil eksekusi job ETL untuk dimensi komoditas
b Hasil eksekusi job ETL untuk dimensi lokasi
c
Hasil eksekusi job ETL untuk dimensi status
d Hasil eksekusi job ETL untuk dimensi waktu
35 Lampiran 10 Hasil pengujian nilai data pada DBMS No. 1
2
3
4
Identitas Subsektor Komoditi Indikator Satuan Level Provinsi Kabupaten Status angka Tahun Nilai
Data masukan Nilai Perkebunan Panili Produktivitas Kg/Ha Kabupaten Bali Kab. Jembrana Angka tetap 2001 3.125
Subsektor Komoditi Indikator Satuan Level Provinsi Kabupaten Status angka Tahun Nilai
Tanaman pangan Jangung Luas panen Ha Kabupaten Sumatera Utara Kab. Solok Angka Tetap 2003 779
Subsektor Komoditi Indikator Satuan Level Provinsi Kabupaten Status angka Tahun Nilai
Hortikultura Bawang Putih Produksi Ton Kabupaten Sulawesi Tengah Kab. Toli-toli Angka Tetap 2004 11
Subsektor Komoditi Indikator Satuan Level Provinsi Kabupaten Status angka Tahun Nilai
Peternakan Ayam Buras Pemotongan ternak ekor Kabupaten Kalimantan Tengah Kab. Kapuas Angka tetap 2009 990
Kode tabel fakta
Kode 23
23
-
-
28
28
1 42 3.125
1 42 3.125
19
19
-
-
445 1 44 779
445 1 44 779
3
3
-
-
405
405
1 45 11
1 45 11
9
9
-
-
208
208
1 50 990
1 50 990
36
RIWAYAT HIDUP Penulis lahir di Rembang pada tanggal 22 Juli 1994. Penulis merupakan anak pertama dari dua bersaudara dari pasangan Darmijan dan Jumiati. Penulis lulus dari SMA Negeri 2 Rembang pada tahun 2012, kemudian lolos seleksi masuk Institut Pertanian Bogor pada tahun 2012 melalui jalur Seleksi Nasional Masuk Perguruan Tinggi Negeri Undangan. Penulis diterima sebagai mahasiswa Departemen Ilmu Komputer, Fakultas Matematika dan Ilmu Pengetahuan Alam. Selama menjadi mahasiswa IPB, penulis aktif menjadi pengurus Bidikmisi Turun Desa, Paguyuban Bidikmisi IPB pada tahun 2012 sampai dengan tahun 2013. Pada tahun 2013 sampai tahun 2014 penulis aktif sebagai pengurus Unit Kegiatan Mahasiswa (UKM) Karate IPB. Pada tahun 2014 diangkat menjadi Badan Pengawas Organisasi UKM Karate IPB dan diangkat sebagai Badan Kehormatan UKM Karate IPB pada tahun 2015. Selain itu, penulis melaksanakan kegiatan Praktik Kerja Lapangan di Kementrian Ketenagakerjaan Republik Indonesia pada tahun 2015. Penulis menjadi asisten praktikum mata kuliah Penerapan Komputer dari bulan September 2014 sampai dengan bulan Januari 2015 di Departemen Ilmu Komputer Institut Pertanian Bogor. Penulis menjadi juga menjadi asisten praktikum mata kuliah Rekayasa Perangkat Lunak sejak Januari 2016 sampai dengan Juni 2016.