Spatial Data Warehouse Por: Camilo Porto. Apresentação  Revisando esquema estrela... limitações  Spatial Data Warehouse (SDW) Um modelo conceitual Estendendo.

Slides:



Advertisements
Apresentações semelhantes
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
Advertisements

Banco de Dados Prof. Antonio.
Resumo 1.1) Introdução 1.2) Abordagem Convencional de Arquivos
O Modelo E-R Definição: Características
Data Warehouse Tuning O que é um Data Warehouse? Índices Bitmap
Maurício Edgar Stivanello
OLAP – Motivação e conceitos
Sistema Gerenciador de Banco de Dados SGBD
Subconsultas ou Consultas Aninhadas
SQL – Consultas Básicas
SQL – DML Consulta a dados de uma tabela
Operadores Especiais da SQL
Ferramentas CASE ERwin
Material III-Bimestre Wagner Santos C. de Jesus
7.1 © 2004 by Pearson Education 7 7 ADMINISTRAÇÃO DOS RECURSOS DE DADOS Capítulo.
Data Warehouse Um Data Warehouse é um armazém de dados, contendo dados extraídos do ambiente de produção da empresa. De acordo com INMON (1997), um.
Gerenciamento dos Recursos de Dados
Eduardo Costa Gabriel Cypriano Rodrigo Calhau
FORMAS DE REPRESENTAÇÃO QUE SERVEM PARA DESCREVER AS ESTRUTURAS DAS INFORMAÇÕES CONTIDAS EM UM BD. Modelos de Dados.
Modelagem Dimensional do Data Warehouse
Prof. Alfredo Parteli Gomes
Comandos de SQL Excel VBA II.
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
I- Introdução A Evolução dos Modelos de Dados e dos Sistemas de Gerência de Banco de Dados.
Banco de Dados Avançado - Prof.ª Valeria Times
Desenvolvimento de Sistemas OLAP
Desenvolvimento de Sistemas OLAP
Bancos de Dados Espaciais
Prof. Kelly E. Medeiros Bacharel em Sistemas de Informação
BEM-VINDO AO JOGO DAS MALETAS!
Tecnologia da Informação
Gestão de Base de Dados Este trabalho foi realizado por: André Andrade
Business Intelligence:
BI - Conceito É o conjunto de conceitos e metodologias que, fazendo uso de acontecimentos (fatos) e sistemas baseados nos mesmos, apóia a tomada de decisões.
Banco de Dados Avançado
Projeto de Banco de Dados
Data Mining: Conceitos e Técnicas
Desenvolvendo um script SQL
Introdução a Banco de dados
J OÃO C ARVALHO Data Warehouses. D EFINIÇÃO Um Data Warehouse é um sistema de computação utilizado para armazenar informações relativas às actividades.
A abordagem de banco de dados para gerenciamento de dados
REVISÃO Comandos SQL - DML SELECT * FROM ?.
Banco de Dados Aplicado ao Desenvolvimento de Software
Cristina Paludo Santos URI – Campus de Santo Ângelo
Campus de Caraguatatuba Aula 2: Introdução a Tecnologia de BD
Introdução a Banco de Dados Aula 04
ASSUNTO Facilitando a Tomada de Decisão em um Ambiente Móvel Mohamed A. Sharaf Panos K. Chrysanthis Felipe Menezes Cardoso COPIN – UFCG Banco de Dados.
©Silberschatz, Korth and Sudarshan (modificado)4.1.1Database System Concepts Capítulo 4: SQL Estrutura básica Operações com conjuntos Funções de agregação.
Uma proposta para OLAP ontológica Adriana Ribeiro.
SQL Server Comando PIVOT.
CIn/UFPE – Banco de dados Avançado - Profs. Robson Fidalgo e Valéria Times  1 Banco de Dados Avançado Banco de Dados Multidimensionais Introdução a linguagem.
IEC Banco de Dados I Aula 04 – SQL (II) Turmas: Sistemas de Informação Professora: André Luiz da Costa Carvalho
CIn/UFPE – Banco de dados Avançado - Profs. Robson Fidalgo e Valéria Times  1.
1 Structured Query Language (SQL) 4 SQL é uma linguagem normalizada (ANSI) para consultas e actualizações de bases de dados relacionais.
Uso de Ontologias em Data Warehousing
Uma Proposta para Bancos de Dados Categoriais Rafael C. Pinto.
Arnaldo Rocha1995 BANCO DE DADOS Modelo Relacional.
B. I., DATAMINING e OLAP Henrique Liduario Joab Esequiel
Projeto de Banco de Dados
BANCO DE DADOS MULTIDIMENSIONAIS CONSULTANDO O CUBO DE DADOS (MDX – SQL SERVER 2008) Banco de Dados Avançado - Prof.ª Valeria Times Andresson Firmino.
UCSal – Bacharelado em Informática Banco de Dados Profa. Semíramis Assis
Modelagem Dimensional do Data Warehouse
UCSal – Bacharelado em Informática
1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados.
Janeiro/2013 Ceça Moraes Data Warehouse Janeiro/2013 Ceça Moraes
1 Database Systems, 8 th Edition Sistemas de Banco de Dados: Projeto, Implementação e gestão Oitava Edição Capítulo 2 Modelo de Dados.
Copyright © 2011 Ramez Elmasri and Shamkant Navathe slide 1 Tópicos  Introdução  Um exemplo  Características da abordagem de banco de dados  Vantagens.
INTELIGÊNCIA EMPRESARIAL Aula 9 - Modelagem de Data Warehouse.
INTELIGÊNCIA EMPRESARIAL Aula 8 - Metadados e Operações OLAP.
Programação para Internet Aula 12 SQL (Comandos de Consulta ao BD)
Transcrição da apresentação:

