20220818170735_ISYS6332-LN2-R1.pdf
Document Details
Uploaded by AwedExuberance
BINUS UNIVERSITY
Tags
Full Transcript
LECTURE NOTES ISYS6332 Data Warehouse Week ke - 2 Data Warehouse Schema ISYS6507 – Testing and System Implementation LEARNING OUTCOMES LO1: Describe data warehouse concept on business organization. LO1 : Mahasiswa diharapkan mampu mendeskripsikan konsep data warehouse dalam organisasi bisnis...
LECTURE NOTES ISYS6332 Data Warehouse Week ke - 2 Data Warehouse Schema ISYS6507 – Testing and System Implementation LEARNING OUTCOMES LO1: Describe data warehouse concept on business organization. LO1 : Mahasiswa diharapkan mampu mendeskripsikan konsep data warehouse dalam organisasi bisnis OUTLINE MATERI : 1. Introduction 2. Dimension 3. Measurement 4. Star Schema 5. Snowflake Schema 6. Galaxy Schema 7. Comparison among Star, Snowflake and Galaxy Schema ISI MATERI A. Introduction Deskripsi logis dari database dikenal sebagai Schema. Schema adalah cetak biru dari seluruh database. Schema ini mendefinisikan bagaimana data diatur dan bagaimana hubungan di antara mereka terkait. Schema data warehouse terdiri dari nama dan deskripsi dari record termasuk item data terkait dan agregat. Basis data menggunakan model relasional sedangkan data warehouse menggunakan berbagai jenis skema, yaitu, Star, Snow Flake, dan Fact Constellation. B. Dimension Istilah 'dimensi' dalam data warehousing adalah kumpulan referensi informasi tentang suatu event yang terukur. Event ini disimpan dalam fact table/fact table dan dikenal sebagai fact. Dimensi umumnya entitas yang organisasi ingin disimpan dalam record. Atribut deskriptif diatur sebagai kolom dalam tabel dimensi oleh data warehouse. Misalnya, atribut dimensi siswa dapat terdiri dari nama depan dan belakang, nomor urut, usia, jenis kelamin, atau dimensi alamat yang akan menyertakan atribut nama jalan, negara bagian, dan negara. Tabel dimensi terdiri dari kolom kunci utama (Primary Key Column) yang secara unik mengidentifikasi setiap record (baris/row) dimensi. Dimensi adalah kerangka kerja yang terdiri dari satu atau lebih hierarki yang mengklasifikasikan data. Biasanya dimensi adalah tabel yang de-normalized dan mungkin memiliki data yang berlebihan. Mari kita rekap cepat konsep normalisasi dan de-normalisasi, seperti yang akan digunakan dalam bab ini. Normalisasi adalah proses memecah tabel yang lebih besar menjadi tabel yang lebih kecil bebas dari kemungkinan anomali insert, update atau delete. Tabel yang dinormalisasi telah mengurangi adanya redundansi data. Untuk mendapatkan informasi lengkap, tabel-tabel ini biasanya digabungkan. Dalam de-normalisasi, tabel yang lebih kecil digabungkan untuk membentuk tabel yang lebih besar untuk mengurangi operasi penggabungan. De-normalisasi terutama dilakukan dalam kasus-kasus di mana pengambilan merupakan persyaratan utama dan operasi insert, update, dan delete minimal, seperti dalam kasus data historis atau data warehouse. Tabel de-normalisasi ini akan memiliki redundansi data. Misalnya, dalam kasus database EMP-DEPT, akan ada dua tabel yang dinormalisasi sebagai EMP(eno, ename, job, sal, deptno) dan DEPT(deptno, dname), sedangkan dalam kasus denormalisasi kita akan memiliki satu tabel EMP_DEPT dengan atribut eno, ename, job, sal, deptno, dname. Mari kita pertimbangkan dimensi Location dan Item seperti yang ditunjukkan pada Gambar 2.1. Di sini, dalam dimensi Location, location_id adalah primary key / kunci utama dengan street_name, city, state_id and country_code sebagai atributnya. Gambar 2.1 (b) menunjukkan dimensi lain yaitu Item yang memiliki item_code sebagai primary key dan item_name, item_type, brand_name, dan supplier_id sebagai atribut lainnya. Gambar 2.1. (a) Dimensi Location dan (b) Dimensi Item Penting untuk dicatat bahwa dimensi tersebut mungkin tabel de-normalisasi karena dimensi Location dapat diturunkan dari tabel location_detail (location_id, street_name, state_id) dan state_detail (state_id, state_name, country_code) seperti yang ditunjukkan pada Gambar 2.2. Gambar 2.2. View Normalisasi C. Measure Measure/ukuran adalah istilah yang digunakan untuk nilai yang bergantung pada dimensi. Misalnya, jumlah yang terjual, jumlah yang terjual, dll. D. Fact Table Sebuah 'fact table' adalah sekelompok item data yang terkait. Ini terdiri dari nilainilai dimensi dan ukuran. Ini berarti bahwa fact table dapat didefinisikan dari dimensi dan measure yang diberikan. Fact table biasanya terdiri dari dua jenis kolom yaitu foregn key dan measure. Foreign key terkait dengan tabel dimensi dan measure terdiri dari fakta numerik seperti yang ditunjukkan pada Gambar 2.3. Fact table umumnya berukuran lebih besar daripada tabel dimensi. Gambar 2.3. Representasi Fact Table dan Tabel Dimensi Fact table dapat menampung fact dataset pada tingkat detail atau agregat. Mari kita perhatikan fact table penjualan seperti yang ditunjukkan pada Gambar 2.4. Fact table ini memiliki time_key, item_code, branch_code dan location_id sebagai kunci asing dari tabel dimensi dan rupee_sold dan unit_sold sebagai measure atau agregasi. Di sini, FK menunjukkan kunci asing Gambar 2.4. Fact Table Sales E. Star Schema Star chema/Skema bintang adalah salah satu skema data warehouse yang paling sederhana. Disebut bintang karena tampak seperti bintang dengan titik-titik yang membesar dari pusatnya. Gambar 2.3 merupakan skema bintang di mana fact table berada di tengah dan tabel dimensi di node bintang. Setiap dimensi dalam skema bintang hanya mewakili satu tabel dimensi dan tabel dimensi terdiri dari sekumpulan atribut. Tabel dimensi terdiri dari record yang berjumlah relatif kecil dibandingkan dengan fact table, tetapi setiap record dapat terdiri dari sejumlah besar atribut untuk menggambarkan fact data . Fact table biasanya terdiri dari fakta numerik dan foteign key untuk data dimensi. Umumnya, fact table dalam bentuk normal ketiga (3NF) dalam kasus skema bintang sedangkan tabel dimensi dalam bentuk de-normalisasi. Meskipun skema bintang adalah salah satu struktur paling sederhana, namun skema ini masih banyak digunakan saat ini dan direkomendasikan oleh Oracle. Gambar 2.5 secara grafis menyajikan skema bintang. Gambar 2.5. Representasi grafis dari skema Bintang (Star Schema) Skema bintang untuk analisis penjualan suatu perusahaan ditunjukkan pada Gambar 2.6. Dalam skema ini, fakta penjualan disajikan di tengah bintang yang terdiri dari Foreign key yang terhubung ke masing-masing dari empat tabel dimensi yang sesuai. Fact table penjualan juga mencakup measure seperti rupee_sold dan unit_sold. Penting untuk dicatat bahwa di sini table dimensi berbentuk de-normalisasi. Misalnya, tabel dimensi Location terdiri dari kumpulan atribut seperti {location_id, street_name, city, state_id, country_code} dan mungkin memiliki redundansi data karena de-normalisasi. Contohnya, kedua kota 'Patiala' dan 'Amritsar' terletak di negara bagian Punjab di India. Catatan untuk kota-kota ini dapat mengakibatkan redundansi data yang sesuai dengan atribut negara dan negara bagian. Gambar 2.6. Skema Star/bintang untuk analisis penjualan Karakteristik utama dari star schema/skema bintang adalah sebagai berikut: 1. Memiliki kinerja kueri yang tinggi sebab memerlukan lebih sedikit operasi joint karena de-normalisasi data. 2. Memiliki struktur sederhana yang mudah dimengerti. 3. Dibutuhkan waktu yang relatif lebih lama untuk load data ke dalam tabel dimensi karena de-normalisasi, yang juga menyebabkan redundansi data yang dapat meningkatkan ukuran table data. 4. Merupakan struktur yang paling umum digunakan dan paling sederhana di data warehouse dan didukung oleh sejumlah besar tools. Keuntungan dari skema bintang adalah: 1. Memiliki kueri sederhana karena tidak memerlukan operasi joint karena denormalisasi data. 2. Dibandingkan dengan skema yang sangat dinormalisasi, skema bintang memiliki logika pelaporan bisnis dasar. 3. Memiliki kinerja kueri yang tinggi karena lebih sedikit operasi joint. 4. Memiliki agregasi cepat karena kuerinya yang lebih sederhana. Kekurangan dari skema bintang adalah: 1. Integritas data tidak dapat diterapkan dalam skema bintang karena basis datanya tidak dinormalisasi( de-normalisasi) dan berisi data yang redundan. 2. Insert dan update dalam skema bintang dapat mengakibatkan anomali data karena redundansi data yang dirancang untuk dihindari oleh skema yang de-normalisasi. 3. Tidak fleksibel dalam hal kebutuhan analitis jika dibandingkan dengan model data yang dinormalisasi (normalisasi). 4. Terlalu spesifik karena dirancang untuk fixed analisis data dan tidak memungkinkan low complex analytic. F. Snowflake Schema Perbedaan utama antara skema star dan snowflake adalah bahwa skema snowflake dapat terdiri dari dimensi yang dinormalisasi (normalized) sedangkan skema star selalu terdiri dari dimensi yang tidak dinormalisasi (de-normalisasi). Dengan demikian, skema snowflake merupakan modifikasi dari skema star/bintang yang mendukung normalisasi tabel dimensi. Beberapa tabel dimensi dinormalisasi dalam skema snowflake sehingga membagi data menjadi tabel tambahan. Jadi, 'Snowflaking' adalah proses normalisasi tabel dimensi dalam skema bintang. Struktur yang dihasilkan tampak seperti kepingan salju yang memiliki tabel fakta di tengah ketika semua tabel dimensi dinormalisasi sepenuhnya. Misalnya, tabel dimensi Item yang ditunjukkan pada Gambar 2.7 dinormalisasi dengan membaginya menjadi dua tabel dimensi yaitu Item dan Supplier. Gambar 2.7. Skema Snowflake untuk analisis penjualan Di sini, tabel dimensi item terdiri dari kumpulan atribut {item_code, item_name, item_type, brand_name, supplier_id}. Selanjutnya supplier_id diasosiasikan dengan tabel dimensi supplier yang terdiri dari atribut supplier_id dan supplier_type. Demikian pula, tabel dimensi location terdiri dari kumpulan atribut {location_id, street_name, city_id}. Selanjutnya, city_id diasosiasikan dengan tabel dimensi city yang terdiri dari atribut-atribut yaitu, city_id, city_name, state_id dan country_code. Tampilan lain dari skema kepingan salju diilustrasikan pada Gambar 2.8. Di sini, dimensi shop telah dinormalisasi menjadi dimensi shop, city dan region. Demikian pula, dimensi time telah dinormalisasi menjadi dimensi time, month dan quarter. Dimensi client telah dinormalisasi menjadi dimensi client dan client group. Dan dimensi product telah dinormalisasi menjadi dimensi product type, brand dan supplier seperti yang ditunjukkan pada Gambar 2.8. Penting untuk dicatat bahwa redundansi berkurang dalam skema snowflake karena adanya normalisasi. Gambar 2.8. Skema Snowflake Selanjutnya kita akan melihat kelebihan dan kekurangan yang ada pada skema snowflake. Kelebihan dari skema snowflake yaitu : 1. Skema snowflake menghasilkan penghematan ruang penyimpanan karena atribut yang dinormalisasi meskipun ada kompleksitas tambahan dalam kueri joint dari sumber. 2. Beberapa tools pemodelan database multidimensi OLAP dioptimalkan untuk skema snowflake. Sedangkan kekurangan dari skema snowflake adalah : 1. Skema ini memiliki kueri kompleks karena operasi joint karena adanya dimensi yang dinormalisasi. 2. Ini memiliki kinerja kueri yang buruk karena diperlukan operasi joint untuk data yang dinormalisasi. Kesimpulannya, tujuan utama skema snowflake adalah untuk menyimpan data yang dinormalisasi secara efisien tetapi dalam melakukannya menghabiskan kinerja kueri yang signifikan. G. Fact Constellation Schema / Galaxy Schema Perbedaan utama antara skema star/snowflake dan fact constellation adalah bahwa skema star/snowflake hanya terdiri dari satu fact table sedangkan skema fact constellation selalu terdiri dari beberapa fact table. Oleh karena itu, fact constellation juga dikenal sebagai skema galaksi (sejumlah fact table dipandang sebagai sekelompok bintang). Fact constellation adalah measure dari pemrosesan analitik online, yang merupakan kumpulan beberapa fact table yang berbagi tabel dimensi. Skema ini adalah peningkatan dari skema Bintang. Gambar 2.9 menunjukkan contoh skema Fact constellation karena memiliki dua fact table, yaitu sales dan shipping. Gambar 2.9. Skema fact constellation untuk analisis penjualan Fact table sales dalam skema fact constellation mirip dengan yang ada di skema bintang. Fact table sales di sini, juga terdiri dari empat atribut, yaitu, time_key, item_code, branch_code, location_id dan dua measure yaitu rupee_sold dan unit_sold seperti yang ditunjukkan pada Gambar 2.9. Dan fact table shipping terdiri dari lima atribut yaitu item_code, time_key, shipper_id, from_location, to_location dan dua measure seperti rupee_cost dan units_sold. Bahkan di skema konstelasi, tabel dimensi juga dapat dibagi antara fact table. Misalnya, tabel dimensi, yaitu, location, item dan time dibagi antara act tables shipping dan sales seperti yang ditunjukkan pada Gambar 2.9. Keuntungan utama dari skema ini adalah memberikan dukungan yang lebih baik kepada end user karena memiliki beberapa fact table. Sedangkan kerugian utama dari skema ini adalah desainnya yang rumit karena pertimbangan varian agregasi yang berbeda. H. Comparison among Star, Snowflake and Galaxy Schema Perbandingan antar skema data warehouse berdasarkan parameter yang berbeda dapat dilihat pada Tabel 2.1. berikut ini. Tabel 2.1. Perbandingan antara Skema Star, Snowflake dan Fact Constellation Parameter Kueri join Struktur data Star Snowflake Fact Constellation Membutuhkan Membutuhkan Membutuhkan simple join complicated join complicated join De-normalized data Normalized data Normalized data structure structure structure Jumlah fact table Single fact table Single fact table Multiple fact table Kinerja queri Memberikan hasil Lambat kueri lebih pemrosesan yang dalam Lambat dalam kueri pemrosesan kueri cepat karena lebih karena operasi joint karena operasi joint sedikit operasi joint. Dimensi dimensi Tabel dimensi dibagi menjadi dibagi menjadi menjadi dibagi Data de- karena normalisasi. Sulit beberapa bagian. dimensi karena dinormalisasi. untuk Mudah menerapkan integrity beberapa bagian. redundan Data tidak redundan Data tidak redundan karena Data integrity yang lebih besar. Tabel dimensi tidak Tabel beberapa bagian. Data redudansi yang lebih besar. dinormalisasi. untuk Mudah data menegakkan karena integritas redundansi data. karena dimensi untuk menegakkan data integritas tidak redundansi data ada karena data tidak redundansi data ada KESIMPULAN 1. Dimensi adalah kumpulan referensi informasi tentang suatu event yang terukur. 2. Measure/ukuran adalah istilah yang digunakan untuk nilai yang bergantung pada dimensi. 3. Fact Table sekelompok item data yang terkait. DAFTAR PUSTAKA 1. Parteek Bhatia. (2019). Data Mining and Data Warehousing Principles and Practical Techniques. Cambridge University Press. ISBN 978-1-108-72774-7