Bancos de Dados Pós-Relacionais - Presentation Transcript
Bancos de Dados Pós-Relacionais Bernadette Farias Lóscio DI-UFPE
Plano de Aula
Integração de BDs com outras áreas
Visão dos sistemas
Visão das aplicações
Requisitos das novas aplicações
Limitações dos BDs Relacionais
Sistemas de BDs Pós-Relacionais
Banco de Dados x KDD
Integração de BD com outras áreas (Sistemas de BDs) Sistemas de Bancos de Dados Sist. de Suporte a Decisão Outras áreas Linguagens de Programação Inteligência Artificial Sistemas Distribuídos & Internet Temporal Espacial Espaço Temporal BD Multimídia BD Dimensional DW BD Distribuídos BDOO BDDOO BD Ativo BDD BDD Ativo BDOO Ativo BD de Restrições BD OO Espacial
Integração de BD com outras áreas (Aplicações) Linguagens de Programação Inteligência Artificial Sist. de Suporte a Decisão Outras áreas Sistemas Distribuídos & Internet Aplicações de Bancos de Dados BD Espacial DW BDOO BD Distribuídos BD Temporal BD Multimídia DW BDD BD Ativo Comércio Eletrônico OLAP Monitoramento Digital Publishing Restrições integridade Diagnóstico Data Mining CAD/CAM/SIGs
Requisitos das Novas Aplicações de BD
Visualização dos dados:
Multidimensional
Multigranular
Integração entre dados e programas:
Integrar funcionalidades comuns de muitas aplicações de BDs no SGBD
Integração com sistemas de raciocínio e representação de conhecimento
Integração com linguagens de programação
Requisitos das Novas Aplicações de BD
Recuperação de Informações através da Internet/Intranet:
Distribuição dos dados
replicação e reconciliação
interoperabilidade
semântica do esquema
linguagem de consulta
autonomia
confiabilidade/origem
segurança
Integração de Informações Heterogêneas
Requisitos das Novas Aplicações de BD
Manipulação de objetos complexos:
Multimídia e Objetos n-dimensionais
Novos tipos de Dados
Consultas multiresolução
Suporte para Interface com o usuário
Objetos reais com estrutura
e comportamento
Resumindo...
Abstrações para facilitar a interação DADOS + CONSULTAS + USUÁRIO
Limitações dos BDs Relacionais
Não possuem mecanismos para a definição e manipulação de tipos de dados complexos
Não suportam itens de dados de grandes tamanhos
Permitem apenas consultas com noções precisas
Não permitem consultas ad-hoc
Baixa performance e dificuldades de implementação para aplicações mais complexas
“ Pontos Fortes” dos BDs Relacionais
declaratividade
robustez
simplicidade (usa poucos conceitos poderosos)
fundamentos formais
tecnologia madura e eficiente para:
oferecer persistência
garantir segurança
gerenciar memória secundária
controlar transações
Extensões ou novos modelos devem oferecer:
Sistemas de BDs Pós-Relacionais
BD x DSS:
BD Multidimensional
Data Warehouse/Data Mart
BD Temporal
BD x Aplicações:
BD Ativo
BD Orientado a Objetos
BD Objeto-Relacional
BD x IA:
BD Dedutivo
BD Dedutivo OO
BD de Restrições
BD x Sist. Distribuídos/Internet:
BD Distribuídos
BD Federados
Arquitetura de Mediadores
BD x Agentes
BD Multimídia
BD x SIG
BD Espacial
BD Multidimensional
Dimensões: diferentes perspectivas de visualização dos dados (podem ser compostas por múltiplos níveis)
Elementos (ou membros): posições segundo uma dimensão
Medidas : conteúdo de uma célula
Armazena os dados em arrays multidimensionais com um número fixo de dimensões
Permite uma visualização multidimensional e multigranular dos dados
Tempo Produto P1 P2 P3 P4 Jan./99 Fev./99 BD x DSS 5 1 6 8 FORTALEZA SOBRAL NORDESTE CEARÁ SUDESTE RIO DE JANEIRO PERNAMBUCO SÃO PAULO ...
Problemas de desempenho (unir em um mesmo ambiente os BDs corporativos operacionais e o DW)
Contém dados extraídos ( selecionados, depurados e integrados ) do ambiente de produção da empresa, sendo otimizado para processamento de consultas ad-hoc e não para transações
BD x DSS
Data Mart
É uma implementação de um DW no qual o escopo dos dados é limitado, contém dados agregados apenas a nível departamental
Uma maneira de construir um DW é através da criação e integração progressiva de data marts
Problemas:
escalabilidade em situações onde pequenos data marts iniciais crescem em múltiplas dimensões
integração de dados (diferentes estruturas)
BD x DSS
OLAP (On-Line Analytical Processing)
Processamento e ferramentas voltados para análise de dados típica do suporte à decisão
Os dados são apresentados através de uma visão multidimensional e multigranular
A visão dos dados é independente de como eles estão armazenados (MOLAP x ROLAP)
Eficiente para consultas ad-hoc complexas
Exemplos de consultas:
Quais os produtos que vendem bem?
Qual o "ranking" dos vendedores da Região Nordeste?
BD x DSS
OLAP x OLTP
OLTP
Modelo de dados Relacional
Dados Atômicos
Apenas informações atuais
Orientados ao Processo
Poucos tipos de consultas simples
Atualizações e leituras rápidas
OLAP
Modelo de dados Multidimensional
Dados Agregados
Também informações históricas
Orientados ao Negócio
Grande variedade de consultas complexas
Apenas leitura
BD x DSS
BD Temporais
Bancos de dados temporais apresentam rótulos temporais associados aos dados.
(i) bancos de dados de tempo de transação: associam aos dados o o instante em que foram inseridos no banco de dados;
(ii) bancos de dados de tempo de validade: associam aos dados o seu tempo de validade na realidade modelada;
(iii) bancos de dados bitemporais: associam o tempo de transação e o tempo de validade
Aspectos temporais podem ser: pontuais, intervalos de tempo ou relacionamentos abstratos (antes, depois, durante,...)
BD x DSS
BD Ativo
SGBD capaz de responder automaticamente a eventos ocorrendo:
internamente (ex: atualizações no BD, restrições de integridade)
externamente (ex: dispositivos de monitoramento, falhas de hardware)
Capaz de monitorar e reagir a circunstâncias específicas de relevância para a aplicação (o comportamento reativo da aplicação é colocado dentro do SGBD)
E vento: descreve um acontecimento C ondição: examina o contexto onde o evento ocorreu A ção: descreve as tarefas que devem ser executadas BD x Aplicações
BD Ativo (cont.)
Vantagens:
Não acarreta mudanças nas aplicações
Incrementa a funcionalidade dos SGBDs
Atende aos requisitos de restrições temporais das aplicações
SGBD Ativo BD x Aplicações Consultas e atualizações Eventos externos Especificação de eventos e condições a serem monitoradas Ações
BD Ativo - Exemplo
Empregado(#emp, nome, salario, #gerente)
Gerente(#gerente, #depto)
Regra1:
on update to salario of empregado
if new.salario > update.gerente.salario
do abort
Regra2:
on update to salario of empregado or
insert to empregado
if new.salario > update.gerente.salario
do instead <informe o administrador do sistema>
Regras podem ser disparadas e
executadas da seguinte forma:
immediate
deferred
detached
BD x Aplicações
Regras Ativas - Aplicações
Manutenção:
Restrições de Integridade
Visões materializadas
Descrever o comportamento/semântica das aplicações
monitorar vendas em um BD para controle de estoque
Em conjunto com dispositivos de monitoramento, podem ser usadas para registrar e responder a situações externas ao BD
aplicações médicas
sistemas de monitoramento de tráfego aéreo
BD x Aplicações
BD Orientado a Objetos (BDOO)
Combina o paradigma OO com a tecnologia de BD
Um SGBDOO é um SGBD com um modelo de dados OO
Os requisitos para suportar um modelo de dados OO são:
identidade de objetos
objetos complexos
classes
encapsulamento
herança
overriding, overloading e
ligação dinâmica
extensibilidade
BD x Aplicações
Funcionalidades dos BDs:
dados persistentes
gerenciamento de grandes conjuntos de dados
gerenciamento de memória secundária
gerenciamento de transações
linguagem de consulta declarativa
BD Orientado a Objetos (cont.)
OO em BD combina conceitos de várias áreas:
Linguagens de Programação: tipos de dados abstratos e encapsulamento
Tecnologia de Software: extensibilidade e reusabilidade de código e o princípio da modularização
Modelagem de dados: relações aninhadas ou generalizações do modelo relacional, juntamente com os modelos de dados semânticos
BD x Aplicações
Companhia Subsidiária Pessoa Empregado nome_comp localização #companhia qualificação salário nome idade domicílio Veículo produz é-um modelo fabricante cor Exemplo - Modelo ER possui administra trabalha rua gerencia possui_frota #pessoa 1 1 1 1 n 1 1 n n 1 n 1 1 1 1 nome_sub rua localização
classe3:
Endereço: [
rua: String,
localização: String]
classe4:
Pessoa: [
nome: String,
idade: Integer;
domicilio: Endereço,
Frota: {Veiculos}]
classe5:
Empregado is-a Pessoa : [
qualificações: {String},
salário: Integer;
Familiares: {Pessoa}]
BD Orientado a Objetos - Exemplo
classe1:
Companhia: [
nome: String,
matriz: Endereço ;
Subsidiarias: {Subsidiaria},
Presidente: Empregado ]
classe2:
Subsidiaria: [
nome: String,
escritório: Endereço;
Gerente: Empregado,
Empregados: {Empregado}]
BD x Aplicações
BD Objeto Relacional (BDOR)
Combina os benefícios do modelo Relacional com a tecnologia de Orientação a Objetos
O modelo de dados OR é uma extensão do modelo Relacional:
permite estender o banco de dados com tipos e funções específicas da aplicação
A linguagem de consulta OR (SQL3) é uma extensão da linguagem SQL para suportar o modelo de objetos
As extensões incluem consultas envolvendo objetos, atributos multivalorados, TADs, métodos e funções como predicados de busca em uma consulta
BD x Aplicações
BD Objeto Relacional - Exemplo CREATE TYPE Endereço ( RuaNo VARCHAR(60), Cidade VARCHAR(40), ); CREATE TYPE Fornecedor ( CodFornec CHAR(4) NomeFornec VARCHAR(40) EndFornec endereço, ); CREATE TYPE empregado ( nome CHAR(20), salário DECIMAL(10,2), ); CREATE TABLE Fornecedor OF Fornecedor CREATE TABLE empregados OF Empregado
CREATE TYPE Companhia
(
NomeComp String,
Matriz endereço,
Subsidiarias SET ( REF (Subsidiaria)),
Presidente REF (Empregado),
);
CREATE TYPE Subsidiaria
(
NomeSub String,
Escritório endereço,
Empregados SET ( REF (Empregado)),
);
Criação de Tipos: Criação de Tabelas: BD x Aplicações
BD Dedutivo (BDD)
Utiliza regras para deduzir ou inferir informações adicionais a partir dos fatos armazenados no BD
Um BDD possui dois tipos principais de especificações:
Fatos (são similares as tabelas dos BDs Relacionais)
Regras (são similares as visões em BDs Relacionais)
Os requisitos para suportar dedução são:
linguagem declarativa
predicados
variáveis lógica
unificação de termos com variáveis
mecanismo de dedução
BD x IA
Funcionalidades dos BDs:
dados persistentes
gerenciamento de grandes conjuntos de dados
gerenciamento de memória secundária
gerenciamento de transações
linguagem de consulta declarativa
BD Dedutivo (cont.)
A linguagem Datalog é um subconjunto de Prolog utilizada em sistemas de BDD para definir regras e fatos
A notação usada em Datalog é baseada em predicados com um número fixo de argumentos usados para definir fatos e regras
se todos os argumentos de um predicado são constantes, então o predicado estabelece que um certo fato é verdade
se um predicado tem variáveis como argumentos, então ele é considerado uma consulta , ou parte de uma regra ou restrição
Consultas superior(paula, Y)? superior(paula, maria) superior(joão, maria) BD x IA Uma consulta pode retornar: 1. As diferentes combinações de constantes que, quando unificadas às variáveis, podem tornar o predicado verdadeiro 2. Verdadeiro ou falso
BD Dedutivo Orientado a Objetos (BDDOO)
BDD:
alta capacidade de inferência
fundamentos formais
pobre poder de modelagem
BDOO:
rica capacidade de modelagem
alta extensibilidade
falta de consenso sobre o modelo de dados
baixa capacidade de inferência
fundamentos não tão bem formalizados quando os de BDD
BD x IA Problema: Um BD consiste em um conjunto de retângulos em um plano, e queremos computar os pares de retângulos distintos onde existe uma interseção (a 1 ,d 1 ) (c 1 ,d 1 ) (a 1 ,b 1 ) (c 1 ,b 1 ) (a 2 ,d 2 ) (c 2 ,d 2 ) (a 2 ,b 2 ) (c 2 ,b 2 )
Banco de Dados de Restrições - Exemplo
Representação com Restrições:
R (z,x,y)
Tupla generalizada: (z =n ( a x c) ( b y d))
BD x IA Problema: Um BD consiste em um conjunto de retângulos em um plano, e queremos computar os pares de retângulos distintos onde existe uma interseção (a 1 ,d 1 ) (c 1 ,d 1 ) (a 1 ,b 1 ) (c 1 ,b 1 ) (a 2 ,d 2 ) (c 2 ,d 2 ) (a 2 ,b 2 ) (c 2 ,b 2 )
BD Distribuídos Fortaleza São Paulo Salvador Banco de Dados 1 Brasília Banco de Dados 2 Banco de Dados 4 Banco de Dados 3 BD x Internet/Sist.Distribuídos Rede de Comunicação SGBD Distribuído
BD Distribuídos
Classificação quanto ao grau:
de Heterogeneidade
de Autonomia Local
de Transparência de Distribuição/Integração
Enfoques para Integração de Informações:
Materializado :as informações relevantes são extraídas, filtradas e integradas previamente, de formas a agilizar as consultas
Virtual: as informações são extraídas das fontes de informação somente quando requisitadas
BD Federados
Mediadores
BD x Internet/Sist.Distribuídos
BD Federados - Arquitetura Esquema Exportado 1 Esquema Exportado 2 Esquema Exportado n Esquema Componente 1 Esquema Componente n Esquema Externo 1 Esquema Externo 2 Esquema Externo n Esquema Local 1 Esquema Local n DBS Componente 1 DBS Componente n … … … … … BD x Internet/Sist.Distribuídos Enfoque Fortemente Acoplado Esquema Global
Mediadores - Arquitetura Mediador 1 Mediador 2 Tradutor 1 Tradutor 2 Tradutor 3 BD1 BD2 BD3 BD x Internet/Sist.Distribuídos Enfoque Fracamente Acoplado Consultas através de mediadores: 1. As consultas são submetidas ao sistema, via mediador , e este as transforma em subconsultas a serem enviadas às bases de dados. 2. As subconsultas geradas pelo mediador devem ser traduzidas para linguagens de consultas de cada SGBD componente. 3. Os resultados das consultas são traduzidos e a resposta é devolvida ao usuário
BD x Agentes
Dedução embutida
Atualização de DW/Data Mart
Personalização de interfaces
Variedades de aplicações integrando BD com Internet
Os agentes podem ter diferentes funções:
notificação
mediação
aquisição de conhecimento
BD x Internet/Sist.Distribuídos
BD Multimídia
Armazenam informações que se originam de diferentes tipos de mídia: textos, imagens, áudio e vídeo
Os requisitos para suportar dados multimídia são:
Novos tipos de Dados
Qualidade do Serviço
Consultas multiresolução
Suporte para Interface com o usuário
BD x Internet/Sist.Distribuídos
BD Multimídia - Aplicações
Gerenciamento de documentos
os dados podem incluir projetos de engenharia, registros médicos, etc
Disseminação do conhecimento
bibliotecas digitais, livros eletrônicos e repositórios de informação
Monitoramento e controle em tempo real
juntamente com BD Ativo pode ser muito útil para o controle de operações nucleares, pacientes em UTIs, sistemas de transporte, etc
BD x Internet/Sist.Distribuídos
BDs Espaciais
Oferecem tipos de dados espaciais em seu modelo de dados e linguagem de consulta
Estes sistemas devem:
combinar informações geométricas e temáticas
ser o mais geral possível
ter uma semântica formalmente definida
ser independente de SGBD, mas cooperativo com qualquer SGBD
usar técnicas de implementação eficientes para operações em objetos n-dimensionais
ter uma interface visual para os usuários
Aplicações:
Sistemas de Informação Geográficas
CAD/CAM
Robótica
BD x SIG
Banco de Dados x KDD
Vantagens da aprendizagem a partir de BDs:
Os dados são armazenados de maneira mais ou menos estruturada
Algum conhecimento do domínio é implicitamente armazenado no BD
Ferramentas de consultas, manipulação de dados e transações estão disponíveis
O número de BD com dados aplicáveis as técnicas de mineração é grande e continua crescendo!
Banco de Dados x KDD
Restrições da aprendizagem a partir de BDs:
O volume de dados é tipicamente muito grande
Os dados podem conter ruídos e informações incompletas
Os dados não foram coletados com o propósito de descoberta de conhecimento
Conhecimento pode ser descoberto a partir de diferentes fontes de dados
Dados relacionais
Dados OO
Dados textuais
Dados temporais
Dados espaciais
Dados na Web
Dados de DW
Bibliografia
Database research: achievements and opportunities for the 21st century
The emergence of post-relational databases by Richard Currier, Chairman - Strategic Marketing - April 1997
The Asilomar Report on Database Research
Fundamentals of Database Systems
Database Issues in Knowledge Discovery and Data Mining
Bibliografia
Logic and databases: a 20 year retrospective
A survey of research on deductive database systems
1 comments
Comments 1 - 1 of 1 previous next Post a comment