2011.11.01 - slide 1is 257 – fall 2011 data warehousing university of california, berkeley school...

58
IS 257 – Fall 2011 2011.11.01 - SLIDE 1 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

Post on 20-Dec-2015

214 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 1

Data Warehousing

University of California, Berkeley

School of Information

IS 257: Database Management

Page 2: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 2

Lecture Outline

• Review– Java and JDBC

• Data Warehouses

• Introduction to Data Warehouses

• Data Warehousing– (Based on lecture notes from Joachim

Hammer, University of Florida, and Joe Hellerstein and Mike Stonebraker of UCB)

Page 3: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 3

Java and JDBC

• Java is probably the high-level language used in most software development today one of the earliest “enterprise” additions to Java was JDBC

• JDBC is an API that provides a mid-level access to DBMS from Java applications

• Intended to be an open cross-platform standard for database access in Java

• Similar in intent to Microsoft’s ODBC

Page 4: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 4

JDBC Architecture

• The goal of JDBC is to be a generic SQL database access framework that works for any database system with no changes to the interface code

Oracle MySQL Postgres

Java Applications

JDBC API

JDBC Driver Manager

Driver Driver Driver

Page 5: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 5

JDBC

• Provides a standard set of interfaces for any DBMS with a JDBC driver – using SQL to specify the databases operations.

Resultset

Statement

Resultset Resultset

Connection

PreparedStatement CallableStatement

DriverManager

Oracle Driver ODBC Driver Postgres Driver

Oracle DB Postgres DBODBC DB

Application

Page 6: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 6

JDBC Simple Java Implementation

import java.sql.*;import oracle.jdbc.*;

public class JDBCSample {

public static void main(java.lang.String[] args) {

try { // this is where the driver is loaded //Class.forName("jdbc.oracle.thin"); DriverManager.registerDriver(new OracleDriver());

}catch (SQLException e) { System.out.println("Unable to load driver Class"); return;}

Page 7: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 7

JDBC Simple Java Impl.

try { //All DB access is within the try/catch block... // make a connection to ORACLE on Dream Connection con = DriverManager.getConnection(

"jdbc:oracle:thin:@dream.sims.berkeley.edu:1521:dev", “mylogin", “myoraclePW");

// Do an SQL statement... Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery("SELECT NAME FROM DIVECUST");

Page 8: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 8

JDBC Simple Java Impl. // show the Results...

while(rs.next()) {System.out.println(rs.getString("NAME"));

} // Release the database resources... rs.close(); stmt.close(); con.close();}catch (SQLException se) { // inform user of errors... System.out.println("SQL Exception: " + se.getMessage()); se.printStackTrace(System.out);}

}}

Page 9: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 9

Lecture Outline

• Review– Application of Object Relational DBMS – the

Berkeley Environmental Digital Library

• Data Warehouses• Introduction to Data Warehouses• Data Warehousing

– (Based on lecture notes from Joachim Hammer, University of Florida, and Joe Hellerstein and Mike Stonebraker of UCB)

Page 10: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 10

Overview

• Data Warehouses and Merging Information Resources

• What is a Data Warehouse?

• History of Data Warehousing

• Types of Data and Their Uses

• Data Warehouse Architectures

• Data Warehousing Problems and Issues

Page 11: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 11

Problem: Heterogeneous Information Sources

“Heterogeneities are everywhere”

Different interfaces Different data representations Duplicate and inconsistent information

PersonalDatabases

Digital Libraries

Scientific DatabasesWorldWideWeb

Slide credit: J. Hammer

Page 12: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 12

Problem: Data Management in Large Enterprises

• Vertical fragmentation of informational systems (vertical stove pipes)

• Result of application (user)-driven development of operational systems

Sales Administration Finance Manufacturing ...

Sales PlanningStock Mngmt

...

Suppliers

...Debt Mngmt

Num. Control

...Inventory

Slide credit: J. Hammer

Page 13: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 13

Goal: Unified Access to Data

Integration System

• Collects and combines information• Provides integrated view, uniform user interface• Supports sharing

WorldWideWeb

Digital Libraries Scientific Databases

PersonalDatabases

Slide credit: J. Hammer

Page 14: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 14

The Traditional Research Approach

Source SourceSource. . .

Integration System

. . .

Metadata

Clients

Wrapper WrapperWrapper

• Query-driven (lazy, on-demand)

