Você está na página 1de 21

Data Warehousing e Tecnologia OLAP para Data Mining

O que um data warehouse? O modelo de dados multi-dimensional Arquitectura de data warehouses Implementao de data warehouses Mais aspectos da tecnologia multi-dimensional De data warehousing a data mining
Base de Dados II 1

O que um Data Warehouse?


n

Definido de vrias maneiras diferentes, mas no de uma forma rigorosa. n Uma base dados de suporte a deciso que mantida separadamente da base operacional da organizao. n Suporta processamento de informao fornecendo uma plataforma slida para anlise de dados histricos, consolidados. A data warehouse is a subject-oriented, integrated, time-variant, and nonvolatile collection of data in support of managements decision-making process.W. H. Inmon Data warehousing: n O processo de construir e usar data warehouses
Base de Dados II 2

Data Warehouse-Orientado por Tema


n

Organizado em torno de temas importantes, tais como cliente, produto, vendas. Focado na modelao e anlise de dados para quem toma decises, em vez de operaes dirias e processamento de transaces. Fornece uma viso simples e concisa sobre questes de um tema particular atravs da excluso de dados que no so importantes no suporte ao processo de deciso.
Base de Dados II 3

Data WarehouseIntegrado
n

Construdo por integrao de mltiplas e heterogneas fontes de dados n Bases de dados relacionais, ficheiros simples, registos de transaces on-line n So aplicadas tcnicas de limpeza de dados e integrao de dados. n assegurada a consistncia na conveno de nomes, codificao de estruturas, atributos de medidas, etc. entre diferentes fontes de dados
n

E.g., Hotel price: currency, tax, breakfast covered, etc.

Quando a informao movida para o warehouse, feita a converso.


Base de Dados II 4

Data WarehouseVarivel Tempo


n

O horizonte de tempo para um data warehouse significativamente maior do que o de sistemas operacionais.
n n

Base de dados operacional: informao actual. Dados no data warehouse: fornece informao numa perspectiva histrica (e.g., ltimos 5-10 anos) Contm um elemento de tempo, explicita ou implicitamente Mas a chave de dados operacionais pode ou no conter um elemento de tempo.

Cada estrutura chave no data warehouse


n n

Base de Dados II

Data WarehouseNo-voltil
n

Um repositrio fisicamente separado de dados transformados do ambiente operacional. no ocorre actualizao de dados operacional sobre a informao no data warehouse.
n

no requer mecanismos de processamento de transaces, recuperao e controlo de concorrncia Requer apenas duas operaes de acesso a dados:
n

Carregamento inicial de dados e acesso a dados.


Base de Dados II 6

Data Warehouse vs. SGBD Heterogneos


n

Integrao tradicional de BD heterogneas:


n n

Construir conversores/mediadores sobre BD heterogneas Abordagem orientada-a-consulta


n

Quando uma consulta feita a uma determinada BD, usa-se um meta-dicionrio para traduzir a consulta em consultas apropriadas para outras BDs envolvidas, e os resultados so integrados num conjunto resposta global Filtragem de informao complexa, competio por recursos

Data warehouse: orientada-por-actualizaao, alta performance


n

A informao de fontes heterogneas previamente integrada e guardada em warehouses para consulta e anlise directa

Base de Dados II

Data Warehouse vs. SGBD Operacionais


n

OLTP (on-line transaction processing)


n n

Tarefa principal dos SGBD relacionais tradicionais Operaoes dirias: vendas, inventrio, saldos, produao, salrios, registo, contabilidade, etc. Tarefa principal de sistemas de data warehouse Anlise de dados e tomada de decises Orientaao do sistema e utilizador: cliente vs. mercado Contedo dos dados: actuais, detalhados vs. histricos, consolidados Desenho da BD: ER + aplicaao vs. estrela + tema Visao: actual, local vs. evolucionria, integrada Padroes de acesso: actualizao vs. consultas read-only, complexas
Base de Dados II 8

