Data Warehouses: Architecture, Design & Construction (3rd) Hanim Maria A. Dept. of Information System
Review Operasi OLAP pada multidimensional data
I. Data Warehouses: Architecture, Design & Construction DW Architecture Loading, refreshing Structuring/Modeling DWs and Data Marts Query Processing demos, labs
Arsitektur Data Warehouse Relational Databases Legacy Data Purchased Data ERP Systems Analyze Query Data Warehouse Engine Optimized Loader Extraction Cleansing Metadata Repository
Komponen Warehouse Data Extraction and Loading The Warehouse Analyze and Query -- OLAP Tools Metadata Data Mining tools
Membersihkan data sebelum data tersebut diload (diisikan ke warehouse) Loading the Warehouse Membersihkan data sebelum data tersebut diload (diisikan ke warehouse)
Source Data Typically host based, legacy applications External Sources Operational/ Source Data Sequential Legacy Relational External Typically host based, legacy applications Customized applications Point of Contact Devices POS, ATM, Call switches External Sources Nielsen’s, Acxiom, CMIE, Vendors, Partners
Data Quality - The Reality Tidak ada sesuatupun yang bisa bebas dari kesalahan Data berasal dari sumber yang terpisah-pisah. Legacy systems (sistem terdahulu) tidak didokumentasikan. Berasal dari sumber-sumber luar (Outside sources) dengan kualitas yang dipertanyakan prosedurnya.
Data Quality - The Reality Operational system seringkali didesain untuk menyelesaikan permasalahan bisnis yang spesifik dan jarang mendukung rencana (standart) perusahaan. Sehingga integritas data masih kurang. “ And get it done quickly, we do not have time to worry about corporate standards...”
Data Integration Across Sources Trust Savings Loans Credit card Datanya sama Namanya beda Data beda Nama sama Data hanya ada disini Beda keys Data sama
Data Transformation Example Data Warehouse appl A - m,f appl B - 1,0 appl C - x,y appl D - male, female encoding appl A - pipeline - cm appl B - pipeline - in appl C - pipeline - feet appl D - pipeline - yds unit appl A - balance appl B - bal appl C - currbal appl D - balcurr field
Data Integrity Problems Orangnya sama, spellings (pengejaan) beda Agarwal, Agrawal, Aggarwal etc... Ada banyak cara menggambarkan nama perusahaan Persistent Systems, PSPL, Persistent Pvt. LTD. Menggunakan nama yang berbeda mumbai, bombay Account number berbeda untuk customer yang sama dikarenakan menggunakan aplikasi yang berbeda. Format beda dll
Data Transformation Terms Extracting Menangkap data dari berbagai sumber data operasional dalam status “as is” Kebanyakan data untuk saat sekarang merupakan relational databases. Conditioning Konversi tipe data dari sumber data ke target data store (warehouse).
Data Transformation Terms Householding Mengidentifikasi semua member household (living at the same address) Memastikan hanya ada satu mail yang dikirim ke household. Penghematan yang substansial! 1 lakh catalogues at Rs. 50 each costs Rs. 50 lakhs. A 2% savings would save Rs. 1 lakh.
Data Transformation Terms Enrichment Membawa/mengambil data dari sumber eksternal untuk memperkaya data. Scoring Perhitungan probabilitas dari suatu kejadian. E.g..., kemungkinan bahwa customer akan memberli produk yang baru.
Data Extraction and Cleansing Mengekstraksi data dari berbagai data operasional yang ada dan dari data legacy. Persoalan: Sumber data untuk data warehouse Kualitas data pada sumber data Melakukan merging sumber data yang berbeda-beda Transformasi data Bagaimana melakukan update (pada sumber data) ke warehouse Data yang akan diload kapasitasnya sangat besar (bahkan dalam Terabytes)
Scrubbing Data Sophisticated transformation tools. Digunakan untuk membersihkan/clean data (untuk kualitas data). Clean data adalah penting bagi kesuksesan warehouse Contoh Seshadri, Sheshadri, Sesadri, Seshadri S., Srinivasan Seshadri, etc. are the same person
Scrubbing Tools Apertus -- Enterprise/Integrator Vality -- IPE Postal Soft
Loads Setelah melakukan extracting, scrubbing, cleaning, validating, dll, kemudian dilakukan load data ke warehouse. Persoalan Volume data yang akan diload sangat besar Waktu yang tersedia hanya sedikit (biasanya dapat dilakukan ketika operasional dan warehousenya off line. Dan biasanya waktu malam) Kapan membangun index dan summary tables. dll
Load Techniques Menggunakan SQL untuk append atau insert data baru lama Menggunakan batch load utility
Load Taxonomy Incremental versus Full loads Online versus Offline loads
Refresh Mengupdate sumber data untuk warehouse Permasalahan: Kapan melakukan refresh Bagaimana melalakukan refresh-- refresh techniques
When to Refresh? periodically (e.g., tiap malam, tiap minggu) atau setelah terjadi kejadian-kejadian yang signifikan. Tiap kali sumber data diupdate: not warranted unless warehouse data require current data (up to the minute stock quotes) Kebijakan untuk refresh disetting oleh administrator berdasarkan keperluan user dan traffic (lalu lintas/kepadatannya) Kemungkinan, jika sumber datanya beda, kebijakannya juga beda.
Refresh Techniques Full Extract from base tables Membaca keseluruhan sumber data (table): too expensive Kemungkinan merupakan satu-satunya pilihan untuk legacy systems.
How To Detect Changes Membuat a snapshot log table untuk merecord/merekam ids dari baris yang terupdate pada sumber data dan timestampnya. Mendeteksi perubahan dengan: ‘After row triggers’ untuk mengupdate snapshot log letika sumber data (source table) berubah Menggunakan regular transaction log untuk mendeteksi perubahan pada sumber data.