Slide credit: J. Hammer

Page 15: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 15

Disadvantages of Query-Driven Approach

• Delay in query processing– Slow or unavailable information sources– Complex filtering and integration

• Inefficient and potentially expensive for frequent queries

• Competes with local processing at sources

• Hasn’t caught on in industry

Slide credit: J. Hammer

Page 16: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 16

The Warehousing Approach

DataDataWarehouseWarehouse

Clients

Source SourceSource. . .

Extractor/Monitor

Integration System

. . .

Metadata

Extractor/Monitor

Extractor/Monitor

• Information integrated in advance

• Stored in WH for direct querying and analysis

Slide credit: J. Hammer

Page 17: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 17

Advantages of Warehousing Approach

• High query performance– But not necessarily most current information

• Doesn’t interfere with local processing at sources– Complex queries at warehouse– OLTP at information sources

• Information copied at warehouse– Can modify, annotate, summarize, restructure, etc.– Can store historical information– Security, no auditing

• Has caught on in industry

Slide credit: J. Hammer

Page 18: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 18

Not Either-Or Decision

• Query-driven approach still better for– Rapidly changing information– Rapidly changing information sources– Truly vast amounts of data from large

numbers of sources– Clients with unpredictable needs

Slide credit: J. Hammer

Page 19: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 19

Data Warehouse EvolutionT

IME

200019951990198519801960 1975

Information-Based Management

DataRevolution

“MiddleAges”

“PrehistoricTimes”

RelationalDatabases

PC’s andSpreadsheets

End-userInterfaces

1st DW Article

DWConfs.

Vendor DWFrameworks

CompanyDWs

“Building theDW”

Inmon (1992)Data Replication

Tools

Slide credit: J. Hammer

Page 20: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 20

What is a Data Warehouse?

“A Data Warehouse is a –subject-oriented,– integrated,– time-variant,–non-volatile

collection of data used in support of management decision making processes.”

-- Inmon & Hackathorn, 1994: viz. Hoffer, Chap 11

Page 21: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 21

DW Definition…

• Subject-Oriented:– The data warehouse is organized around the

key subjects (or high-level entities) of the enterprise. Major subjects include

• Customers• Patients• Students• Products• Etc.

Page 22: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 22

DW Definition…

• Integrated– The data housed in the data warehouse are

defined using consistent• Naming conventions• Formats• Encoding Structures• Related Characteristics

Page 23: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 23

DW Definition…

• Time-variant– The data in the warehouse contain a time

dimension so that they may be used as a historical record of the business

Page 24: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 24

DW Definition…

• Non-volatile– Data in the data warehouse are loaded and

refreshed from operational systems, but cannot be updated by end-users

Page 25: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 25

What is a Data Warehouse?A Practitioners Viewpoint

• “A data warehouse is simply a single, complete, and consistent store of data obtained from a variety of sources and made available to end users in a way they can understand and use it in a business context.”

• -- Barry Devlin, IBM Consultant

Slide credit: J. Hammer

Page 26: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 26

A Data Warehouse is...

• Stored collection of diverse data– A solution to data integration problem– Single repository of information

• Subject-oriented– Organized by subject, not by application– Used for analysis, data mining, etc.

• Optimized differently from transaction-oriented db

• User interface aimed at executive decision makers and analysts

Page 27: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 27

… Cont’d

• Large volume of data (Gb, Tb)• Non-volatile

– Historical– Time attributes are important

• Updates infrequent• May be append-only• Examples

– All transactions ever at WalMart– Complete client histories at insurance firm– Stockbroker financial information and portfolios

Slide credit: J. Hammer

Page 28: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 28

Warehouse is a Specialized DB

Standard DB• Mostly updates• Many small transactions• Mb - Gb of data• Current snapshot• Index/hash on p.k.• Raw data• Thousands of users (e.g.,

clerical users)

Warehouse• Mostly reads• Queries are long and

complex• Gb - Tb of data• History• Lots of scans• Summarized, reconciled

data• Hundreds of users (e.g.,

decision-makers, analysts)

Slide credit: J. Hammer

Page 29: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 29

Summary

Operational SystemsEnterpriseModeling

BusinessInformation Guide

DataWarehouse

Catalog

Data WarehousePopulation

DataWarehouse

Business InformationInterface

Slide credit: J. Hammer

Page 30: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 30

Warehousing and Industry

