Data Warehouse. MIT-652 Data Mining Applications. Thimaporn Phetkaew. School of Informatics, Walailak University. MIT-652: DM 2: Data Warehouse 1



Similar documents
Chapter 3, Data Warehouse and OLAP Operations

Data Warehousing and OLAP Technology

Data warehousing. Han, J. and M. Kamber. Data Mining: Concepts and Techniques Morgan Kaufmann.

Data W a Ware r house house and and OLAP Week 5 1

Data Mining for Knowledge Management. Data Warehouses

Lecture 2 Data warehousing

Overview of Data Warehousing and OLAP

Database Applications. Advanced Querying. Transaction Processing. Transaction Processing. Data Warehouse. Decision Support. Transaction processing

BUILDING BLOCKS OF DATAWAREHOUSE. G.Lakshmi Priya & Razia Sultana.A Assistant Professor/IT


Data Warehousing and Online Analytical Processing

DATA WAREHOUSING AND OLAP TECHNOLOGY

TIES443. Lecture 3: Data Warehousing. Lecture 3. Data Warehousing. Course webpage:

2 Data Warehouse and OLAP Technology for Data Mining What is a data warehouse? Amultidimensional data model... 6

Building Data Cubes and Mining Them. Jelena Jovanovic

DATA WAREHOUSING - OLAP

This tutorial will help computer science graduates to understand the basic-toadvanced concepts related to data warehousing.

Learning Objectives. Definition of OLAP Data cubes OLAP operations MDX OLAP servers

Data Warehousing and elements of Data Mining

Copyright 2007 Ramez Elmasri and Shamkant B. Navathe. Slide 29-1

Data Warehousing & OLAP

Introduction to Data Warehousing. Ms Swapnil Shrivastava

OLAP and OLTP. AMIT KUMAR BINDAL Associate Professor M M U MULLANA

Data W a Ware r house house and and OLAP II Week 6 1

OLAP & DATA MINING CS561-SPRING 2012 WPI, MOHAMED ELTABAKH

CHAPTER 4 Data Warehouse Architecture

Lecture 2: Introduction to Business Intelligence. Introduction to Business Intelligence

A Technical Review on On-Line Analytical Processing (OLAP)

Data Warehousing. Read chapter 13 of Riguzzi et al Sistemi Informativi. Slides derived from those by Hector Garcia-Molina

Data Warehousing and OLAP Technology for Knowledge Discovery

14. Data Warehousing & Data Mining

DATA WAREHOUSING APPLICATIONS: AN ANALYTICAL TOOL FOR DECISION SUPPORT SYSTEM

Week 3 lecture slides