OLAP (on-line analytical processing)


n n

Caractersticas distintas (OLTP vs. OLAP):


n n n n n

OLTP vs. OLAP


OLTP utilizadores funao desenho de BD dados Operaoes dirias Orientado-por-aplicaao correntes, actualizados detalhados, relacional simples isolado repetitivo read/write index/hash na chave prim. Transacao simples e curta dezenas milhares 100MB-GB Transacoes por minuto
Base de Dados II

OLAP Suporte a decisoes Orientado-por-tema histricos, sumarizados, multidimencionais integrados, consolidados ad-hoc Leitura exaustiva Consulta complexa Milhoes Centenas 100GB-TB Consultas por minuto, resposta
9

Escriturrio, profissional IT Analista de mercado

uso acesso unid. de trabalho # registos acedidos #utilizadores tamanho da BD mtrica

Porqu Separar um Data Warehouse?


n

Alta performance para ambos os sistemas n SGBD optimizados para OLTP: mtodos de acesso, indexao, controlo de concorrncia, recuperao n Warehouse optimizado para OLAP: consultas OLAP complexas, visoes multi-dimensionais, consolidao. Funes diferentes e dados diferentes: n Falta de dados: suporte deciso requer dados histricos que BDs operacionais tipicamente no mantm n Consolidaao de dados: SD requer consolidao (agregao, sumarizaao) de dados de fontes heterogneas n Qualidade de dados: Fontes diferentes usam tipicamente representaes inconsistentes de dados, cdigos e formatos que tm de ser reconciliados

Base de Dados II

10

Data Warehousing e Tecnologia OLAP para Data Mining


n

O que um data warehouse? O modelo de dados multi-dimensional Arquitectura de data warehouses Implementao de data warehouses Mais aspectos da tecnologia multi-dimensional De data warehousing a data mining
Base de Dados II 11

De Tabelas e Folhas de Clculo para Cubos de Dados


n

Um data warehouse baseado num modelo de dados multidimensional que v os dados na forma de um cubo de dados Um cubo de dados, tal como sales, permite que a informao seja modelada e vista em mltiplas dimenses
n

Tabelas de dimenso, tais como item (item_name, brand, type), ou time(day, week, month, quarter, year) Tabelas de factos contm medidas (tais como dollars_sold) e chaves externas para cada tabela de dimenso relacionada

Na literatura de data warehousing, um cubo n-D chamado cubide. O cubide 0-D de topo, que contm o nvel mais alto de sumariazao, chamado cubide apex. O reticulado de cubides forma o cubo de dados.
Base de Dados II 12

Cubo: Reticulado de cubides


Todos time item location supplier 1-D cubides
time,item time,location item,location location,supplier

0-D(apex) cubide

time,supplier time,item,location

2-D cubides
item,supplier

time,location,supplier

3-D cubides
item,location,supplier

time,item,supplier

4-D(base) cubide
time, item, location, supplier
Base de Dados II 13

Modelao Conceptual de Data Warehouses


n

Modelar data warehouses: dimenses & medidas


n

Esquema estrela: Tabela de factos no centro ligada a um conjunto de tabelas dimenso Esquema floco de neve: Um refinamento do esquema estrela onde parte da hierarquia dimensional normalizada num conjunto de tabelas dimenso mais pequenas, numa forma similar a um floco de neve. Constelaes de factos: Tabelas de factos mltiplas partilham tabelas dimenso, formando um grupo de estrelas, logo chamado constelao de factos.
Base de Dados II 14

Exemplo de Esquema Estrela


time
time_key day day_of_the_week month quarter year

item
Tabela de Factos Sales time_key item_key branch_key
item_key item_name brand type supplier_type

branch
branch_key branch_name branch_type

location location_key units_sold dollars_sold avg_sales Medidas


Base de Dados II 15

location_key street city province_or_street country

