Konsep Hirarki dengan Jumlah Nilai Berbeda Setiap Cuboid

Basis data Oracle ini pertama kali dikembangkan oleh Larry Ellison, Bob Miner dan Ed Oates lewat perusahaan konsultasinya bernama Software Development Laboratories SDL pada tahun 1977. Pada tahun 1983, perusahaan ini berubah nama menjadi Oracle Corporation sampai sekarang. id.wikipedia.org

2.2. Teori Khusus

2.2.1. Efisiensi OLAP Query

2.2.1.1. Konsep Hirarki dengan Jumlah Nilai Berbeda Setiap

Atribut Untuk memilih cuboid mana yang paling untuk melakukan query, hal yang harus diperhatikan diantaranya adalah hirarki. Menggunakan bantuan hirarki maka sangat dimudahkan ketika memilih cuboid mana yang paling tepat untuk melakukan query, karena dengan menggunakan hirarki maka dapat melihat level dari dimensi-dimensi yang digunakan pada gudang data. Sebagai contoh terdapat hirarki “day month quarter year ” pada dimensi time maka level yang terluar yakni year merupakan level yang paling baik . Selain itu juga perlu memperhatikan granularity data data. Granularity data merupakan tingkat kedetailan dari data dalam suatu data warehouse. Dalam penelitian ini cara yang digunakan untuk menentukan hirarki dari dimensi yang ada yakni dengan cara, pertama lakukan sorting secara ascending pada setiap atribut yang ada. Kedua hasil dari sorting tersebut diurutkan dari atas ke bawah dengan susunan atribut pertama berada pada bagian paling atas. Dengan hasil hirarki yang didapat maka dapat menentukan apakah perlu ada perubahan susunan hirarki atau tidak. Gambar 2. 7 Contoh hirarki yang terbentuk Gambar 2.7 merupakan contoh hirarki yang terbentuk dengan masing-masing nilai yang dimiliki oleh masing-masing atribut. Hirarki yang nantinya terbentuk sebagai berikut streetcityprovince or statecountry dari contoh hirarki tersebut tidak memerlukan perubahan hirarki, jika dilihat dari atributnya susunan dari yang paling spesifik ke umum susunannya sudah tepat. Jiawei et all, 2006.

2.2.1.2. Cuboid

Data warehouse pada umumnya berisi data dalam jumlah besar. Untuk itu OLAP dituntut untuk dapat melakukan pemrosesan query dengan cepat. Didalam data cube terdapat cuboid yang menggambarkan dimensi yang ada didalam sebuah cube atau group by yang ada didalam cube tersebut. Cuboid berasal dari banyak dimensi, pengertian dari cuboid itu sendiri adalah “data cube is a lattice of cuboids”, atau data cube merupakan pola-pola dari cuboids. Cuboid yang paling rendah disebut dengan base cuboid, sedangkan cuboid dengan tingkat paling tinggi disebut apex cuboid. Jiawei et all, 2006. Untuk lebih jelasnya dapat dilihat pada gambar 2.8 pada base cuboid terdiri dari tiga dimensi yakni city, item dan year, sedangkan pada apex cuboid atau 0-D cuboid menunjuk dimana group by tersebut kosong. Gambar 2. 8 Lattice of cuboids, 3-D data cube untuk 3 dimensi. Setiap cuboid menunjukkan derajat yang berbeda. Untuk menghitung jumlah cuboid maka jumlah total kubus untuk n-dimensi data kubus rumus 2 n , namun rumus tersebut dapat digunakan jika tidak ada hirarki yang berhubungan dengan masing-masing dimensi. Namun, dalam prakteknya banyak dimensi yang memiliki hirarki. Sebagai contoh, dimensi waktu biasanya tidak hanya pada satu tingkat konseptual level, seperti year, tetapi lebih pada konsep multiple level , seperti dalam hirarki day month quater year. Untuk n-dimensi data cube, jumlah kubus yang dapat dihasilkan termasuk kubus dihasilkan oleh hierarki pada masing-masing dimensi adalah sebagai berikut dimana 1 L i adalah jumlah level yang berhubungan dengan suatu dimensi. Perhitungan cuboid tanpa hirarki maupun dengan hirarki diatas bertujuan agar tidak terjadi curse of dimensionality. Curse of dimensionality merupakan kondisi dimana kebutuhan penyimpanan berlebihan saat banyak dimensi memiliki hirarki dengan beberapa level. Sebelum melakukan query pada gudang data, tahap yang harus dilakukan yaitu menentukan cuboid-cuboid yang mungkin yang akan digunakan dalam melakukan query. Dari cuboid yang mungkin tersebut kemudian dipilih cuboid yang paling tepat untuk melakukan query. Jiawei et all , 2006. Cuboid-cuboid yang mungkin dipilih menggunakan hirarki, dengan bantuan hirarki dapat memilih cuboid yang mungkin dengan level yang baik. Jika level cuboid yang dipilih semakin baik maka besar kemungkinan cuboid tersebut akan digunakan untuk melakukan pemrosesan query. Setelah melakukan tahap menentukan cuboid yang mungkin dengan menggunakan hirarki, dan mendapatkan cuboid yang tepat untuk melakukan query. Tahap berikutnya adalah membuat indeks pada kolom tertentu dengan menggunakan bitmap indexing. Penggunaan bitmap indexing diharapkan dapat mempercepat waktu akses query.

2.2.2. Bitmap Indexing