Data warehouse
Data warehouse menyediakan arsitektur dan alat bagi para eksekutif bisnis untuk mengatur secara sistematis, mengerti, dan menggunakan data dalam membuat keputusan strategis.
Secara umum, data warehouse merujuk pada suatu basis data yang dikelola secara terpisah dari basis data operasional pada sebuah organisasi. data warehouse dapat terdiri dari berbagai macam aplikasi sistem yang terintegrasi dan mendukung
PENDAHULUAN Latar Belakang
Badan Koordinasi Survei dan Pemetaan Nasional (Bakosurtanal) merupakan Lembaga Pemerintah Non Departemen yang bertugas melaksanakan survei dan pemetaan sesuai dengan ketentuan peraturan perundang-undangan yang berlaku. Dalam hal tersebut, Bakosurtanal mempunyai kewenangan menyediakan informasi spasial kedalam suatu produk survei dan pemetaan (surta) berupa peta atau atlas dalam berbagai format, jenis dan skala. Untuk itu, Bakosurtanal menjadi titik tumpu dalam pelaksanaan pendistribusian dan pelayanan produk surta kepada pengguna dalam berbagai kalangan.
Perolehan produk surta dapat dilakukan secara langsung atau tertulis (melalui surat/ faksimili). Untuk pembelian secara langsung, pengguna harus mengisi formulir pesanan (Form-LP) yang disediakan di loket penjualan. Setelah terjadi transaksi, petugas unit pelayanan mencatat data penjualan tersebut menggunakan Microsoft Office Excel. Pengolahan data yang disajikan dalam bentuk laporan penjualan masih dilakukan dengan query manual pada setiap tabel data penjualan yang tersimpan di Microsoft Office Excel. Laporan tersebut disesuaikan dengan kebutuhan pengguna. Dengan proses tersebut, data yang tercatat memiliki atribut-atribut terbatas dan tidak konsisten antar tahun. Hal tersebut menyebabkan tingkat akurasi rendah terhadap hasil analisis data penjualan dan membutuhkan waktu yang lama.
Untuk mempercepat proses pelaporan dan memperoleh informasi yang strategis
berdasarkan query analisis yang
multidimensi, dapat dilakukan dengan membangun aplikasi OLAP yang diintegrasikan dengan data warehouse.
Pembangunan data warehouse data
penjualan produk Bakosurtanal dan aplikasi OLAP berbasis web telah dilakukan pada penelitian sebelumnya (Nurhasanah 2009) dengan menggunakan Palo. Palo merupakan salah satu OLAP server dengan model penyimpanan data multidimensi (MOLAP) sehingga jumlah volume data yang dapat ditangani terbatas. Saat ini banyak OLAP
server yang dikembangkan dan bersifat open source salah satunya adalah Mondrian
penyimpanan data relasional (ROLAP) yang dikembangkan dengan Java dan memungkinkan penguna menganalisis dataset yang disimpan di database secara interaktif. Selain terdapat perbedaan pada OLAP server yang digunakan, skema pada penelitian ini juga berbeda dengan penelitian sebelumnya. Pada penelitian sebelumnya, skema yang digunakan adalah skema galaksi sedangkan pada penelitian kali ini digunakan skema bintang. Hal tersebut terjadi karena setelah dilakukan pengkajian lebih lanjut, terdapat redudansi data pada penelitian sebelumnya yang menggunakan skema galaksi.
Tujuan
Penelitian ini bertujuan untuk membangun suatu sistem data warehouse
yang dapat mendukung analisis penjualan produk sesuai dengan kebutuhan pengguna.
Ruang Lingkup
Ruang lingkup penelitian ini adalah: 1 Penelitian ini akan menghasilkan
prototipe data warehouse dan aplikasi OLAP berbasis web. Data tersebut dilakukan analisis menggunakan OLAP
server Mondrian.
2 Data yang digunakan adalah data penjualan produk survei dan pemetaan Bakosurtanal tahun 2002 sampai dengan 2007.
Manfaat
Hasil penelitian yang diperoleh diharapkan dapat mendukung pengambilan keputusan yang strategis untuk mencapai tujuan bisnis (meningkatkan mutu produk, meningkatkan layanan konsumen, meningkatkan penjualan, dll) yang didapat secara informatif, cepat dan akurat.
TINJAUAN PUSTAKA
Data warehouse
Data warehouse menyediakan arsitektur dan alat bagi para eksekutif bisnis untuk mengatur secara sistematis, mengerti, dan menggunakan data dalam membuat keputusan strategis.
Secara umum, data warehouse merujuk pada suatu basis data yang dikelola secara terpisah dari basis data operasional pada sebuah organisasi. data warehouse dapat
pemrosesan informasi dengan menyediakan suatu platform yang kokoh untuk analisis data yang mengandung histori dan terkonsolidasi.
Data warehouse mempunyai
karakteristik berorientasi subjek, terintegrasi, time variant dan non volatile. Hal tersebut tersebut membedakan data warehouse dengan sistem penyimpanan data lainnya, berikut adalah penjelasan dari masing-masing karakteristik (Han & Kamber 2006):
• Orientasi subjek
Data warehouse diorganisasikan pada subjek-subjek utama seperti halnya konsumen, pemasok, produk dan penjualan. Dibandingkan dengan berkonsentrasi terhadap kegiatan operasi keseharian dan proses transaksi dari suatu organisasi, data warehouse fokus terhadap pembentukan model data dan analisis data untuk pengambilan keputusan. Karena itu data warehouse
biasanya menyediakan pola pandang yang sangat mudah terhadap beberapa subjek yang ada dengan menghilangkan data yang tidak berguna pada proses pengambilan keputusan.
• Terintegrasi
Data warehouse biasanya terbentuk dengan melakukan integrasi terhadap data yang berbeda seperti halnya basis data relasional, flat file dan catatan transaksi online. Teknik data cleaning
dan integrasi data diterapkan untuk memastikan konsistensi dalam hal keseragaman penamaan, struktur pengkodean, pengukuran atribut dan hal lainnya.
• Time variant
Data disimpan untuk menyediakan informasi dari perspektif historical
(seperti 5-10 tahun kebelakang). Setiap struktur kunci pada data warehouse
mengandung elemen waktu baik itu secara implisit ataupun eksplisit.
• Non volatile
Data terpisah dari data operasional sehingga tidak membutuhkan suatu proses transaksi, recovery, dan mekanisme kontrol konkurensi akan tetapi hanya membutuhkan dua operasi
dalam mengakses data yaitu pemasukan data pertama dan pengaksesan data.
Model Data Multidimensi
Data warehouse didasarkan pada suatu model data multidimensi. Model ini melihat data dalam bentuk kubus data. Kubus data memungkinkan data yang akan dimodelkan dan dilihat dalam multidimensi. Hal tersebut didefinisikan oleh dimensi dan fakta.
Dalam istilah umum, Dimensi adalah perspektif atau entitas yang digunakan sebagai tempat menyimpan beberapa record
yang saling berhubungan. Masing-masing dimensi memiliki sebuah tabel yang terkait dengannya, disebut sebagai tabel dimensi.
Fakta adalah ukuran-ukuran numerik. Fakta merupakan kuantitas yang akan dianalisis hubungan antar dimensi. Tabel fakta berisi nama dari fakta (ukuran) dan
keys dari tabel dimensi yang bersangkutan. Untuk menggambarkan hubungan antar data pada data multidimensi digunakan skema multidimensi. Pada data warehouse, skema merupakan sekumpulan tabel yang berhubungan. Skema digunakan untuk menunjukkan hubungan antara tabel dimensi dengan tabel fakta. Skema ditentukan berdasarkan kebutuhan data warehouse dan keinginan pembuat data warehouse. Data warehouse membutuhkan skema yang ringkas dan berorientasi subjek. Tipe-tipe skema multidimensi antara lain (Han & Kamber 2006):
1 Skema bintang (star schema)
Skema bintang adalah skema data warehouse yang paling umum. Skema bintang merupakan struktur logikal yang memiliki tabel fakta yang terdiri atas data faktual ditengahnya, dan dikelilingi oleh tabel-tabel dimensi yang berisi referensi data.
Keuntungan yang didapat jika menggunakan skema ini adalah peningkatan kinerja data warehouse, pemrosesan query
yang lebih efisien, dan waktu respon yang cepat. Bentuk skema bintang dapat dilihat pada Gambar 1.
2 Skema kepingan salju (snowflake schema)
Skema kepingan salju adalah variasi dari skema bintang yang beberapa tabel dimensi dinormalisasi sehingga membagi data kedalam tabel tambahan.
Gambar 1 Skema bintang (Han & Kamber 2006).
Perbedaan utama antara model kepingan salju dan skema bintang adalah bahwa tabel dimensi dari model kepingan salju dapat disimpan dalam bentuk normalisasi untuk mengurangi redudansi. Selanjutnya, struktur kepingan salju dapat menghemat penggunaan memori, tapi waktu yang dibutuhkan untuk pemrosesan query menjadi lebih lama akibatnya kinerja sistem dapat berdampak buruk. Bentuk skema kepingan salju dapat dilihat pada Gambar 2.
Gambar 2 Skema kepingan salju (Han & Kamber 2006).
3 Skema galaksi (fact constellation) Aplikasi canggih mungkin memerlukan beberapa tabel fakta untuk berbagi tabel dimensi. Skema semacam ini dapat dilihat sebagai kumpulan bintang, dan karenanya disebut skema galaksi atau konstelasi fakta. Keuntungan menggunakan skema ini adalah menghemat memori dan mengurangi kesalahan yang mungkin terjadi. Bentuk skema galaksi dapat dilihat pada Gambar 3.
Gambar 3 Skema galaksi (Han & Kamber 2006).
Operasi-operasi pada OLAP
Dalam model multidimensi, data tersebut akan disusun dalam berbagai dimensi, dan masing-masing dimensi berisi beberapa tingkat abstraksi yang didefinisikan oleh konsep hierarki. Hal tersebut memberikan fleksibilitas bagi pengguna untuk melihat data dari perspektif yang berbeda. Sejumlah operasi OLAP pada kubus data yang ada untuk mewujudkan perspektif yang berbeda, memungkinkan query interaktif dan analisis data. Oleh karena itu, OLAP menyediakan lingkungan yang user-friendly untuk analisis data secara interaktif. Beberapa operasi OLAP dijelaskan berikut ini (Han & Kamber 2006):
• Roll up (drill up): roll up dilakukan dengan cara menaikkan tingkat hierarki atau mereduksi jumlah dimensi.
• Drill down: drill down merupakan kebalikan dari roll up. Operasi ini merepresentasikan data secara lebih detail.
• Pivot (rotate): merotasikan sumbu data untuk memberikan alternatif dalam presentasi data.
• Slice and Dice: slice melakukan seleksi pada satu dimensi kubus sehingga menghasilkan subcube. Dice merupakan proses mendefinisikan subcube dengan memilih dua atau lebih dimensi.
• Pivot (rotate): memvisualisasikan operasi yang merotasikan sumbu data sebagai alternatif dalam presentasi data.
Pemodelan Penyimpanan Data
Server OLAP memfasilitasi pengguna dengan data multidimensi dari data warehouse atau data mart, tanpa
fisik dan implementasi OLAP server harus mempertimbangkan masalah penyimpanan data. Implementasi dari sebuah server data warehouse untuk pemrosesan OLAP meliputi (Bouman & Doungen 2009):
MOLAP
Multidimensional online analitycal processing (MOLAP) menyimpan data dan aggregasi pada struktur data multidimensi. Struktur MOLAP ini tidak tersimpan pada
data warehouse tapi tersimpan pada OLAP
server, sehingga performa query yang dihasilkan olehnya sangat bagus. Model penyimpanan ini sesuai untuk database
dengan ukuran kecil sampai sedang.
ROLAP
Relational online analitycal processing
(ROLAP) menggunakan tabel pada
relational database untuk menyimpan detail data dan aggregasi kubus. Berbeda dengan MOLAP, ROLAP tidak menyimpan salinan
database tapi mengakses langsung pada tabel fakta ketika membutuhkan jawaban sebuah query, sehingga query pada ROLAP mempunyai response time yang lebih lambat dibandingkan MOLAP maupun HOLAP. Karakteristik model ini digunakan untuk menyimpan data yang besar dan jarang dilakukannya proses query. Misalkan, data histori dalam jumlah besar dari beberapa tahun yang sebelumnya.
HOLAP
Hybrid OLAP, Menggabungkan
teknologi ROLAP dan MOLAP. HOLAP menggabungkan kelebihan-kelebihan yang ada pada keduanya, skalabilitas yang lebih besar dari ROLAP dan perhitungan yang lebih cepat dari MOLAP. HOLAP menggunakan relational database untuk menyimpan detil data dan menggunakan
multidimentional database untuk menyimpan agregasinya.
Arsitektur Komponen OLAP Pentaho
Mondrian merupakan aplikasi server
OLAP berbasis open source yang sangat populer dan saat ini bernaung di bawah Pentaho Corporation. Proyek Mondrian ini merupakan kombinasi yang sangat baik dengan JPivot - interface berbasis web yang juga merupakan proyek open source. Gambar 2 menunjukkan gambaran semantik dari komponen Pentaho Analysis Services
dan hubungan diantara komponen tersebut. Urutan peristiwa pada Gambar 4
menjelaskan apa yang terjadi ketika pengguna menggunakan aplikasi Pentaho OLAP (Bouman & Doungen 2009).
1 Pengguna web browser menggunakan sebuah HTTP request untuk melihat,
browse atau drill down kedalam tabel pivot OLAP
2 JPivot servlet menerima request dari pengguna dan menerjemahkan request
tersebut kedalam sebuah MDX query. MDX query ini kemudian dikirmkan ke Mondrian engine
3 Mondrian menginterpretasikan MDX
query dan menerjemahkannya kedalam satu atau lebih SQL query. Teknik khusus ini disebut sebagai ROLAP, yang merupakan singkatan dari
Relational OLAP
4 Relational Database Management System (RDBMS) mengeksekusi query
yang diberikan oleh Mondrian. Mondrian menerima hasil query dalam bentuk tabular (relational)
5 Mondrian memproses hasil yang
diterima dari RDBMS dan menerjemahkannya kedalam result-set
multidimensi. Ini sebenarnya adalah hasil query MDX dari query MDX yang dikirim ke Mondrian pada langkah 2
6 JPivot menggunakan hasil
multidimensi untuk membuat halaman HTML menampilkan data. Inilah yang kemudian dikirim ke browser untuk ditunjukkan kepada pengguna
Metode Pengembangan Data Warehouse
Metode yang digunakan untuk merancang database operasional meliputi tahapan yang didefinisikan dengan baik. Tahap pertama adalah spesifikasi kebutuhan yang terdiri dari mengumpulkan permintaan pengguna ke dalam spesifikasi yang koheren dan ringkas. Tahap berikutnya, desain konseptual, desain logis, dan desain fisik yang merupakan hasil penerjemahan dari kebutuhan pengguna.
Karena data warehouse adalah database
yang khusus ditujukan untuk mendukung proses pengambilan keputusan, tahapan yang digunakan dalam desain database
konvensional diadopsi untuk pengembangan
Schema File (XML) RDBMS
∑
Mondrian ROLAP Engine 3. SQL Jpivot Servlet 2. MDX 5. Multidimensional Result 4. Relational Result Read Metadata <schema> <cube> ……… ∑ Edit PublishPentaho Schema Workbench XML Editor Pentaho Agregator Designer Metadata and Beck End
OLAP Front End
1. HTTP Request
Optimize, Publish Web Browser Crosstab
6. HTML Response Data Wareh ouse Pentaho BI serve r Client
Gambar 4 Gambaran komponen Pentaho OLAP (Bouman & Doungen 2009). Selama proses pengumpulan kebutuhan,
pengguna di berbagai tingkat manajemen diwawancara untuk mengetahui analisis kebutuhan mereka. Spesifikasi yang diperoleh berfungsi sebagai dasar untuk membuat sebuah skema database yang mampu merespon permintaan pengguna. Dalam banyak situasi, karena kurangnya model konseptual yang diterima baik untuk aplikasi data warehouse, desainer
melewatkan tahap desain konseptual dan menggunakan representasi logis berdasarkan skema bintang dan / atau skema kepingan salju. Selanjutnya desain fisik mempertimbangkan fasilitas yang disediakan oleh DBMS yang ada untuk melakukan penyimpanan, pengindeksan, dan manipulasi data yang terdapat pada data warehouse.
warehouse berbeda secara signifikan dari
pengembangan sistem database
konvensional. Oleh karena itu, modifikasi terhadap metode yang dijelaskan di atas sangat penting. Sebagai contoh, tidak seperti
database konvensional, data dalam data warehouse diekstrak dari sistem beberapa sumber. Sebagai akibatnya, beberapa pendekatan untuk desain data warehouse
tidak hanya mempertimbangkan kebutuhan pengguna tetapi juga ketersediaan data. Selain itu, karena dalam banyak kasus data diambil dari berbagai sumber maka harus ditransformasikan sebelum dimuat ke dalam
data warehouse, maka perlu
dipertimbangkan selama desain data warehouse proses ekstraksi-transformasi-loading (ETL). Gambaran metode pengembangan data warehouse dapat dilihat pada Gambar 5 (Malinowski & Zimányi
Keterangan:
: Optional
M LITIAN
Taha nelitian
ini dapa nelitian
ini
ni dilakukan desain logis t-atribut yang didapat pada h
P
ni data sudah siap untuk
data warehouse. Tahap
ni melakukan konversi data n pada proses ETL kedalam
ni dilakukan setelah pembuatan house selesai. Pengujian ini ila
Tahap ketiga yang dilakukan pada penelitian ini adalah membuat data
pengembangan
data warehouse (Malinowski &
Gambar 5 Gambaran metode