Spatial Data Warehouse Por: Camilo Porto

Apresentação  Revisando esquema estrela... limitações  Spatial Data Warehouse (SDW) Um modelo conceitual Estendendo o esquema estrela  Implementação de um SDW Tipos e tabelas MapWarehouse  Avaliação de Performance  Conclusões

Revisando o Esquema Estrela  Entidades Tabela de fatos Dimensões Hierarquia de dimensões  Funções de Agregação Soma Média  OLAP Roll-up / Drill down Slice

Revisando o Esquema Estrela Vendas(quantidade, faturamento), por data, por produto e por fornecedor.

Limitações  Vamos descobrir as limitações do esquema estrela com um Caso de Uso. Supervisão de mortalidade de doenças nos departamentos de saúde da França (Bimonte 2005) Dados de mortalidade inclui:  Número de mortes registradas  Causa da doença  Localização da morte  Sexo do paciente  Grupos de 5-5 anos de idade

Limitações Deseja-se saber o total de mortes ocorridas (operador de agregação = SQL SUM())

Limitações  Outro Caso de Uso semelhante... A medida da tabela de fatos é um campo espacial Qual função de agregação utilizar?

Limitações  Campos espaciais freqüentemente estão presentes em aplicações.  São de grande utilidade no apoio ao processo de tomada de decisão  Maior facilidade de análise Enxergar resultados visualmente (mapas)

Limitações  Como representar campos geométricos (dimensão espacial) no esquema estrela convencional?  Como representar hierarquias espaciais?  Quais funções de Agregação utilizar em medidas espaciais? Medidas espaciais incluem, também, atributos não espaciais.

