Upload
internet
View
104
Download
0
Embed Size (px)
Citation preview
Criar o Data WarehouseCriar o Data Warehouse
Marcelino PereiraCIn-UFPE
Data Warehouse x BD operacionalData Warehouse x BD operacional
Massa de Dados: Imensa x Grande
Acesso aos Dados: Ocasional x Constante
Natureza: Temporal x Não Temporal
Atualização de Dados: Periódico x Permanente
Dados Armazenados: Históricos x Atuais
Processamento: OLAP x OLTP
Necessidade Desenvolvimento: Estratégica x Operacional
Origem Pesquisa: Indústria x Academia
BD Operacionais BD Operacionais Data Warehouse Data Warehouse OLAP/KDDOLAP/KDD
BD Operacionais
extrair
traduzir
filtrar
integrar
Data Warehouse
OLAP
KDD
serve
Data Warehouse x Data MartData Warehouse x Data Mart
Data Warehouse:• Informações de diferentes fontes (BD´s heterogêneos /
distribuídos / sistemas legados etc) são extraídas, traduzidas, filtradas,integradas, agregadas e armazenadas no repositório centralizado.
Data Mart• Subconjunto do data warehouse global.
• Mini data warehouse em escala menor (departamental, regional ou funcional).
• Permite construção bottom-up de data warehouse.
Principais Vantagens - DWPrincipais Vantagens - DW
Altíssima performance de pesquisa corporativa
• não necessariamente dos dados mais recentes
Não interfere nas OLTP’s dos BD’s operacionais
• pesquisas complexas apenas no DW
Dados armazenados no DW podem ser manipulados de
forma arbitrária
• podem ser resumidos, reestruturados, redimensionados
Fonte de informações estratégicas
• conhecimento do negócio
• vantagem competitiva
• tomada decisões etc.
Questões em armazenamento Questões em armazenamento de dados não volátilde dados não volátil
Aspecto temporal e histórico• A dimensão mais importante: tempo
• Armazenar a “evolução dos dados”
• Prazo médio de armazenamento de dados: 5 a 10 anos
Necessidade de agregação ao longo da dimensão tempo• DW - BD histórico
• Característica determinante do DW: “time variant”
• DW - série sofisticada de “snapshots”
• Um caso especial de BD temporal
Hierarquias temporais múltiplas• Agregação e manipulação de múltiplas hierarquias temporais
• Hora, minuto, dia, semana, quinzena, mês, bimestre, ano etc
Estrutura cíclica
Banco de Dados Temporais: Banco de Dados Temporais: definição e motivaçãodefinição e motivação
Definição: • BD Temporal é aquele que é “time dependent” (time varying),
pois deve suportar aspectos de tempo.
Dados econômicos e financeiros (empresas, bancos etc) dependem de tempo
Informações sobre estoque, custo e venda de produtos têm variação temporal
Dados na área de saúde
Operações em telecomunicações
Sistemas de Transporte
Atividades que produzem massas de dados regularmente
Ontologias temporais e aplicações p/ BDOntologias temporais e aplicações p/ BD Baseados em pontos
• Instante: “time point”• Intervalo: conjunto de pontos• Predominante no contexto de BD
Baseados em intervalos• Instante: intervalo mínimo• intervalo: delimitado por designadores
Cálculo de eventos:• Limitações do cálculo de situações• Representação de mudanças• Dimensão espacial e temporal
Tempo de validade • tempo durante o qual um fato era realmente verdadeiro
Tempo de transação• tempo durante o qual o fato estava presente no BD como dado armazenado
Modelo de dados e Modelo de dados e linguagens de consultas temporaislinguagens de consultas temporais
Suportam aspectos relacionados a tempo
• HRDM (Historical Relacional Data Model) Muito influente Suporta domínio temporal único, discreto e infinito Suporta dimensão de tempo única Álgebra originada da álgebra relacional com redefinição operadores Álgebra não consegue expressar consultas temporais indutivas
• TSQL2 Derivada do SQL2 Não possui semântica formal Suporta tempo de validade e de transação Suporta granularidade múltipla de tempo Modelo de dados baseado em pontos
Modelo de dados e Modelo de dados e linguagens de consultas temporaislinguagens de consultas temporais
• TQuel Derivada do Quel Possui semântica formal Suporta domínio temporal único, discreto, infinito e multi-nível Suporta duas dimensões de tempo: tempo de validade e de transação Variação da representação de timestamp Modelo de dados baseado em pontos Não consegue expressar consultas temporais indutivas
• Backlogs Suporta domínio temporal único, discreto e infinito Duas dimensões de tempo: tempo de validade e tempo de transação
• Outras: HQuel / HTQuel / TempSQL / TBE
BD Temporal em TSQL2BD Temporal em TSQL2
Tipos temporais SQL92• Date
• Time
• Timestamp
• Interval
Tipos/cláusulas temporais adicionais TSQL2• Period
• Valid
• Cast
• Nobind
Exemplo de BD Temporal em TSQL2Exemplo de BD Temporal em TSQL2
Definição da relação Prescription• CREATE TABLE Prescription (Name CHAR(30), Physician CHAR(30),
Drug (CHAR(30), Dosage CHAR(30), Frequency INTERVAL MINUTE)
AS VALID STATE DAY AND TRANSACTION
Modifique a dosagem p/ 50 mg de março a maio:• UPDATE Prescription
SET Dosage TO ´50 mg´
VALID PERIOD´[1996-03-01 - 1996-05-30]´
WHERE Name = ´Melanie´ AND Drug = ´Proventil´
BD Temporais e Data WarehouseBD Temporais e Data Warehouse
Áreas distintas, porém fortemente relacionadas
DW integra informações de diversas fontes heterogêneas,
montando BD históricos.
No DW das várias dimensões analisadas, tempo é a mais
importante.
Dimensão tempo utilizada para detectar características
na evolução dos dados.
Data Warehouse utiliza tecnologia de BD Temporal?
Modelagem e remodelagem Modelagem e remodelagem de dados para Data Warehousede dados para Data Warehouse
DTS - Data Transformation Services (Microsoft OLAP)
• mais um conjunto de ferramentas ad-hoc de auxílio à transformação
de dados do que ambiente integrado de modelagem e remodelagem
• permite transformar dados via caixas de diálogo ou scripts
• dados de origem podem ser de diferentes bases de dados, tabelas,
textos ou uma query
• permite controle de erros, restrições, exceções etc
• mapeamento/tratamento da informação direto e interativo
• permite conversões entre tipos de dados
• exige casamento de tipos de dados origem e destino
• transformações podem ser testadas e acompanhadas
Carga de dados no Data WarehouseCarga de dados no Data Warehouse
On-Demand-Integration (query-driven)
• Para uma dada query: encontrar fontes de informação relevantes
gerar subquery para cada fonte
integrar resultados obtidos e repassá-los à aplicação.
• “Sistemas Virtuais”
In-Advance-Integration (analysis-driven)
• Informações relevantes extraídas antecipadamente das fontes.
• Filtradas, consolidadas e armazenadas num BD separado.
• Consultas efetuadas diretamente neste BD.
• “Sistemas Materializados”
Arquiteturas de Data Warehouse Arquiteturas de Data Warehouse 1-Estrutura independente (sem 1-Estrutura independente (sem
arquitetura)arquitetura) Consulta direta às fontes (ineficientes) Informações dispersas Menor qualidade dos resultados Mediadores complexos Implementação mais rápida
BD Operacionais“Data Warehouse”
Arquiteturas de Data WarehouseArquiteturas de Data Warehouse2-Estrutura de Data Marts dependentes2-Estrutura de Data Marts dependentes
BD Operacionais Data Warehouse Data Marts
Arquiteturas de Data WarehouseArquiteturas de Data Warehouse2-Estrutura de Data Marts dependentes2-Estrutura de Data Marts dependentes
Data Marts são subconjuntos do DW
DM recebem seus dados do DW
Orientado por áreas (assuntos)
Integrado (inconsistências são eliminadas)
Time-Variant
Não volátil
Atualização dos dados• Wrappers: tradutores de informação
• Monitor: detecta mudanças
• Integrador: trata e instala informação no DW
Arquiteturas de Data WarehouseArquiteturas de Data Warehouse3-Estrutura de Barramento de DW3-Estrutura de Barramento de DW
BD Operacionais Data Warehouse
Data Mart
Data Mart
Data Mart
DW Bus
Arquiteturas de Data WarehouseArquiteturas de Data Warehouse3-Estrutura de Barramento (Bus) de DW3-Estrutura de Barramento (Bus) de DW
Cada Data Mart é parte do DW
Data Marts são conectados através do bus do DW
Repositórios regionais, funcionais, departamentais
DW busca informações diretamente nos DM’s
Construção bottom-up do DW
Controle centralizado
Flexibilidade localizada
Data Marts são mais ágeis
Integração de Dados: motivações e Integração de Dados: motivações e questõesquestões
Problema geral independente de warehousing Heterogeneidade: de modelos e de implementação Divergências: protocolo, arquitetura, descrição de dados,
níveis de abstração, significado preciso dos termos Fontes ricas e complexas de informações:
• Sistemas Legados• Internet• Bancos e Organizações Financeiras• Bancos de Dados Comerciais e Estatísticos• Agências Governamentais
Necessidade de meios para acesso transparente a fontes diversificadas
Requer meta-dados ou conhecimento que pode ser aproveitado para fornecer informação mais rica
Wrapper/Monitor/IntegradorWrapper/Monitor/Integrador
Fonte Fonte Fonte
Wrapper/Monitor
Integrador
DataWarehouse
Wrapper/Monitor Wrapper/Monitor
Mediadores para Integração de DadosMediadores para Integração de Dados
Middleware inteligente associa fontes de dados e programas aplicativos.
4 passos:• Analisa consulta
• Identifica fontes de informação relevantes
• Gera as sub-consultas para essas fontes
• Integra resultados em uma resposta a consulta inicial
Implicações:• Tendência de descentralização
• Cooperação intersistemas
• Grande quantidade de dados disponíveis
• Avanços tecnológicos na comunicação de dados
MediadoresMediadores
BD 1 BD 2 BD 3
M e d i a d o r
Aplicações
Exemplo de Esquemas Locais e do Exemplo de Esquemas Locais e do MediadorMediador
EMP_RIO EMP_FOR
sal1 nome1 tel1 sal2 nome2 email2
BD1 BD2
ESQUEMAS LOCAIS:
EMP_M
ESQUEMA DO MEDIADOR
sal nome tel
localemail
Assertivas de Correspondência Assertivas de Correspondência (Mediadores)(Mediadores)
Assertivas de Correspondência de Tipos:• AC1: EMP_M EMP
• AC2: EMP_M Gen(EMP_RIO, EMP_FOR)
• AC3: EMP_RIO EMP_M [local = ‘rio’]
• AC4: EMP_FOR EMP_M [local = ‘for’]
Assertivas de Correspondência de Atributos:• AC5: nome nome1
• AC6: nome nome2
• AC7: sal sal1
• AC8: sal sal2
• AC9: tel tel1
• AC10: email email2
• AC11: local [EMP_RIO: ‘rio’; EMP_FOR: ‘for’]
Exemplo de Consulta (Mediadores)Exemplo de Consulta (Mediadores)
Emp_Rio Emp_For
Tradutor 2Tradutor 1
Mediador
Select nome, tel, sal, emailfrom EMP_Mwhere nome = “Roberto”
nome1 = “Roberto”sal1 = “1000”tel1 = “344-9080”
nome2 = “Roberto”sal2 = “2000”email2 = “rob@net”
nome = “Roberto”tel = “344-9080”sal = “3000”email= “rob@net”
Data Warehouse - Telecom ItaliaData Warehouse - Telecom Italia Maior provedor telecomunicações italiano e o 5o no mundo Atua em 40 paises com 90.000 empregados Motivação: proliferação de BD’s legados - grande overhead 1993: iniciou seu projeto estratégico Foco: clientes, fornecedores, rede, administração 1996: projeto concluído integrando 48 BD’s operacionais Estratégia de antecipação de problemas p/ o DW:
• extração / limpeza / reconciliação Desenvolvimento de ferramentas e metodologias próprias Conclusões da Telecom Italia:
• Integração é um processo incremental• envolvimento de todos os parceiros tecnológicos• estrutura dedicada para gerenciamento da implementação do DW• Agendamento processos de extração/transformação são críticos