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,
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,
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
subjek-subjek 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 tabel-tabel dimensi yang berelasi dengan tabel-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).
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 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 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 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
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):
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 roll-up. Operasi ini mempresentasikan data menjadi lebih detil. Drill-down dilakukan dengan cara menurunkan tingkat suatu hirarki konsep atau menambahkan dimensi. Misalkan suatu elemen tahun
di-drill-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
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.
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.
Lapis tengah (middle tier)
Lapis tengah adalah OLAP server yang biasanya diimplementasikan dengan OLAP Relasional (ROLAP) atau OLAP Multidimensional (MOLAP).
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
memuat data dari sumber eksternal ke kubus data Palo (www.jedox.com 2008).