Exemplificando  No segundo Caso de Uso, como agregar a medida Departamento(nome, #hospitais, geometria)? Nome – não se agrega (não há semântica) #hospitais e geometria – usa-se soma e união  Dependência semântica de operadores  Uso de soma => uso de união E se for usado o operador média(#hospitais)??

Limitações  Faz-se necessário Modelar medidas e dimensões como entidades complexas  Vários atributos de vários tipos como uma única medida/dimensão  Dar suporte a dependência semântica de operadores e atributos  Com modelo relacional... Inviável!

Spatial Data Warehouse

Definição  Data Warehouse que utiliza dimensões, medidas e operadores espaciais  Utiliza API OLAP Espacial (SOLAP)  Oferece relatórios gerenciais espaciais para visualização em formato de mapas

Modelo Conceitual (Bimonte2005)  Entity Schema S =, onde a i é um atributo definido no domínio dom(a i ). S.a i é o i-ésimo atributo da entidade S. A(S) é o conjunto dos atributos a i de S = {a 1,...,a n } Exemplo dept

Modelo Conceitual  Entity Instance Dado um entity schema S= Entity Instance t i =, onde a i є A(S) e val(a i ) є dom(a i ) t i.a j é o valor do j-ésimo atributo da instância t i J(S) é o conjunto de tuplas t i de S. Exemplo t=

Modelo Conceitual  Hierarchy Schema SH h =, onde:  L={S 1,...S n } conjunto de Entity Schema (níveis)  S init é um Entity Schema (base da hierarquia)  ↑ é uma função de ordenação parcial em {L  S init } Exemplo SH : L região ={região, estado}; município ↑ região ↑ estado

Modelo Conceitual  Hierarchy Instance Uma instância de um Hierarchy Schema SH h = é um conjunto de tupla t i, tal que:  Se t i є J(S i ) e S i ↑ S j, então t j є J(S j ) tal que t i ↑ t j

Exemplo: Hierarchy Instance Paraíba Sertão Municipio 1 Municipio 2 Cariri Municipio 3 Municipio 4 Brejo Municipio 5 Municipio 6

Modelo Conceitual  Base Cube Schema SBC cb =, onde  i,j є [1,...,m,f], S i é um Entity Schema e S i != S j  i є [1,...,m] existe um Hierarchy Schema SH i =, tal que S i = S init  δ é função booleana

Exemplo – Base Cube Schema  Conjunto de Entity Schemas, onde cada um é a base de um Hierachy Schema (S init )  SBC mortality_base = < S dia, S sexo, S doencas, S dept, δ >

Modelo Conceitual  Base Cube Instance Dado um SBC bc =, um Base Cube Instance é um conjunto tuplas BC c = {, j=1...p}, tais que:  t i j є J(S i ), e  f m j є J(S f ), e  δ(t 1 j,...,t m j, f m j )=1 Em português, um BC c é um conjunto de Entity Instances (medidas e dimensões) cujo valor de δ é avaliado em 1. Exemplo... (ver Base Cube Schema)Base Cube Schema

Modelo Conceitual  Aggregation Mode É uma tupla Θ =, onde  S a é um Entity Schema  S b é um Entity Schema  Φ é um conjunto de funções de agregação (ad hoc) Φ i Semanticamente, diz-se que S b é derivado de S a, ou seja, a agregação de um conjunto de instâncias de S a gera uma instância de S b. A agregação de um conjunto de val(a i...a k ) (k>0) através de uma função Φ i irá formar val(b i )

Aggregation Mode  Formalmente j є [1..n], val(b j ) = Φ i..p (t i.a 1,...,t i.a k ) Onde,  t i є J(S a )  a r є A(S a ), r=[1..k].  P é o número de instâncias agregadas de S a  Com isso é possível modelar medidas como entidades complexas, desde que se defina uma função de agregação “semanticamente correta”.  Exemplo: como agregar a entidade depto ?

Exemplo - Aggregation Mode

Modelo Conceitual  Cube Schema É uma tupla SC c =, onde:  SBC cb = é um Schema Base Cube  L é um conjunto de Entity Schemas S i tal que S i є L, existe S bi є {S b1,...,S bm } tal que S bi ↑ S i ou S bi = S i, e Existe S k є L tal que S bi ↑ S k  Θ f é um Aggregation Mode  δ é uma função booleana δ : J(S b1 x... x S bm x S af → {0,1}

Modelo Conceitual  Cube Instance Uma instância de um Cube Schema SC c = é um conjunto de tuplas C c tal que  C c = {, j=1...p}, onde S i є L t i j є J(S i ) f m j є J(S af ), e δ(t 1 j,...,t n j, f m j ) = 1

Base Cube X Cube  Um Cube é um Base Cube após a aplicação da função de agregação. Por exemplo, após um roll-up ou drill- down.

MapWarehouse - Implementação OR de SDW (Sampaio 2006)

Modelo da Aplicação  Trata-se de uma aplicação para auxiliar a gestão da agricultura no estado da Paraíba.  Exibir relatórios de campos agrícolas por tempo, plantação, solo, precipitação e localização.

Esquema Conceitual

Esquema OR

Sobre o MapWarehouse  Mapeamento do modelo conceitual em OR  Implementado sobre o SGBD Oracle 10g  Aplicação 3-camadas Operacional Aplicação WUI  Visualização de resultados em forma de mapas

Sobre o MapWarehouse

Exemplo base  Iremos nos basear em uma possível consulta: Recupere os campos de milho por micro- região(região) e por região(micro-região) do estado da Paraíba, durante o mês de maio de 2003.

Realização da consulta em OR (Select a.Location_ref.Microregion_geometry, SDO_AGGR_UNION(MDSYS.SDOAGGRTYPE(a.CropArea_ref.CropArea_geometry, 0.005)) From AgroDistributionTable a Where a.Plantation_ref.Name = ‘corn’ And a.Time_ref.Month = 5 And a.Time_ref.Year = 2003 And a.Location_ref.State_name = ‘Paraíba’ Group by a.Location_ref.Microregion_geometry) UNION (Select a.Location_ref.Region_geometry, SDO_AGGR_UNION(MDSYS.SDOAGGRTYPE(a.CropArea_ref.CropArea_geometry, 0.005)) From AgroDistributionTable a Where a.Plantation_ref.Name = ‘corn’ And a.Time_ref.Month = 5 And a.Time_ref.Year = 2003 And a.Location_ref.State_name = ‘Paraíba’ Group by a.Location_ref.Region_geometry) Realização de função de Agregação Agregação por referência (restrição Oracle) Melhora performance Roll up X Drill Down

Resultado da consulta Roll-Up: de micro- região...

Resultado Roll-Up:... para Região

Aspectos de Desempenho

Problema de Desempenho  União de Geometrias = tarefa muito onerosa  Exemplo citado Paraíba  223 municípios  23 micro-regiões  4 regiões  1 estado  Supondo uma média de 50 campos de milho por município, e 30 dias por mês. Campos de milho, por mês = 50*223*30 = operações de união!

Formulação do Problema (5s)  Dada uma consulta espacial, quantas operações de agregação espacial são apropriadas para serem pre- computadas, de forma a atender o requisito de tempo de resposta (5s)? (Sampaio 2006)

Resolução do Problema  Baseado no mecanismo de agregação pre-computada de Kimball  Pré computa algumas agregações espaciais (extensão da abordagem de Kimball)  Reescreve consulta para utilizar, de forma adequada, as agregações pre- computadas

Exemplo: Esquema Original

Exemplo Tabela de fatos pré- computada. Derivada da tabela AgroDistributionTable. Note a semelhança entre os nomes dos atributos das tabelas Atributo Agregado

Exemplo Tabela de dimensões pré-computada. Derivada da tabela LocationTable Ausência dos atributos de municípios.

Exemplo: Reescrevendo a consulta (Select a.Location_ref.Microregion_geometry, SDO_AGGR_UNION(MDSYS.SDOAGGRTYPE(a.CropArea_ref.CropArea_geometry, 0.005)) From AgroDistributionTable a Where a.Plantation_ref.Name = ‘corn’ And a.Time_ref.Month = 5 And a.Time_ref.Year = 2003 And a.Location_ref.State_name = ‘Paraíba’ Group by a.Location_ref.Microregion_geometry) UNION (Select a.Location_ref.Region_geometry, SDO_AGGR_UNION(MDSYS.SDOAGGRTYPE(a.CropArea_ref.CropArea_geometry, 0.005)) From AgroDistributionTable a Where a.Plantation_ref.Name = ‘corn’ And a.Time_ref.Month = 5 And a.Time_ref.Year = 2003 And a.Location_ref.State_name = ‘Paraíba’ Group by a.Location_ref.Region_geometry)

Exemplo: Consulta Reescrita (Select a.Location_ref.Microregion_geometry, SDO_AGGR_UNION(MDSYS.SDOAGGRTYPE(a.CropArea_ref.CropArea_geometry, 0.005)) From MicroregionAgroDistributionTable a Where a.Plantation_ref.Name = ‘corn’ And a.Time_ref.Month = 5 And a.Time_ref.Year = 2003 And a.Location_ref.State_name = ‘Paraíba’ Group by a.Location_ref.Microregion_geometry) UNION (Select a.Location_ref.Region_geometry, SDO_AGGR_UNION(MDSYS.SDOAGGRTYPE(a.CropArea_ref.CropArea_geometry, 0.005)) From MicroregionAgroDistributionTable a Where a.Plantation_ref.Name = ‘corn’ And a.Time_ref.Month = 5 And a.Time_ref.Year = 2003 And a.Location_ref.State_name = ‘Paraíba’ Group by a.Location_ref.Region_geometry)

Avaliação de Desempenho  Algoritmo simples, desde que se preserve os nomes dos atributos das tabelas originais  Ganho considerável de desempenho

Avaliação de Desempenho Tempo gasto pela consulta (não) utilizando Spatial Logical Optimization (SLO) Consulta por nº de meses, por ano (série de )

Avaliação de Desempenho Speed up: (tempo gasto ~SLO / tempo gasto SLO)

Conclusão  Inserir medidas e dimensões espaciais em DW requer uma nova modelagem do DW (hierarquias espaciais, medidas espaciais, dimensões espaciais) em níveis conceitual, lógico e físico  Repensar conceitos das operações OLAP para atender Spatial OLAP (SOLAP).

Referências  Bimonte, S., Tchounikine, A., Miquel, M. Towards a Spatial Multidimensional Model. Proceedings of the Data Warehousing and OLAP Conference (DOLAP’05),  Sampaio, M.C., Baptista, C.B., Souza, A.G. Towards a Logical Multidimensional Model for Spatial Data. Proceedings of The Data Warehousing and OLAP Conference (DOLAP’06)

Spatial Data Warehouse Obrigado