Pengantar Data Warehouse dan OLAP
Agenda Pengertian data warehouse Model data multidimensi Operasi-operasi dalam OLAP Arsitektur data warehouse Kegunaan data warehouse
Apa itu Data Warehousing? Data warehouse adalah koleksi dari data yang subject-oriented, terintegrasi, time-variant, dan nonvolatile, dalam mendukung proses pembuatan keputusan. Sering diintegrasikan dengan berbagai sistem aplikasi untuk mendukung pemrosesan informasi dan analisis data dengan menyediakan platform untuk historical data. Data warehousing: proses konstruksi dan penggunaan data warehouse.
Data warehouse -- subject oriented Data warehouse diorganisasikan di seputar subjeksubjek utama seperti customer, produk, sales. Fokus pada pemodelan dan analisis data untuk pembuatan keputusan, bukan pada operasi harian atau pemrosesan transaksi. Menyediakan sebuah tinjauan sederhana dan ringkas seputar subjek tertentu dengan tidak mengikutsertakan data yang tidak berguna dalam proses pembuatan keputusan.
Data warehouse -- terintegrasi Dikonstruksi dengan mengintegrasikan banyak sumber data yang heterogen. relational database, flat file, on-line transaction record Teknik data cleaning dan data integration digunakan Untuk menjamin konsistensi dalam konvensikonvensi penamaan, struktur pengkodean, ukuranukuran atribut dll diantara sumber data yang berbeda. Contoh: Hotel price: currency, tax, breakfast covered, dll. Data dikonversi ketika dipindahkan ke warehouse.
Data Warehouse Time Variant Data disimpan untuk menyediakan informasi dari perspektif historical, contoh 5-10 tahun yang lalu. Struktur kunci dalam data warehouse Mengandung sebuah elemen waktu, baik secara ekspisit atau secara implisit. Tetapi kunci dari data operasional bisa mengandung elemen waktu atau tidak.
Data Warehouse Non-Volatile Data warehouse adalah penyimpanan data yang terpisah secara fisik yang ditransformasikan dari lingkungan operasional. Data warehouse tidak memerlukan pemrosesan transaksi, recovery dan mekanisme kontrol konkurensi. Biasanya hanya memerlukan dua operasi dalam pengaksesan data, yaitu initial loading of data dan access of data.
( processing OLAP (on-line analitical OLAP adalah operasi basis data untuk mendapatkan data dalam bentuk kesimpulan dengan menggunakan agregasi sebagai mekanisme utama. Ada 3 tipe: Relational OLAP (ROLAP): Multidimensional OLAP (MOLAP) Hybrid OLAP (HOLAP) membagi data antara tabel relasional dan tempat penyimpanan khusus.
Data Warehouse vs. Operational DBMS ( processing OLTP (on-line transaction Major task of traditional relational DBMS Day-to-day operations: purchasing, inventory, banking, manufacturing, payroll, registration, accounting, etc. ( processing OLAP (on-line analytical Major task of data warehouse system Data analysis and decision making Distinct features (OLTP vs. OLAP): User and system orientation: customer vs. market Data contents: current, detailed vs. historical, consolidated Database design: ER + application vs. star + subject View: current, local vs. evolutionary, integrated Access patterns: update vs. read-only but complex queries
OLTP vs. OLAP OLTP OLAP users clerk, IT professional knowledge worker function day to day operations decision support DB design application-oriented subject-oriented data current, up-to-date detailed, flat relational isolated usage repetitive ad-hoc access read/write lots of scans index/hash on prim. key unit of work short, simple transaction complex query # records accessed tens millions #users thousands hundreds DB size 100MB-GB 100GB-TB historical, summarized, multidimensional integrated, consolidated
Dari tabel dan spreadsheet ke Kubus Data Data warehouse didasarkan pada model data multidimensional, dimana data dipandang dalam bentuk kubus data Kubus data, seperti sales, memungkinkan data dipandang dan dimodelkan dalam banyak dimensi Tabel dimensi, seperti item (item_name, brand, type), or time(day, week, month, quarter, year) Tabel fakta mengandung measures (seperti dollars_sold) dan merupakan kunci untuk setiap tabel-tabel dimensi terkait. n-d base cube dinamakan base cuboid. 0-D cuboid merupakan cuboid pada level paling tinggi, yang menampung ringkasan data dalan level paling tinggi, dinamakan apex cuboid. Lattice dari cuboidcuboid membentuk sebuah data cube.
Cube: A Lattice of Cuboids all 0-D(apex) cuboid time item location supplier 1-D cuboids time,item time,location item,location location,supplier time,supplier item,supplier 2-D cuboids time,item,location time,location,supplier 3-D cuboids time,item,supplier item,location,supplier 4-D(base) cuboid time, item, location, supplier
Pemodelan Konseptual Data Warehouse Star schema: Sebuah tabel fakta di tengah-tengah dihubungkan dengan sekumpulan tabel-tabel dimensi. Snowflake schema: perbaikan dari skema star ketika hirarki dimensional dinormalisasi ke dalam sekumpulan tabel-tabel dimensi yang lebih kecil Fact constellations: Beberapa tabel fakta dihubungkan ke tabel-tabel dimensi yang sama, dipandang sebagai kumpulan dari skema star, sehingga dinamakan skema galaksi atau fact constellation.
Contoh Skema Star time time_key day day_of_the_week month quarter year branch branch_key branch_name branch_type Measures Sales Fact Table time_key item_key branch_key location_key units_sold dollars_sold avg_sales item item_key item_name brand type supplier_type location location_key street city province_or_street country
Contoh skema Snowflake time time_key day day_of_the_week month quarter year Sales Fact Table time_key item_key item item_key item_name brand type supplier_key supplier supplier_key supplier_type branch branch_key branch_name branch_type Measures branch_key location_key units_sold dollars_sold avg_sales location location_key street city_key city city_key city province_or_street country
Contoh Fact Constellation time time_key day day_of_the_week month quarter year Sales Fact Table time_key item_key branch_key item item_key item_name brand type supplier_type Shipping Fact Table time_key item_key shipper_key from_location branch branch_key branch_name branch_type Measures location_key units_sold dollars_sold avg_sales location location_key street city province_or_street country to_location dollars_cost units_shipped shipper shipper_key shipper_name location_key shipper_type
( Lokasi ) Hirarki Konsep: Dimensi all all region Europe... North_America country Germany... Spain Canada... Mexico city Frankfurt... Vancouver... Toronto office L. Chan... M. Wind
Tampilan datawarehouse dan hirarki Specification of hierarchies Schema hierarchy day < {month < quarter; week} < year Set_grouping hierarchy {1..10} < inexpensive
Data Multidimensional Sales volume sebagai fungsi dari product, month, dan region Region Dimension: Product, Location, Time Hierarchical summarization paths Industry Region Year Category Country Quarter Product Product City Month Week Office Day Month
Contoh Kubus Data TV PC VCR sum Product Date 1Qtr 2Qtr 3Qtr 4Qtr sum Total annual sales of TV in U.S.A. U.S.A Canada Mexico Country sum
Cuboid yang terkait dengan kubus all product date country product,date product,country date, country 0-D(apex) cuboid 1-D cuboids 2-D cuboids product, date, country 3-D(base) cuboid
Browsing kubus data Visualization OLAP capabilities Interactive manipulation
Operasi-operasi OLAP Roll up (drill-up): summarize data by climbing up hierarchy or by dimension reduction Drill down (roll down): reverse of roll-up from higher level summary to lower level summary or detailed data, or introducing new dimensions Slice and dice: project and select Pivot (rotate): reorient the cube, visualization, 3D to series of 2D planes. Other operations drill across: involving (across) more than one fact table drill through: through the bottom level of the cube to its back-end ( SQL relational tables (using
Ilustrasi Ilustrasi untuk operasi-operasi pada data multidimensi.
Rancangan Data Warehouse: Business Analysis Framework Four views regarding the design of a data warehouse Top-down view allows selection of the relevant information necessary for the data warehouse Data source view exposes the information being captured, stored, and managed by operational systems Data warehouse view consists of fact tables and dimension tables Business query view sees the perspectives of data in the warehouse from the view of end-user
Proses Perancangan Data Warehouse Top-down, bottom-up approaches or a combination of both ( mature ) Top-down: Starts with overall design and planning ( rapid ) Bottom-up: Starts with experiments and prototypes From software engineering point of view Waterfall: structured and systematic analysis at each step before proceeding to the next Spiral: rapid generation of increasingly functional systems, short turn around time, quick turn around Typical data warehouse design process Choose a business process to model, e.g., orders, invoices, etc. Choose the grain (atomic level of data) of the business process Choose the dimensions that will apply to each fact table record Choose the measure that will populate each fact table record
Multi-Tiered Architecture other sources Operational DBs Metadata Extract Transform Load Refresh Monitor & Integrator Data Warehouse OLAP Server Serve Analysis Query Reports Data mining Data Marts Data Sources Data Storage OLAP Engine Front-End Tools
Data Warehouse Back-End Tools and Utilities Data extraction: get data from multiple, heterogeneous, and external sources Data cleaning: detect errors in the data and rectify them when possible Data transformation: convert data from legacy or host format to warehouse format Load: sort, summarize, consolidate, compute views, check integrity, and build indicies and partitions Refresh propagate the updates from the data sources to the warehouse
Three Data Warehouse Models Enterprise warehouse collects all of the information about subjects spanning the entire organization Data Mart a subset of corporate-wide data that is of value to a specific groups of users. Its scope is confined to specific, selected groups, such as marketing data mart Independent vs. dependent (directly from warehouse) data mart Virtual warehouse A set of views over operational databases Only some of the possible summary views may be materialized
Data Warehouse Development: A Recommended Approach Distributed Data Marts Multi-Tier Data Warehouse Data Mart Data Mart Enterprise Data Warehouse Model refinement Model refinement Define a high-level corporate data model
OLAP Server Architectures Relational OLAP (ROLAP) Use relational or extended-relational DBMS to store and manage warehouse data and OLAP middle ware to support missing pieces Include optimization of DBMS backend, implementation of aggregation navigation logic, and additional tools and services greater scalability Multidimensional OLAP (MOLAP) Array-based multidimensional storage engine (sparse matrix ( techniques fast indexing to pre-computed summarized data ( HOLAP ) Hybrid OLAP User flexibility, e.g., low level: relational, high-level: array Specialized SQL servers specialized support for SQL queries over star/snowflake schemas
Data Warehouse Usage Three kinds of data warehouse applications Information processing supports querying, basic statistical analysis, and reporting using crosstabs, tables, charts and graphs Analytical processing multidimensional analysis of data warehouse data supports basic OLAP operations, slice-dice, drilling, pivoting Data mining knowledge discovery from hidden patterns supports associations, constructing analytical models, performing classification and prediction, and presenting the mining results using visualization tools. Differences among the three tasks
From On-Line Analytical Processing ( OLAM ) to On Line Analytical Mining Why online analytical mining? High quality of data in data warehouses DW contains integrated, consistent, cleaned data Available information processing structure surrounding data warehouses ODBC, OLEDB, Web accessing, service facilities, reporting and OLAP tools OLAP-based exploratory data analysis mining with drilling, dicing, pivoting, etc. On-line selection of data mining functions integration and swapping of multiple mining functions, algorithms, and tasks. Architecture of OLAM
OLAM Engine An OLAM Architecture Mining query User GUI API Mining result OLAP Engine Layer4 User Interface Layer3 OLAP/OLAM Data Cube API MDDB Meta Data Layer2 MDDB Filtering&Integration Databases Database API Data cleaning Data integration Filtering Data Warehouse Layer1 Data Repository
Referensi Data Mining: Concepts and Techniques by Jiawei Han and Micheline Kamber, 2001 Introduction to Data Mining by Tan, Steinbach, Kumar, 2004
Terima kasih