• Warehousing is big business– $2 billion in 1995– $3.5 billion in early 1997– Predicted: $8 billion in 1998 [Metagroup]

• Wal-Mart is said to have the largest warehouse– 1000-CPU, 583 Terabyte, Teradata system

(InformationWeek, Jan 9, 2006)– “Half a Petabyte” in warehouse (Ziff Davis Internet,

October 13, 2004)– 1 billion rows of data or more are updated every day

(InformationWeek, Jan 9, 2006)– Some Government and Scientific databases are

larger, however

Slide credit: J. Hammer

Page 31: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 31

Other Large Data Warehouses• Not including Wal-Mart and Ebay

(InformationWeek, Jan 9, 2006)

Page 32: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 32

Types of Data

• Business Data - represents meaning– Real-time data (ultimate source of all business data)– Reconciled data– Derived data

• Metadata - describes meaning– Build-time metadata– Control metadata– Usage metadata

• Data as a product* - intrinsic meaning– Produced and stored for its own intrinsic value– e.g., the contents of a text-book

Slide credit: J. Hammer

Page 33: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 33

Data Warehousing Architecture

Page 34: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 34

“Ingest”

DataDataWarehouseWarehouse

Clients

Source/ File Source / ExternalSource / DB. . .

Extractor/Monitor

Integration System

. . .

Metadata

Extractor/Monitor

Extractor/Monitor

Page 35: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 35

Data Warehouse Architectures: Conceptual View

• Single-layer– Every data element is stored once only– Virtual warehouse

• Two-layer– Real-time + derived data– Most commonly used approach in– industry today

“Real-time data”

Operationalsystems

Informationalsystems

Derived Data

Real-time data

Operationalsystems

Informationalsystems

Slide credit: J. Hammer

Page 36: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 36

Three-layer Architecture: Conceptual View

• Transformation of real-time data to derived data really requires two steps

Derived Data

Real-time data

Operationalsystems

Informationalsystems

Reconciled DataPhysical Implementationof the Data Warehouse

View level“Particular informational

needs”

Slide credit: J. Hammer

Page 37: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 37

Issues in Data Warehousing

• Warehouse Design

• Extraction– Wrappers, monitors (change detectors)

• Integration– Cleansing & merging

• Warehousing specification & Maintenance

• Optimizations

• Miscellaneous (e.g., evolution)

Slide credit: J. Hammer

Page 38: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 38

Data Warehousing: Two Distinct Issues

• (1) How to get information into warehouse– “Data warehousing”

• (2) What to do with data once it’s in warehouse– “Warehouse DBMS”

• Both rich research areas

• Industry has focused on (2)

Slide credit: J. Hammer

Page 39: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 39

Data Extraction

• Source types– Relational, flat file, WWW, etc.

• How to get data out?– Replication tool– Dump file– Create report– ODBC or third-party “wrappers”

Slide credit: J. Hammer

Page 40: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 40

Wrapper

Converts data and queries from one data model to another

Extends query capabilities for sources with limited capabilities

DataModel

B

DataModel

A

Queries

Data

Queries SourceWrapper

Slide credit: J. Hammer

Page 41: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 41

Wrapper Generation

• Solution 1: Hard code for each source

• Solution 2: Automatic wrapper generation

WrapperWrapper

GeneratorDefinition

Slide credit: J. Hammer

Page 42: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 42

Data Transformations

• Convert data to uniform format– Byte ordering, string termination– Internal layout

• Remove, add & reorder attributes– Add key– Add data to get history

• Sort tuples

Slide credit: J. Hammer

Page 43: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 43

Monitors

• Goal: Detect changes of interest and propagate to integrator

• How?– Triggers– Replication server– Log sniffer– Compare query results– Compare snapshots/dumps

Slide credit: J. Hammer

Page 44: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 44

Data Integration

• Receive data (changes) from multiple wrappers/monitors and integrate into warehouse

• Rule-based• Actions

– Resolve inconsistencies– Eliminate duplicates– Integrate into warehouse (may not be empty)– Summarize data– Fetch more data from sources (wh updates)– etc.

Slide credit: J. Hammer

Page 45: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 45

Data Cleansing

• Find (& remove) duplicate tuples– e.g., Jane Doe vs. Jane Q. Doe

• Detect inconsistent, wrong data– Attribute values that don’t match

• Patch missing, unreadable data

• Notify sources of errors found

Slide credit: J. Hammer

