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 subjek­ subjek 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 konvensi­ konvensi penamaan, struktur pengkodean, ukuran­ ukuran 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. OLAP (on­line analitical processing) • 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 • OLTP (on­line transaction processing) – Major task of traditional relational DBMS – Day­to­day operations: purchasing, inventory, banking, manufacturing, payroll, registration, accounting, etc. • OLAP (on­line analytical processing) – 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 repetitive historical, summarized, multidimensional integrated, consolidated ad­hoc lots of scans unit of work read/write index/hash on prim. key short, simple transaction # records accessed tens millions #users thousands hundreds DB size 100MB­GB 100GB­TB usage access complex query 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 cuboid­cuboid membentuk sebuah data cube. Cube: A Lattice of Cuboids all time time,item 0­D(apex) cuboid item time,location location item,location time,supplier time,item,location supplier location,supplier item,supplier time,location,supplier time,item,supplier 1­D cuboids 2­D cuboids 3­D cuboids 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 Sales Fact Table time_key item_key branch_key branch branch_key branch_name branch_type location_key units_sold dollars_sold avg_sales Measures 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 item Sales Fact Table time_key item_key branch_key branch branch_key branch_name branch_type location_key units_sold dollars_sold avg_sales Measures item_key item_name brand type supplier_key supplier supplier_key supplier_type 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 item Sales Fact Table time_key item_key item_key item_name brand type supplier_type branch_key branch_name branch_type item_key shipper_key location_key location to_location units_sold location_key street city province_or_street country dollars_cost dollars_sold avg_sales Measures time_key from_location branch_key branch Shipping Fact Table units_shipped shipper shipper_key shipper_name location_key shipper_type Hirarki Konsep: Dimensi (Lokasi) all all Europe region country city office Germany Frankfurt ... ... ... Spain North_America Canada Vancouver ... L. Chan ... ... Mexico Toronto 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 gi on Dimension: Product, Location, Time Hierarchical summarization paths Re Industry Region Year Product Category Country Quarter Product City Month Week Office Day Month TV PC VCR sum 1Qtr 2Qtr Date 3Qtr 4Qtr sum Total annual sales of TV in U.S.A. U.S.A Canada Mexico sum Country Pr od uc t Contoh Kubus Data Cuboid yang terkait dengan kubus all product product,date date 0­D(apex) cuboid country product,country 1­D cuboids date, country 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 relational tables (using SQL) Ilustrasi • Ilustrasi untuk operasi­operasi pada data multidimen . 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 – Top­down: Starts with overall design and planning (mature) – Bottom­up: Starts with experiments and prototypes (rapid) • 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 source s 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 Multi­Tier Data Warehouse Distributed Data Marts Data Mart Data Mart Model refinement Enterprise Data Warehouse 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 • Hybrid OLAP (HOLAP) – 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 to On Line Analytical Mining (OLAM) • 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 An OLAM Architecture Mining query Mining result User Interface User GUI API OLAM Engine Layer4 OLAP Engine Layer3 OLAP/OLAM Data Cube API Layer2 MDDB Filtering&Integration Databases Database API Meta Data Filtering Data Data integration Warehouse Data cleaning MDDB 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 Terim a kasih