Published by: PIONEER RESEARCH & DEVELOPMENT GROUP ( 28

Part 22. Data Warehousing

Anwendersoftware Anwendungssoftwares a. Data-Warehouse-, Data-Mining- and OLAP-Technologies. Online Analytic Processing

CHAPTER 3. Data Warehouses and OLAP

1. OLAP is an acronym for a. Online Analytical Processing b. Online Analysis Process c. Online Arithmetic Processing d. Object Linking and Processing

Week 13: Data Warehousing. Warehousing

Outline. Data Warehousing. What is a Warehouse? What is a Warehouse?

Data Warehouse: Introduction

OLAP and Data Mining. Data Warehousing and End-User Access Tools. Introducing OLAP. Introducing OLAP

OLAP Systems and Multidimensional Expressions I

Data Warehousing. Outline. From OLTP to the Data Warehouse. Overview of data warehousing Dimensional Modeling Online Analytical Processing

Data Warehousing Systems: Foundations and Architectures

BUSINESS ANALYTICS AND DATA VISUALIZATION. ITM-761 Business Intelligence ดร. สล ล บ ญพราหมณ

Data Warehousing and Decision Support. Introduction. Three Complementary Trends. Chapter 23, Part A

Data Warehousing and OLAP

Multi-dimensional index structures Part I: motivation

OLAP. Business Intelligence OLAP definition & application Multidimensional data representation

DATA CUBES E Jayant Haritsa Computer Science and Automation Indian Institute of Science. JAN 2014 Slide 1 DATA CUBES

2074 : Designing and Implementing OLAP Solutions Using Microsoft SQL Server 2000

CSE 544 Principles of Database Management Systems. Magdalena Balazinska Fall 2007 Lecture 16 - Data Warehousing

A Critical Review of Data Warehouse

Lection 3-4 WAREHOUSING

LITERATURE SURVEY ON DATA WAREHOUSE AND ITS TECHNIQUES

An Overview of Data Warehousing, Data mining, OLAP and OLTP Technologies

Data Warehousing: Data Models and OLAP operations. By Kishore Jaladi

New Approach of Computing Data Cubes in Data Warehousing

Fluency With Information Technology CSE100/IMT100

Overview. Data Warehousing and Decision Support. Introduction. Three Complementary Trends. Data Warehousing. An Example: The Store (e.g.

CSE 544 Principles of Database Management Systems. Magdalena Balazinska Winter 2009 Lecture 15 - Data Warehousing: Cubes

What is OLAP - On-line analytical processing

DATA WAREHOUSE E KNOWLEDGE DISCOVERY

Unit -3. Learning Objective. Demand for Online analytical processing Major features and functions OLAP models and implementation considerations

Designing a Dimensional Model

Namrata 1, Dr. Saket Bihari Singh 2 Research scholar (PhD), Professor Computer Science, Magadh University, Gaya, Bihar

B.Sc (Computer Science) Database Management Systems UNIT-V

Basics of Dimensional Modeling

CS2032 Data warehousing and Data Mining Unit II Page 1

PowerDesigner WarehouseArchitect The Model for Data Warehousing Solutions. A Technical Whitepaper from Sybase, Inc.

Decision Support. Chapter 23. Database Management Systems, 2 nd Edition. R. Ramakrishnan and J. Gehrke 1

IST722 Data Warehousing

Web Log Data Sparsity Analysis and Performance Evaluation for OLAP

Chapter 5 Business Intelligence: Data Warehousing, Data Acquisition, Data Mining, Business Analytics, and Visualization

Data Warehousing. Paper

Course DSS. Business Intelligence: Data Warehousing, Data Acquisition, Data Mining, Business Analytics, and Visualization

UNIT-3 OLAP in Data Warehouse

Business Intelligence for SUPRA. WHITE PAPER Cincom In-depth Analysis and Review

Data Warehousing, OLAP, and Data Mining

Dimensional Modeling for Data Warehouse

DATA WAREHOUSE CONCEPTS DATA WAREHOUSE DEFINITIONS

CS54100: Database Systems

When to consider OLAP?

Data Warehouse design

Emerging Technologies Shaping the Future of Data Warehouses & Business Intelligence

Review. Data Warehousing. Today. Star schema. Star join indexes. Dimension hierarchies

OLAP and Data Warehousing! Introduction!

Chapter 5. Warehousing, Data Acquisition, Data. Visualization

Data Warehousing and Data Mining

Transcription:

Data Warehouse MIT-652 Data Mining Applications Thimaporn Phetkaew School of Informatics, Walailak University MIT-652: DM 2: Data Warehouse 1

Chapter 2: Data Warehousing and OLAP Technology for Data Mining What is a data warehouse? A multi-dimensional data model Data warehouse architecture Data warehouse implementation Further development of data cube technology From data warehousing to data mining MIT-652: DM 2: Data Warehouse 2

What Is Data Warehouse? Defined in many different ways, but not rigorously. A decision support database that is maintained separately from the organization s operational database Support information processing by providing a solid platform of consolidated, historical data for analysis. A data warehouse is a subject-oriented, integrated, time-variant, and nonvolatile collection of data in support of management s decision-making process. W. H. Inmon Data warehousing: The process of constructing and using data warehouses MIT-652: DM 2: Data Warehouse 3

Data Warehouse Subject-Oriented Organized around major subjects, such as customer, product, sales. Focusing on the modeling and analysis of data for decision makers, not on daily operations or transaction processing. Provide a simple and concise view around particular subject issues by excluding data that are not useful in the decision support process. MIT-652: DM 2: Data Warehouse 4

Data Warehouse Integrated Constructed by integrating multiple, heterogeneous data sources relational databases, flat files, on-line transaction records Data cleaning and data integration techniques are applied. Ensure consistency in naming conventions, encoding structures, attribute measures, etc. among different data sources E.g., Hotel price: currency, tax, breakfast covered, etc. When data is moved to the warehouse, it is converted. MIT-652: DM 2: Data Warehouse 5

Data Warehouse Time Variant The time horizon for the data warehouse is significantly longer than that of operational systems. Operational database: current value data. Data warehouse data: provide information from a historical perspective (e.g., past 5-10 years) Every key structure in the data warehouse Contains an element of time, explicitly or implicitly But the key of operational data may or may not contain time element. MIT-652: DM 2: Data Warehouse 6

Data Warehouse Non-Volatile A physically separate store of data transformed from the operational environment. Operational update of data does not occur in the data warehouse environment. Does not require transaction processing, recovery, and concurrency control mechanisms Requires only two operations in data accessing: initial loading of data and access of data. MIT-652: DM 2: Data Warehouse 7

Data Warehouse vs. Heterogeneous DBMS Traditional heterogeneous DB integration: Build wrappers/mediators on top of heterogeneous databases Query driven approach When a query is posed to a client site, a meta-dictionary is used to translate the query into queries appropriate for individual heterogeneous sites involved, and the results are integrated into a global answer set Requires complex information filtering and integration process Data warehouse: update-driven Information from heterogeneous sources is integrated in advance and stored in warehouses for direct query and analysis MIT-652: DM 2: Data Warehouse 8

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 MIT-652: DM 2: Data Warehouse 9

OLTP vs. OLAP OLTP OLAP Characteristic operational processing Information processing users clerk, DB professional manager, executive, analyst function day to day operations decision support DB design ER based, application-oriented subject-oriented data current, up-to-date detailed, flat relational isolated usage repetitive ad-hoc historical, summarized, multidimensional integrated, consolidated access read/write mostly read, lots of scans focus data in information out unit of work short, simple transaction complex query # records accessed tens millions #users thousands hundreds DB size 100MB-GB 100GB-TB metric transaction throughput query throughput, response MIT-652: DM 2: Data Warehouse 10

Why Separate Data Warehouse? High performance for both systems DBMS tuned for OLTP: access methods, indexing, concurrency control, recovery Warehouse tuned for OLAP: complex OLAP queries, multidimensional view, consolidation. Different functions and different data: missing data: Decision support requires historical data which operational DBs do not typically maintain data consolidation: DS requires consolidation (aggregation, summarization) of data from heterogeneous sources data quality: different sources typically use inconsistent data representations, codes and formats which have to be reconciled MIT-652: DM 2: Data Warehouse 11

Chapter 2: Data Warehousing and OLAP Technology for Data Mining What is a data warehouse? A multi-dimensional data model Data warehouse architecture Data warehouse implementation Further development of data cube technology From data warehousing to data mining MIT-652: DM 2: Data Warehouse 12

From Tables and Spreadsheets to Data Cubes A data warehouse is based on a multidimensional data model which views data in the form of a data cube A data cube, such as sales, allows data to be modeled and viewed in multiple dimensions Dimension tables, such as item (item_name, brand, type), or time(day, week, month, quarter, year) Fact table contains measures (such as dollars_sold) and keys to each of the related dimension tables In data warehousing literature, an n-d base cube is called a base cuboid. The top most 0-D cuboid, which holds the highest-level of summarization, is called the apex cuboid. The lattice of cuboids forms a data cube. MIT-652: DM 2: Data Warehouse 13

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 MIT-652: DM 2: Data Warehouse 14

Conceptual Modeling of Data Warehouses Modeling data warehouses: dimensions & measures Star schema: A fact table in the middle connected to a set of dimension tables Snowflake schema: A refinement of star schema where some dimensional hierarchy is normalized into a set of smaller dimension tables, forming a shape similar to snowflake Fact constellations: Multiple fact tables share dimension tables, viewed as a collection of stars, therefore called galaxy schema or fact constellation MIT-652: DM 2: Data Warehouse 15

time time_key day day_of_the_week month quarter year Example of Star Schema 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 (,Phayathai,BKK,Thailand) (,Ratchatavee,BKK,Thailand) MIT-652: DM 2: Data Warehouse 16

Example of Snowflake Schema 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 MIT-652: DM 2: Data Warehouse 17

Example of 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 MIT-652: DM 2: Data Warehouse 18

A Data Mining Query Language, DMQL: Language Primitives Cube Definition (Fact Table) define cube <cube_name> [<dimension_list>]: <measure_list> Dimension Definition ( Dimension Table ) define dimension <dimension_name> as (<attribute_or_subdimension_list>) Special Case (Shared Dimension Tables) First time as cube definition define dimension <dimension_name> as <dimension_name_first_time> in cube <cube_name_first_time> MIT-652: DM 2: Data Warehouse 19

Defining a Star Schema in DMQL define cube sales_star [time, item, branch, location]: dollars_sold = sum(sales_in_dollars), avg_sales = avg(sales_in_dollars), units_sold = count(*) define dimension time as (time_key, day, day_of_week, month, quarter, year) define dimension item as (item_key, item_name, brand, type, supplier_type) define dimension branch as (branch_key, branch_name, branch_type) define dimension location as (location_key, street, city, province_or_state, country) MIT-652: DM 2: Data Warehouse 20

Defining a Snowflake Schema in DMQL define cube sales_snowflake [time, item, branch, location]: dollars_sold = sum(sales_in_dollars), avg_sales = avg(sales_in_dollars), units_sold = count(*) define dimension time as (time_key, day, day_of_week, month, quarter, year) define dimension item as (item_key, item_name, brand, type, supplier(supplier_key, supplier_type)) define dimension branch as (branch_key, branch_name, branch_type) define dimension location as (location_key, street, city(city_key, province_or_state, country)) MIT-652: DM 2: Data Warehouse 21

Defining a Fact Constellation in DMQL define cube sales [time, item, branch, location]: dollars_sold = sum(sales_in_dollars), avg_sales = avg(sales_in_dollars), units_sold = count(*) define dimension time as (time_key, day, day_of_week, month, quarter, year) define dimension item as (item_key, item_name, brand, type, supplier_type) define dimension branch as (branch_key, branch_name, branch_type) define dimension location as (location_key, street, city, province_or_state, country) define cube shipping [time, item, shipper, from_location, to_location]: dollar_cost = sum(cost_in_dollars), unit_shipped = count(*) define dimension time as time in cube sales define dimension item as item in cube sales define dimension shipper as (shipper_key, shipper_name, location as location in cube sales, shipper_type) define dimension from_location as location in cube sales define dimension to_location as location in cube sales MIT-652: DM 2: Data Warehouse 22

Measures: Three Categories distributive: if the result derived by applying the function to n aggregate values is the same as that derived by applying the function on all the data without partitioning. E.g., count(), sum(), min(), max(). algebraic: if it can be computed by an algebraic function with M arguments (where M is a bounded integer), each of which is obtained by applying a distributive aggregate function. avg() = sum()/count() E.g., avg(), min_n(), standard_deviation(). holistic: if there is no constant bound on the storage size needed to describe a subaggregate. E.g., median(), mode(), rank(). MIT-652: DM 2: Data Warehouse 23

A Concept Hierarchy: Dimension (location) all all region Europe... North_America country Germany... Spain Canada... Mexico city Frankfurt... Vancouver... Toronto office L. Chan... M. Wind MIT-652: DM 2: Data Warehouse 24

Multidimensional Data Sales volume as a function of product, month, and region Region Dimensions: Product, Location, Time Hierarchical summarization paths Industry Region Year Category Country Quarter Product Product City Month Week Office Day Month total order partial order MIT-652: DM 2: Data Warehouse 25

A Sample Data Cube TV PC VCR sum Product Quarter 1Qtr 2Qtr 3Qtr 4Qtr sum Total annual sales of TV in U.S.A. U.S.A Canada Mexico Country sum MIT-652: DM 2: Data Warehouse 26

Cuboids Corresponding to the Cube 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 MIT-652: DM 2: Data Warehouse 27

Browsing a Data Cube Visualization OLAP capabilities Interactive manipulation MIT-652: DM 2: Data Warehouse 28

Typical OLAP Operations 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 backend relational tables (using SQL) MIT-652: DM 2: Data Warehouse 29

Typical OLAP Operations location (cities) Chicago 440 New York Toronto 1560 395 Vancouver time (quarters) Q1 Q2 Q3 Q4 605 825 14 400 rool-up on location (from cities to countries) location (countries) Canada time (quarters) Q1 Q2 Q3 Q4 USA 1000 2000 Security Phone Computer Home Ent. item (types) Security Phone Computer Home Ent. item (types) MIT-652: DM 2: Data Warehouse 30

Typical OLAP Operations location (cities) Chicago 440 New York 1560 Toronto 395 Vancouver Q1 605 825 14 400 drill-down on time (from quarters to months) location (cities) Toronto Vancouver Chicago New York time (quarters) Q2 Q3 Q4 time (months) JAN FEB... 150 100 Security Phone Computer Home Ent. item (types) DEC 150 Security Phone Computer Home Ent. MIT-652: DM 2: Data Warehouse item (types) 31

Typical OLAP Operations location (cities) Chicago 440 New York Toronto 1560 395 Vancouver time (quarters) Q1 Q2 Q3 Q4 605 825 14 400 dice for (location = Toronto or Vancouver ) and (time = Q1 or Q2 ) and (item = Home Ent. or Computer ) location (cities) Toronto Vancouver time (quarters) Q1 Q2 605 395 Computer Home Ent. Security Phone Computer Home Ent. item (types) item (types) MIT-652: DM 2: Data Warehouse 32

Typical OLAP Operations location (cities) Chicago 440 New York Toronto 1560 395 Vancouver time (quarters) Q1 605 825 14 400 Q2 Q3 location (cities) slice for time = Q1 Chicaco New York Toronto Vancouver 605 825 14 400 Q4 Home Ent. Computer Phone Security Home Ent. Computer Phone item (types) Security item (types) MIT-652: DM 2: Data Warehouse 33

Typical OLAP Operations pivot 605 Home Ent. Chicaco 825 14 Computer Phone item (types) New York Toronto location (cities) Vancouver 605 825 14 400 Security 400 Vancouver Toronto New York Chicaco Security Phone Computer Home Ent. item (types) location (cities) MIT-652: DM 2: Data Warehouse 34

Chapter 2: Data Warehousing and OLAP Technology for Data Mining What is a data warehouse? A multi-dimensional data model Data warehouse architecture Data warehouse implementation Further development of data cube technology From data warehousing to data mining MIT-652: DM 2: Data Warehouse 35

Data Warehouse Design Process 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 MIT-652: DM 2: Data Warehouse 36

Multi-Tier Data Warehouse Architecture other sources Operational DBs Metadata Extract Transform Load Refresh Monitor & Integrator Data Warehouse OLAP Server Serve Client Analysis Query Reports Data mining Data Marts Data Sources Data Storage OLAP Engine Front-End Tools MIT-652: DM 2: Data Warehouse 37

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 MIT-652: DM 2: Data Warehouse 38

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 MIT-652: DM 2: Data Warehouse 39

Chapter 2: Data Warehousing and OLAP Technology for Data Mining What is a data warehouse? A multi-dimensional data model Data warehouse architecture Data warehouse implementation Further development of data cube technology From data warehousing to data mining MIT-652: DM 2: Data Warehouse 40

Efficient Data Cube Computation Data cube can be viewed as a lattice of cuboids How many cuboids in an n-dimensional cube with L levels? ( 2 n if no hierarchies associated with each dimension) T = n i = ( L i + 1) 1 product,date product,country date, country ( L i = #levels of hierarchy associated with dimension i th ) Materialization of data cube Materialize every (cuboid) (full materialization), none (no materialization), or some (partial materialization) Selection of which cuboids to materialize Based on size, workload, frequency, access cost, etc. all product date country product, date, country MIT-652: DM 2: Data Warehouse 41

Cube Computation: ROLAP-Based Method ROLAP-based cubing algorithms Sorting, hashing, and grouping operations are applied to the dimension attributes in order to reorder and cluster related tuples Grouping is performed on some subaggregates as a partial grouping step Aggregates may be computed from previously computed aggregates, rather than from the base fact table MIT-652: DM 2: Data Warehouse 42

Multi-way Array Aggregation for Cube Computation (MOLAP-Based Method) B Partition arrays into chunks (a small subcube which fits in memory). Compressed sparse array addressing: (chunk_id, offset) Compute aggregates in multiway by visiting cube cells in the order which minimizes the # of times to visit each cell, and reduces memory access and storage cost. C c3 61 62 63 64 c2 45 46 47 48 c1 c 0 29 30 31 32 b3 B13 14 15 16 60 44 28 b2 9 56 40 24 b1 5 52 36 20 b0 1 2 3 4 a0 a1 a2 a3 A cuboid ABC What is the best traversing order to do multi-way aggregation? MIT-652: DM 2: Data Warehouse 43

Multi-way Array Aggregation for Cube Computation B C c3 61 62 63 c2 45 46 47 c1 c 0 29 30 31 32 B b3 13 14 15 16 b2 b1 b0 9 5 1 2 3 4 a0 a1 A a2 a3 64 48 60 44 28 56 40 24 52 36 20 cuboid ABC How to compute chunk b 0 c 0 of cuboid BC? MIT-652: DM 2: Data Warehouse 44

Multi-way Array Aggregation for Cube Computation a 0 c 0 AC b 0 c 0 BC B c3 61 62 63 C c2 45 46 47 c1 c 0 29 30 31 32 b3 B13 14 15 16 b2 9 b1 5 b0 1 2 3 4 a0 a1 A a2 a3 64 48 60 44 28 56 40 24 52 36 20 ABC AB a 0 b 0 MIT-652: DM 2: Data Warehouse 45

Multi-Way Array Aggregation for Cube Computation (Cont.) Method: the planes should be sorted and computed according to their size in ascending order. Idea: keep the smallest plane in the main memory, fetch and compute only one chunk at a time for the largest plane Limitation of the method: computing well only for a small number of dimensions If there are a large number of dimensions, bottomup computation and iceberg cube computation methods can be explored MIT-652: DM 2: Data Warehouse 46

Indexing OLAP Data: Bitmap Index Index on a particular column Each value in the column has a bit vector: bit-op is fast The length of the bit vector: # of records in the base table The i-th bit is set if the i-th row of the base table has the value for the indexed column not suitable for high cardinality domains Base table Index on Region Index on Type Cust Region Type C1 Asia Retail C2 Europe Dealer C3 Asia Dealer C4 America Retail C5 Europe Dealer RecIDAsia Europe America 1 1 0 0 2 0 1 0 3 1 0 0 4 0 0 1 5 0 1 0 RecID Retail Dealer 1 1 0 2 0 1 3 0 1 4 1 0 5 0 1 MIT-652: DM 2: Data Warehouse 47

Indexing OLAP Data: Join Index Traditional indices map the values in a given column to a list of rows having that value. In data warehouses, join index relates the values of the dimensions of a star schema to rows in the fact table. E.g. fact table: Sales and two dimensions location and item A join index on item maintains for each distinct item A list of the tuples recording the Sales for that items Join indices can span multiple dimensions MIT-652: DM 2: Data Warehouse 48

Indexing OLAP Data: Join Index sales location T57 item Main Street T238 Sony-TV T459 T884 MIT-652: DM 2: Data Warehouse 49

Efficient Processing OLAP Queries Determine which operations should be performed on the available cuboids: transform drill, roll, etc. into corresponding SQL and/or OLAP operations, e.g, dice = selection + projection Determine to which materialized cuboid(s) the relevant operations should be applied. Exploring indexing structures and compressed vs. dense array structures in MOLAP MIT-652: DM 2: Data Warehouse 50

OLAP Queries: An Example location country province city street item type brand item_name the query will be processed on {brand,province_or_state} the selection constraint year = 2000 Materialized cuboids cuboid1: {item_name,city,year} cuboid2: {brand,country,year} cuboid3: {brand,province_or_state,year} cuboid4: {item_name,province_or_state} where year = 2000 MIT-652: DM 2: Data Warehouse 51

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 MIT-652: DM 2: Data Warehouse 52

Chapter 2: Data Warehousing and OLAP Technology for Data Mining What is a data warehouse? A multi-dimensional data model Data warehouse architecture Data warehouse implementation Further development of data cube technology From data warehousing to data mining MIT-652: DM 2: Data Warehouse 53

Discovery-Driven Exploration of Data Cubes Hypothesis-driven: exploration by user, huge search space Discovery-driven (Sarawagi et al. 98) pre-compute measures indicating exceptions, guide user in the data analysis, at all levels of aggregation Exception: significantly different from the value anticipated, based on a statistical model Visual cues such as background color are used to reflect the degree of exception of each cell Computation of exception indicator (modeling fitting and computing SelfExp, InExp, and PathExp values) can be overlapped with cube construction MIT-652: DM 2: Data Warehouse 54

Examples: Discovery-Driven Data Cubes MIT-652: DM 2: Data Warehouse 55

Chapter 2: Data Warehousing and OLAP Technology for Data Mining What is a data warehouse? A multi-dimensional data model Data warehouse architecture Data warehouse implementation Further development of data cube technology From data warehousing to data mining MIT-652: DM 2: Data Warehouse 56

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 MIT-652: DM 2: Data Warehouse 57

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 MIT-652: DM 2: Data Warehouse 58

Mining query OLAM Engine An OLAM Architecture User GUI API Mining result OLAP Engine Layer4 User Interface Layer3 OLAP/OLAM Data Cube API MDDB Meta Data Layer2 Multidimensional DB Filtering&Integration Databases Database API Data cleaning Data integration Filtering Data Warehouse Layer1 Data Repository MIT-652: DM 2: Data Warehouse 59

Summary Data warehouse: A subject-oriented, integrated, time-variant, and nonvolatile collection of data in support of management s decisionmaking process A multi-dimensional model of a data warehouse Star schema, snowflake schema, fact constellations A data cube consists of dimensions & measures Concept Hierarchies: organize the value of attributes or dimensions into gradual levels of abstraction OLAP operations: drilling, rolling, slicing, dicing and pivoting MIT-652: DM 2: Data Warehouse 60

Summary OLAP servers: ROLAP, MOLAP, HOLAP Efficient computation of data cubes Partial vs. full vs. no materialization Multiway array aggregation Bitmap index and join index implementations MIT-652: DM 2: Data Warehouse 61