1
PENDAHULUAN Latar Belakang Saat ini sudah banyak organisasi yang telah mengadopsi teknologi data warehouse. Penerapan teknologi ini sangat membantu sekali bagi suatu organisasi yang memiliki data yang sangat besar (sepertii data pelanggan, data penjualan dan sebagainya yang berasal dari masa lalu hingga sekarang) untuk menganalisis perkembangan organisasi dan hasil-hasil yang telah dicapainya secara histori. Data yang sangat besar tersebut, yang bersumber dari berbagai macam bentuk penyimpanan data dan memiliki format yang berbeda-beda dapat diintegrasikan menjadi suatu bentuk penyimpanan data melalui proses pembersihan dan integrasi data. Data yang sudah tergabung tersebut terpisah secara fisik dari lingkungan operasional. Data warehouse umumnya diintegrasikan dengan aplikasi On-Line Analytical Processing (OLAP) yang memudahkan pengguna untuk memilah informasi dari data multi dimensi secara interaktif. Informasi yang didapatkan biasanya berupa pola kecenderungan ukuran suatu subjek pada beberapa waktu tertentu, misalnya informasi jumlah pelanggan dari tahun 2000 hingga 2008. Saat ini berbagai macam aplikasi data warehouse beserta aplikasi OLAP-nya telah banyak bermunculan, dan masing-masing menawarkan kelebihan dan kemudahan dalam penggunaannya. Palo adalah satu dari sekian banyak pengembang aplikasi data warehouse beserta OLAP-nya yang menyediakan aplikasi open source dan versi gratis dari aplikasinya. Aplikasi yang diberikan adalah sebuah server OLAP dan sebuah OLAP client yang bisa dijalankan dengan program spreadsheet Microsoft Excel. Namun Palo juga menyediakan API (Aplication Program Interface) bagi server OLAP-nya untuk berbagai platform bahasa pemrograman seperti Java, PHP, C, dan .NET. Hal ini membuatnya bersifat fleksibel untuk diintegrasikan dengan berbagai aplikasi. Perkembangan Palo pada saat tulisan ini dibuat sudah mencapai versi 2.0. Pada penelitian ini akan dibuat suatu perbandingan kinerja antara Palo versi 1.0c dengan Palo versi 2.0. Aplikasi OLAP yang digunakan dalam perbandingan ini adalah aplikasi yang telah dibangun sebelumnya oleh Abi Herlambang, S.Kom, yaitu Aplikasi
OLAP PPMB IPB yang berbasis web. Data yang digunakan dalam penelitian ini juga sama, yaitu data pelamar melalui jalur USMI dan data mahasiswa dari PPMB serta data IPK mahasiswa Tingkat Persiapan Bersama (TPB) IPB tahun masuk 2000 sampai 2004. Tujuan Tujuan dari penelitian ini adalah: 1. Mengetahui seberapa besar perbedaan kinerja antara Palo versi 1.0c dengan Palo versi 2.0. berdasarkan waktu eksekusi suatu operasi OLAP. 2. Melakukan proses migrasi dari Palo 1.0c ke Palo 2.0 untuk aplikasi OLAP PPMB IPB. Ruang Lingkup Dalam penelitian ini versi dari bahasa pemrograman yang digunakan adalah berbeda, yaitu PHP versi 5.1.6 untuk Palo versi 1.0c dan PHP versi 5.2.5 karena API yang digunakan pada masing-masing Palo hanya bisa bekerja sesuai dengan versi PHP tersebut. Operasi OLAP yang dibandingkan hanya tiga, yaitu drill-down, slice, dan dice. Perbandingan kinerja hanya didasarkan pada lama waktu eksekusi dari operasi OLAP yang dilakukan. Manfaat Hasil dari penelitian ini diharapkan dapat menjadi bahan pertimbangan bagi pihak-pihak yang telah menggunakan Palo versi 1.0c untuk bermigrasi ke Palo versi 2.0.
TINJAUAN PUSTAKA Data Warehouse Data warehouse adalah sebuah sistem yang berisi sekumpulan data dari berbagai macam sumber yang terintegrasi menjadi satu dan dikelola secara terpisah dari basis data operasional. Data warehouse merupakan ruang penyimpanan (atau arsip) informasi yang dikumpulkan dari berbagai sumber, disimpan dengan sebuah skema terintegrasi pada satu tempat. Data/infomasi tersebut tersimpan dalam jangka waktu yang lama, sehingga memungkinkan pengguna mengakses data historis. Data warehouse menyediakan satu tampilan data terkonsolidasi, sehingga menciptakan query untuk proses pengambilan keputusan menjadi lebih mudah. Dengan mengakses informasi dari data warehouse,
2
proses traksaksi online tidak terganggu oleh beban kerja proses pengambilan keputusan (Silberschatz et al 2006). Data warehouse adalah sekumpulan data berorientasi subjek, terintegrasi, time-variant, dan non-volatile yang mendukung proses pembuatan keputusan dari manajemen (Inmon 2002). Keempat istilah tersebut adalah hal-hal yang membedakan antara data warehouse dengan sistem penyimpanan data lainnya. • Subject–oriented artinya sebuah data warehouse diorientasikan pada subjeksubjek utama, seperti pelanggan, penyedia barang, produk, dan penjualan. Hal ini berbeda dengan operasional basis data yang berfokus pada operasi dan proses transaksi harian, data warehouse lebih berfokus pada pemodelan dan analisa dari data untuk pembuatan keputusan. • Integrated artinya sebuah data warehouse dibangun dengan mengintegrasikan berbagai macam sumber data yang berbeda-beda seperti basis data relasional, file text biasa, dan data transaksi online. Hal ini berbeda dengan data operasional yang hanya berasal dari sumber-sumber sistem penyimpanan data yang identik. • Time-variant artinya setiap data yang ada dalam data warehouse adalah merupakan informasi yang memiliki perspektif histori, seperti misalnya produksi suatu item sepanjang lima tahun terakhir. Setiap struktur kunci dalam data warehouse mengandung elemen waktu baik secara eksplisit maupun secara implisit. Hal ini berbeda dengan data operasional yang bisa memiliki banyak perspektif. • Nonvolatile artinya sebuah data warehouse selalu terpisah secara fisik dari aplikasi pengolahan data yang ada di dalam lingkungan operasional. Jadi berdasarkan hal tersebut data warehouse tidak membutuhkan pemrosesan transaksi, proses recovery, dan mekanisme pengaturan concurrency. Operasi yang ada biasanya hanya berupa pengisian awal data dan pengaksesan data. Data warehouse merupakan ruang penyimpanan (atau arsip) informasi yang dikumpulkan dari berbagai sumber, disimpan dengan sebuah skema terintegrasi pada satu tempat. Data/infomasi tersebut tersimpan dalam jangka waktu yang lama, sehingga memungkinkan pengguna mengakses data historis. Data warehouse menyediakan satu
tampilan data terkonsolidasi, sehingga menciptakan query untuk proses pengambilan keputusan menjadi lebih mudah. Dengan mengakses informasi dari data warehouse, proses traksaksi online tidak terganggu oleh beban kerja proses pengambilan keputusan (Silberschatz et al 2006). Data warehousing adalah suatu infrastruktur perangkat lunak yang mendukung aplikasi OLAP dengan menyediakan sebuah koleksi alat bantu yang (i) mengumpulkan data dari sekumpulan sumber-sumber heterogen terdistribusi, (ii) membersihkan dan mengintegrasikan data tersebut ke dalam representasi yang seragam (iii) mengagregasi dan mengorganisasi data tersebut ke dalam struktur multidimensional yang tepat untuk pengambilan keputusan, dan (iv) memperbaharuinya secara periodik untuk menjaga agar data mutakhir dan akurat (Bouzeghoub dan Kedad 2000). Model Data Multidimensi Pembuatan data warehouse didasarkan pada model data multidimensi. Model ini menampilkan data dalam bentuk kubus. Model data multidimensi terdiri dari dimensi (dimensions) dan fakta (facts) (Han dan Kamber 2006). Dimensi adalah perspektif atau entitas penting yang dimiliki oleh organisasi. Setiap dimensi mungkin memiliki satu tabel yang berasosiasi dengannya yang disebut dengan tabel dimensi yang mendeskripsikan dimensi itu sendiri. Dimensi akan berubah jika analisis kebutuhan pengguna berubah. Dimensi mendefinisikan label yang membentuk isi laporan. Tabel dimensi berukuran lebih kecil daripada tabel fakta dan berisi data tidak numerik. Pada data warehouse, kubus data merupakan kubus dengan n-dimensi (Han dan Kamber 2006). Fakta adalah ukuran-ukuran numerik, merupakan kuantitas yang akan dianalisis hubungan antar dimensinya. Tabel fakta berisi nama-nama fakta (ukuran) dan key dari tabeltabel dimensi yang berelasi dengan tabel fakta itu. Data fakta diekstrak dari berbagai sumber. Data fakta cenderung stabil dan tidak berubah seiring waktu. Tabel fakta berukuran besar, memiliki jumlah baris sesuai dengan jumlah kombinasi nilai dimensi yang mungkin dan jumlah kolom sesuai dengan jumlah dimensi yang direpresentasikan (Han dan Kamber 2006).
3
Kubus data disebut juga cuboid, berasal dari banyak dimensi. Potongan cuboid yang lebih kecil dapat dibuat dengan mengambil sebagian dimensi dari sebuah cuboid besar. Potongan cuboid memiliki tingkat yang lebih tinggi (besar nilainya) dari cuboid asalnya, cuboid dengan tingkat terendah disebut base cuboid (Han dan Kamber 2006). Gambaran kubus data dengan tiga dimensi dapat dilihat pada Gambar 1. Kubus data tersebut memiliki dimensi time, item, dan location, ukuran yang ditampilkan adalah jumlah hasil penjualan item.
Gambar 2 Skema bintang (Han & Kamber 2006). Skema snowflake (snowflake schema) Skema snowflake adalah variasi dari skema bintang dimana beberapa tabel dimensi dinormalisasi, jadi dihasilkan beberapa tabel tambahan. Bentuk skema snowflake dapat dilihat pada Gambar 3.
Gambar 1 Representasi kubus data dengan 3 dimensi (Han dan Kamber 2006). Skema basis data berisi kumpulan entitas dan hubungan antarentitas. Sebuah data warehouse memerlukan skema yang ringkas dan berorientasi subjek yang dapat digunakan dalam analisis data on-line (Han dan Kamber 2006). Skema-skema yang biasa dipakai untuk membangun data warehouse di antaranya adalah:
Skema bintang (star schema) Skema ini disebut skema bintang karena hubungan antara tabel dimensi dan tabel fakta menyerupai bintang, dimana satu tabel fakta dihubungkan dengan beberapa tabel dimensi. Bentuk skema bintang dapat dilihat pada Gambar 2.
Gambar 3 Skema snowflake (Han & Kamber 2006). Skema galaksi (fact constellation) Pada skema galaksi, beberapa tabel fakta berbagi tabel dimensi. Bentuk skema galaksi dapat dilihat pada Gambar 4.
Gambar 4 Skema galaksi (Han & Kamber 2006). On-Line Analytical Processing (OLAP) On-Line Analytical Processing (OLAP) terdiri dari seperangkat aplikasi untuk membantu proses analisis dan perbandingan data dalam basis data. Kegunaan utama
4
aplikasi OLAP adalah kemampuan interaktifnya untuk membantu pimpinan organisasi melihat data dari berbagai perspektif (Post 2005). Aplikasi dan metoda OLAP membantu pengguna menganalisis data pada sebuah data warehouse dengan menyediakan berbagai tampilan data, dan didukung dengan representasi grafik yang dinamis. Dalam tampilan tersebut dimensi-dimensi data berbeda menunjukkan karakteristik bisnis yang berbeda pula. Aplikasi OLAP sangat membantu untuk melihat data dimensional dari berbagai sudut pandang. Aplikasi OLAP tidak belajar dan tidak menciptakan pengetahuan baru dari data dengan sendirinya, tetapi merupakan alat bantu visualisasi khusus untuk membantu end-user menarik kesimpulan dan keputusan. Aplikasi OLAP sangat berguna untuk proses data mining, OLAP dapat menjadi bagian dari data mining tetapi keduanya tidak bersifat substitusi (Kantardzic 2003). Berikut adalah operasi-operasi yang bisa dilakukan oleh aplikasi OLAP (Han dan Kamber 2006):
yang bertujuan untuk menyediakan presentasi alternatif dari data. Satu kategori dari OLAP yang mulai muncul pada tahun 1997 adalah Web-based OLAP (WOLAP). Dengan produk ini pengguna web browser atau komputer dalam jaringan dapat mengakses dan menganalisis data dalam data warehouse. WOLAP dapat diterapkan dalam internet atau intranet, namun banyak organisasi lebih memilih intranet karena alasan keamanan dan kerahasiaan data. WOLAP dapat digunakan selama klien memiliki perangkat lunak web yang diperlukan dan terhubung dengan jaringan komputer yang benar. Teknologi ini juga mengeliminasi kebutuhan akan instalasi paket perangkat lunak pada komputer pengguna (Mallach 2000). Arsitektur Data Warehouse Data warehouse biasanya dibangun dengan menggunakan arsitektur three-tier. Bentuk arsitektur three-tier dapat dilihat pada Gambar 5.
Roll-up Operasi ini melakukan agregasi pada kubus data dengan cara menaikkan tingkat suatu hirarki konsep atau mengurangi dimensi. Misalkan pada kubus data dimensi wilayah pada level kota di-roll-up menjadi level propinsi atau negara. Drill-down Drill-down adalah kebalikan dari rollup. Operasi ini mempresentasikan data menjadi lebih detil. Drill-down dilakukan dengan cara menurunkan tingkat suatu hirarki konsep atau menambahkan dimensi. Misalkan suatu elemen tahun didrill-down menjadi elemen triwulan, bulan, atau hari. Slice dan Dice Operasi slice melakukan pemilihan satu dimensi dari kubus data sehingga menghasilkan bagian kubus (subcube). Operasi dice menghasilkan bagian kubus (subcube) dengan melakukan pemilihan dua atau lebih dimensi. Pivot (rotate) Pivot adalah operasi visualisasi dengan memutar koordinat data pada tampilan
Gambar 5 Arsitektur three-tier data warehousing (Han dan Kamber 2006). Lapisan-lapisan arsitektur data warehousing tersebut adalah (Han dan Kamber 2006): Lapis bawah (bottom tier) Pada lapis bawah terdapat server data warehouse yang biasanya merupakan sebuah sistem basis data relasional. Pada lapis ini data diambil dari basis data operasional dan sumber eksternal lainnya, diekstrak, dibersihkan, dan ditransformasi. Data disimpan sebagai data warehouse.
5
Lapis tengah (middle tier) Lapis tengah adalah OLAP server yang biasanya diimplementasikan dengan OLAP Relasional (ROLAP) atau OLAP Multidimensional (MOLAP).
METODE PENELITIAN Migrasi Data dan Aplikasi OLAP
Lapis atas (top tier) Lapis atas adalah lapisan front-end client yang berisi query dan perangkat pelaporan, perangkat analisis, dan/atau perangkat data mining (seperti: analisis tren, prediksi, dan lainnya). Palo Palo merupakan basis data berbasis sel yang multidimensional, hirarkis, dan berbasis memori. Query dalam Palo menghasilkan satu nilai sel tunggal, bukan baris data seperti basis data relasional. Palo menyimpan data dalam kubus data. Dengan dimensi yang hirarkis, kubus data Palo mampu melakukan agregasi multidimensi. Palo berbasis memori yang berimplikasi pada kecepatan (www.jedox.com 2008). Palo menyediakan Palo Excel Add-In yang terintegrasi dengan Microsoft Office Excel. Palo Excel Add-In memiliki fasilitas untuk menampilkan data dari kubus data Palo, membentuk struktur kubus data Palo, dan
Asal PK
memuat data dari sumber eksternal ke kubus data Palo (www.jedox.com 2008).
Aplikasi OLAP dibangun untuk mempresentasikan hasil operasi-operasi OLAP. Kelebihan aplikasi ini dibanding Palo Excel Add-In adalah berbasis web, terdapat operasi roll-up dan drill-down dalam tabel, dan grafik dinamis. Pengguna dapat mengevaluasi pola dengan menentukan kubus, ukuran, dimensi-dimensi, dan elemen-elemen dimensi, kemudian aplikasi akan memvisualisasikan ke bentuk yang mudah dipahami. Aplikasi OLAP PPMB IPB yang berjalan pada Palo versi 1.0c menggunakan skema galaksi. Skema galaksi digunakan karena terdapat dua tabel fakta, yaitu tabel Pelamar dan tabel Mahasiswa, dan terdiri dari sepuluh tabel dimensi, yaitu tabel Asal, Listrik, BiayaHidup, KategoriSLA, Waktu, JenisKelamin, Studi, Jalur, Pendidikan, dan PekerjaanAyah. Bentuk skema data warehouse PPMB IPB dapat dilihat pada Gambar 6.
Waktu
id_asal
PK
propinsi pulau
id_waktu
Jalur PK
tahun_masuk Pelamar
Mahasiswa
id_jalur jalur
Listrik PK
id_listrik listrik
BiayaHidup PK
id_biaya biaya_hidup
FK1 FK2 FK3 FK4 FK5 FK6 FK7 FK8 FK9
id_waktu id_asal id_kel studi_pilihan1 studi_pilihan2 studi_putusan id_listrik id_biaya id_kategori jumlah_pelamar_usmi
JenisKelamin PK
id_kel lelaki_perempuan
FK1 FK2 FK3 FK4 FK5 FK6 FK7
id_waktu id_jalur id_kel pendidikan_ayah pendidikan_ibu id_pek id_studi rataan_pendapatan_ayah rataan_ipk_tpb jumlah_mhs
Studi PK
id_studi
KategoriSLA PK
id_kategori kategori_sla
program_studi departemen fakultas
Gambar 6 Skema Galaksi data warehouse PPMB IPB.
Pendidikan PK
id_pend pendidikan
PekerjaanAyah PK
id_pek pekerjaan_ayah