OLAP On Line Analytical Processing Alfredo Cuzzocrea DEIS Dipartimento di Elettronica, Informatica e Sistemistica Università della Calabria cuzzocrea@si.deis.unical.it Testo di Riferimento: J. Han, M. Kamber Data Mining: Concepts and Techniques 1
Outline Motivazioni Il Contesto Applicativo I Cardini di OLAP Modelli Concettuali a Supporto della Progettazione di OLAP Data Modelli Logici a Supporto della Progettazione di OLAP Data Modello Multidimensionale dei Dati Operatori ed Operazioni OLAP Un esempio Modelli di Rappresentazione Fisica di OLAP Data Commercial OLAP Server Systems 2
Outline Motivazioni Il Contesto Applicativo I Cardini di OLAP Modelli Concettuali a Supporto della Progettazione di OLAP Data Modelli Logici a Supporto della Progettazione di OLAP Data Modello Multidimensionale dei Dati Operatori ed Operazioni OLAP Un esempio Modelli di Rappresentazione Fisica di OLAP Data Commercial OLAP Server Systems 3
Motivations La tecnologia dei DB, Internet ed il recupero automatico dei dati hanno causato l esplosione della dimensione delle sorgenti di dati (large data set) I Sistemi di Supporto alle Decisioni possono trarre vantaggio da una più elevata conoscenza derivata da enormi quantità di dati Spesso i dati sono contenuti in Sistemi Informativi eterogenei, complessi e distribuiti Inadeguatezza dei tradizionali DBMS (tecnologia OLTP On Line Transactional Processing) 4
Differences between OLTP and 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 metric transaction throughput query throughput, response 5
Outline Motivazioni Il Contesto Applicativo I Cardini di OLAP Modelli Concettuali a Supporto della Progettazione di OLAP Data Modelli Logici a Supporto della Progettazione di OLAP Data Modello Multidimensionale dei Dati Operatori ed Operazioni OLAP Un esempio Modelli di Rappresentazione Fisica di OLAP Data Commercial OLAP Server Systems Exploitation: : Interrogazione Approssimata di OLAP Data 6
The Applicative Context Data Warehousing Environment Monitor + Integrator Metadati Server OLAP DB Operazionali Extract Transform Load Refresh Data Warehouse Serve Analisi Query Report Data mining altre sorgenti Data Marts Sorgenti Archivio Dati Motore OLAP Tool Front-End 7
Outline Motivazioni Il Contesto Applicativo I Cardini di OLAP Modelli Concettuali a Supporto della Progettazione di OLAP Data Modelli Logici a Supporto della Progettazione di OLAP Data Modello Multidimensionale dei Dati Operatori ed Operazioni OLAP Un esempio Modelli di Rappresentazione Fisica di OLAP Data Commercial OLAP Server Systems Exploitation: : Interrogazione Approssimata di OLAP Data 8
OLAP Foundamentals Si basa su un modello logico multidimensionale dei dati (dimensioni, misure, gerarchie e livelli) Consente di estrarre conoscenza da grosse moli di dati Supporta analisi di tipo qualitativa Lavora su dati storicizzati Concetto di reticolo di cuboidi 9
Outline Motivazioni Il Contesto Applicativo I Cardini di OLAP Modelli Concettuali a Supporto della Progettazione di OLAP Data Modelli Logici a Supporto della Progettazione di OLAP Data Modello Multidimensionale dei Dati Operatori ed Operazioni OLAP Un esempio Modelli di Rappresentazione Fisica di OLAP Data Commercial OLAP Server Systems Exploitation: : Interrogazione Approssimata di OLAP Data 10
Conceptual Models for supporting the OLAP Data Design Dimensional Fact Model Consente di modellare a livello concettuale lo schema multidimensionale dell OLAP data cube category brand Product description street Sales money quantity Time day store Zone city region month week year country 11
Outline Motivazioni Il Contesto Applicativo I Cardini di OLAP Modelli Concettuali a Supporto della Progettazione di OLAP Data Modelli Logici a Supporto della Progettazione di OLAP Data Modello Multidimensionale dei Dati Operatori ed Operazioni OLAP Un esempio Modelli di Rappresentazione Fisica di OLAP Data Commercial OLAP Server Systems Exploitation: : Interrogazione Approssimata di OLAP Data 12
Logic Models for supporting the OLAP Data Design Star schema Un singolo oggetto (fact table) in mezzo connesso ad un numero di oggetti (dimension tables) Snowflake schema Un raffinamento dello star schema in cui la gerarchia dimensionale è rappresentata esplicitamente (normalizzando le tabelle delle dimensioni) Fact constellations fact tables multiple condividono dimension tables 13
Star Schema Date Date Month Year Store StoreID City State Country Region Measurements Sales Fact Table Date Product Store Customer unit_sales dollar_sales Yen_sales Product ProductNo ProdName ProdDesc Category QOH Cust CustId CustName CustCity CustCountry 14
Snowflake Schema Year Year Month Month Year Date Date Month Sales Fact Table Date Product Product ProductNo ProdName ProdDesc Category QOH Country Country Region State State Country City City State Store StoreID City Measurements Store Customer unit_sales dollar_sales Yen_sales Cust CustId CustName CustCity CustCountry 15
time time_key day day_of_the_week month quarter year Fact Constellations 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 16
Outline Motivazioni Il Contesto Applicativo I Cardini di OLAP Modelli Concettuali a Supporto della Progettazione di OLAP Data Modelli Logici a Supporto della Progettazione di OLAP Data Modello Multidimensionale dei Dati Operatori ed Operazioni OLAP Un esempio Modelli di Rappresentazione Fisica di OLAP Data Commercial OLAP Server Systems Exploitation: : Interrogazione Approssimata di OLAP Data 17
Multidimensional Data Model Sales come funzione di Product, Month, e Region Zone Product Zone Time Industry Region Year Category Country Quarter Product Product City Month Week Office Day Time 18
Dimensions, Hierarchies and Levels all all region Europe... North_America country Germany... Spain Canada... Mexico city Frankfurt... Vancouver... Toronto office L. Chan... M. Wind 19
Hierarchies and Aggregations Le gerarchie consentono di aggregare automaticamente i dati di interesse quando ci si focalizza su un livello: se ci concentriamo su Mese i fatti rappresentano i totali delle vendite per ogni mese Possiamo concentrarci su diversi livelli della gerarchia in dimensioni diverse: le vendite mensili per regione di ogni prodotto 20
Cuboids Lattice n NC = L i + 1 i = 1 all n L i = numero di dimensioni = profondità della gerarchia definita sulla dimensione i 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 time, item, location, supplier 4-D(base) cuboid 21
OLAP Measures Distributive calcolo incrementale E.g., count, sum, min, max Algebriche risultato di una funzione algebrica di M argomenti (M costante) in cui ogni argomento è un aggregato E.g., avg, min_k, max_k, standard_deviation Olistiche non c è un limite costante nel numero di elementi necessari per definirle a partire da un sottoaggregato E.g., median, mode, rank OLAP E UNO STRUMENTO DI ANALISI 22
An Example of OLAP Data Cube Store Pisa Roma Firenze sum Product Milk Bread Orange... sum All Products January 96, Pisa. Jan 96 Feb 96... Time sum Ogni dimensione contiene una gerarchia di valori Ogni cella del cubo contiene valori aggregati (count, sum, max, etc.) 23