Exemplo de Esquema Floco de Neve


time
time_key day day_of_the_week month quarter year

item
Tabela de Factos Sales time_key item_key branch_key
item_key item_name brand type supplier_key

supplier
supplier_key supplier_type

branch
branch_key branch_name branch_type

location location_key units_sold dollars_sold avg_sales Medidas


Base de Dados II

location_key street city_key

city
city_key city province_or_street country
16

Exemplo de Constelao de Factos


time
time_key day day_of_the_week month quarter year

item
Tabela de Factos Sales time_key item_key branch_key
item_key item_name brand type supplier_type

Tabela Factos Shipping time_key item_key shipper_key from_location

branch
branch_key branch_name branch_type

location_key units_sold dollars_sold avg_sales Medidas

location
location_key street city province_or_street country

to_location dollars_cost units_shipped shipper


shipper_key shipper_name location_key shipper_type 17

Base de Dados II

Data Mining Query Language, DMQL: Primitivas da Linguagem


n

Definio de Cubo (Tabela de Factos) define cube <cube_name> [<dimension_list>]: <measure_list> Definio de Dimenso ( Tabela de Dimensao ) define dimension <dimension_name> as (<attribute_or_subdimension_list>) Caso Especial (Tabelas de dimenso partilhadas) n Primeira vez como definio de cubo n define dimension <dimension_name> as <dimension_name_first_time> in cube <cube_name_first_time>
Base de Dados II 18

Definio de Esquema Estrela em 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)
Base de Dados II 19

Definio de esquema Floco de Neve em 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))
Base de Dados II 20

10

Definio de constelao de factos em 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
Base de Dados II 21

Hierarquias conceptuais: Dimenso (localizao)


Todos regio Germany Europe todos ... North_America

pas

...

Spain

Canada

...

Mexico

cidade escritrio

Frankfurt

...

Vancouver ... L. Chan


Base de Dados II

Toronto

...

M. Wind
22

11

Dados Multi-dimensionais
n

Volume de vendas como funo de produto, ms, regio


gi o
Dimenses: Produto, Localizao, Tempo Caminhos de sumarizao hierrquicos Indstria Regio Ano

Re

Categoria Pas Trimestre

Produto

Produto

Cidade Escritrio

Mes

Semana Dia

Ms
Base de Dados II 23

Exemplo de Cubo de Dados


od ut o
TV PC VCR sum 1Qtr 2Qtr

Data
3Qtr 4Qtr sum

Total de vendas anual de TV nos U.S.A. U.S.A Canada Mexico sum

Pr

Base de Dados II

Pas
24

12

Cubides correspondentes ao Cubo


todos 0-D(apex) cubide
produto

data
produto, pas

pas 1-D cubides


data, pas

produto, data

2-D cubides 3-D(base) cubide


produto, data, pas

Base de Dados II

25

Pesquisa num Cubo de Dados

n n n
Base de Dados II

Visualizao Capacidades OLAP Manipulao interactiva


26

13

Operaes OLAP tpicas


n

Roll up (drill-up): sumarizar dados


n

por subida na hierarquia ou por reduo de uma dimenso de sumrios de nvel mais alto para sumrios de nvel mais baixo ou mais detalhados, ou pela introduo de dimenses project e select reorientar o cubo, visualizao, de 3D para sries de planos 2D drill across: envolvem mais do que uma tabela de factos drill through: do nvel mais baixo do cubo para as tabelas relacionais de back-end (usando SQL)
Base de Dados II 27

Drill down (roll down): inverso de roll-up


n

Slice and dice:


n

Pivot (rotate):
n

Outras operaes
n n

Data Warehousing e Tecnologia OLAP para Data Mining


n

O que um data warehouse? O modelo de dados multi-dimensional Arquitectura de data warehouses Implementao de data warehouses Mais aspectos da tecnologia multi-dimensional De data warehousing a data mining
Base de Dados II 28