Page 46: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 46

Warehouse Maintenance

• Warehouse data materialized view– Initial loading– View maintenance

• View maintenance

Slide credit: J. Hammer

Page 47: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 47

Differs from Conventional View Maintenance...

• Warehouses may be highly aggregated and summarized

• Warehouse views may be over history of base data

• Process large batch updates

• Schema may evolve

Slide credit: J. Hammer

Page 48: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 48

Differs from Conventional View Maintenance...

• Base data doesn’t participate in view maintenance– Simply reports changes– Loosely coupled– Absence of locking, global transactions– May not be queriable

Slide credit: J. Hammer

Page 49: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 49

Sales Comp.

Integrator

DataWarehouse

Sale(item,clerk) Emp(clerk,age)

Sold (item,clerk,age)

Sold = Sale Emp

Slide credit: J. Hammer

Warehouse Maintenance Anomalies

• Materialized view maintenance in loosely coupled, non-transactional environment

• Simple example

Page 50: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 50

1. Insert into Emp(Mary,25), notify integrator

2. Insert into Sale (Computer,Mary), notify integrator

3. (1) integrator adds Sale (Mary,25)

4. (2) integrator adds (Computer,Mary) Emp

5. View incorrect (duplicate tuple)

Sales Comp.

Integrator

DataWarehouse

Sale(item,clerk) Emp(clerk,age)

Sold (item,clerk,age)

Slide credit: J. Hammer

Warehouse Maintenance Anomalies

Page 51: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 51

Slide credit: J. Hammer

Maintenance Anomaly - Solutions

• Incremental update algorithms (ECA, Strobe, etc.)

• Research issues: Self-maintainable views– What views are self-maintainable– Store auxiliary views so original + auxiliary

views are self-maintainable

Page 52: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 52

Sold(item,clerk,age) =Sale(item,clerk) Emp(clerk,age)• Inserts into Emp

– If Emp.clerk is key and Sale.clerk is foreign key (with ref. int.) then no effect

• Inserts into Sale– Maintain auxiliary view: – Emp-clerk,age(Sold)

• Deletes from Emp– Delete from Sold based on clerk

Self-Maintainability: Examples

Slide credit: J. Hammer

Page 53: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 53

Self-Maintainability: Examples

• Deletes from SaleDelete from Sold based on {item,clerk}

Unless age at time of sale is relevant

• Auxiliary views for self-maintainability– Must themselves be self-maintainable– One solution: all source data– But want minimal set

Slide credit: J. Hammer

Page 54: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 54

Partial Self-Maintainability

• Avoid (but don’t prohibit) going to sourcesSold=Sale(item,clerk) Emp(clerk,age)

• Inserts into Sale– Check if clerk already in Sold, go to source

if not– Or replicate all clerks over age 30– Or ...

Slide credit: J. Hammer

Page 55: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 55

Warehouse Specification (ideally)

Extractor/Monitor

Extractor/Monitor

Extractor/Monitor

Integrator

Warehouse

...

Metadata

Warehouse Configuration

Module

View Definitions

Integrationrules

ChangeDetection

Requirements

Slide credit: J. Hammer

Page 56: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 56

Optimization

• Update filtering at extractor– Similar to irrelevant updates in constraint and

view maintenance

• Multiple view maintenance– If warehouse contains several views– Exploit shared sub-views

Slide credit: J. Hammer

Page 57: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 57

Additional Research Issues

• Historical views of non-historical data

• Expiring outdated information

• Crash recovery

• Addition and removal of information sources– Schema evolution

Slide credit: J. Hammer

Page 58: 2011.11.01 - SLIDE 1IS 257 – Fall 2011 Data Warehousing University of California, Berkeley School of Information IS 257: Database Management

IS 257 – Fall 2011 2011.11.01 - SLIDE 58

More Information on DW

• Agosta, Lou, The Essential Guide to Data Warehousing. Prentise Hall PTR, 1999.

• Devlin, Barry, Data Warehouse, from Architecture to Implementation. Addison-Wesley, 1997.

• Inmon, W.H., Building the Data Warehouse. John Wiley, 1992.

• Widom, J., “Research Problems in Data Warehousing.” Proc. of the 4th Intl. CIKM Conf., 1995.

• Chaudhuri, S., Dayal, U., “An Overview of Data Warehousing and OLAP Technology.” ACM SIGMOD Record, March 1997.