14

Desenho de Data Warehouses


n

Quatro perspectivas de desenho de um data warehouse


n

Perspectiva Top-down
n

Permite a seleco da informao relevante necessria para o data warehouse Mostra a informao a ser adquirida, guardada e gerida por sistema operacionais consiste em tabelas de factos e tabelas dimenso v a perspectiva dos dados no warehouse do ponto de vista do utilizador final
Base de Dados II 29

Perspectiva de Origem de Dados


n

Perspectiva Data warehouse


n

Perspectiva de Consulta de Anlise


n

Processo de desenho de Data Warehouses


n

Abordagens Top-down, bottom-up ou uma combinaao de ambos n Top-down: Comea com o desenho e planeamento geral n Bottom-up: Comea com experencias e prototipos Do ponto de vista da engenharia de software n Cascata: Anlise estruturada e sistematica em cada passo antes de prosseguir para o proximo n Espiral: Geraao rapida e incremental de funcionalidades do sistema Processo de desenho tpico de data warehouse n Escolher um processo de negcio a modelar, e.g., encomendas, facturas, etc. n Escolher o grao (nvel de dados atmico) do processo de negcio n Escolher as dimensoes que estao associadas a cada tabela de factos n Escolher as medidas presentes em cada registo da tabela de factos
Base de Dados II 30

15

Modelao de um Data Warehouse


n

Suponha que uma empresa concessionria de auto-estradas pretende construir uma BD para suportar o registo das viagem efectuadas. n Crie um Modelo relacional para uma BD operacional n Crie um Modelo estrela para um DW

Base de Dados II

31

Arquitectura Multi-Camada
other Metadata

sources
Operational Extract Transform Load Refresh

Monitor & Integrator

OLAP Server

DBs

Data Warehouse

Serve

Analysis Query Reports Data mining

Data Marts

Data Sources

Data Storage

OLAP Engine Front-End Tools


32

Base de Dados II

16

Arquitecturas OLAP
n

Relational OLAP (ROLAP) n Usar SGBD relationais ou relacionais extendidos para guardar e gerir os dados do data warehouse e aplicaoes OLAP para suportar anlise complexa de dados. n Incluem optimizaao dos SGBD de backend, implementaao de navegaao baseada em agregaao, assim como mais ferramentas e servios. n Maior escalabilidade Multidimensional OLAP (MOLAP) n Baseado em matrizes de armazenamento multidimensionais (sparse matrix techniques) n Indexaao rpida sobre dados sumarizados pre-clculados Hybrid OLAP (HOLAP) n Baixo nvel: relacional, alto-nvel: matriz
Base de Dados II 33

Esquema Estrela para Vendas de Veculos


Location LocID Continent Country Sales_facts LocationId TimeId ProductId Vehicles Sold Time TimeId Year Half year

Product ProductId Vehicle kind Vehicle size

Base de Dados II

34

17

Representao relacional do cubo

Base de Dados II

35

Representao relacional do cubo

Base de Dados II

36

18

O cubo OLAP

Base de Dados II

37

Expresses SQL para as operaes OLAP

Base de Dados II

38

19

Expresses SQL para as operaes OLAP

Base de Dados II

39

Representao matricial do cubo

Base de Dados II

40

20

Operador Cube
n

Definiao do cubo e clculo em DMQL define cube sales[item, city, year]: sum(sales_in_dollars) compute cube sales

Transformar numa linguagem tipo SQL- (com um novo operador cube by, introduzido por Gray et al.96) SELECT item, city, year, SUM (amount) FROM SALES
(city) ()

CUBE BY item, city, year E necessario calcular os seguintes Group-Bys (date, product, customer), (city, item) (city, year) (item, year) (date,product),(date, customer), (product, customer), (date), (product), (customer) () (city, item, year)
Base de Dados II 41

(item)

(year)

21

Você também pode gostar