0
Bancos de Dados Pós-Relacionais Bernadette Farias Lóscio DI-UFPE
Plano de Aula <ul><li>Integração de BDs com outras áreas </li></ul><ul><ul><li>Visão dos sistemas </li></ul></ul><ul><ul><...
Integração de BD com outras áreas  (Sistemas de BDs) Sistemas de Bancos de Dados Sist. de Suporte  a Decisão Outras áreas ...
Integração de BD com outras áreas  (Aplicações) Linguagens de Programação Inteligência Artificial Sist. de Suporte  a Deci...
Requisitos das Novas Aplicações de BD <ul><li>Visualização dos dados:  </li></ul><ul><ul><li>Multidimensional  </li></ul><...
Requisitos das Novas Aplicações de BD <ul><li>Recuperação de Informações através da Internet/Intranet: </li></ul><ul><ul><...
Requisitos das Novas Aplicações de BD <ul><li>Manipulação de objetos complexos: </li></ul><ul><ul><li>Multimídia e Objetos...
Limitações dos BDs Relacionais <ul><li>Não possuem mecanismos para a definição e manipulação de tipos de dados complexos <...
“ Pontos Fortes” dos BDs Relacionais <ul><ul><li>declaratividade  </li></ul></ul><ul><ul><li>robustez </li></ul></ul><ul><...
Sistemas de BDs Pós-Relacionais <ul><li>BD x DSS: </li></ul><ul><ul><li>BD Multidimensional </li></ul></ul><ul><ul><li>Dat...
BD Multidimensional <ul><ul><li>Dimensões:  diferentes perspectivas de visualização dos dados (podem ser compostas por múl...
BD Multidimensional - Exemplo Loja 5 1 6 8 3 Produto Tempo Impressora MW PCC Tabela relacional BD x DSS Jan/99 Fev/99 Mar/...
Data Warehouse <ul><li>Características: </li></ul><ul><ul><li>Orientado por temas </li></ul></ul><ul><ul><li>Integrado </l...
Data Mart <ul><li>É uma implementação de um DW no qual o escopo dos dados é limitado, contém dados agregados apenas a níve...
OLAP (On-Line Analytical Processing) <ul><li>Processamento e ferramentas voltados para análise de dados típica do suporte ...
OLAP x OLTP <ul><li>OLTP </li></ul><ul><li>Modelo de dados Relacional </li></ul><ul><li>Dados Atômicos </li></ul><ul><li>A...
BD Temporais <ul><li>Bancos de dados temporais apresentam rótulos temporais associados aos dados.  </li></ul><ul><ul><li>(...
BD Ativo <ul><li>SGBD capaz de responder automaticamente a eventos ocorrendo: </li></ul><ul><ul><li>internamente (ex: atua...
BD Ativo (cont.) <ul><li>Vantagens: </li></ul><ul><li>Não acarreta mudanças nas aplicações </li></ul><ul><li>Incrementa a ...
BD Ativo - Exemplo <ul><li>Empregado(#emp, nome, salario, #gerente) </li></ul><ul><li>Gerente(#gerente, #depto) </li></ul>...
Regras Ativas - Aplicações <ul><li>Manutenção: </li></ul><ul><ul><li>Restrições de Integridade </li></ul></ul><ul><ul><li>...
BD Orientado a Objetos (BDOO) <ul><li>Combina o paradigma OO com a tecnologia de BD </li></ul><ul><li>Um SGBDOO é um SGBD ...
BD Orientado a Objetos (cont.) <ul><li>OO em BD combina conceitos de várias áreas: </li></ul><ul><ul><li>Linguagens de Pro...
Companhia Subsidiária Pessoa Empregado nome_comp localização #companhia qualificação salário nome idade domicílio Veículo ...
<ul><li>classe3: </li></ul><ul><li>Endereço: [ </li></ul><ul><ul><li>rua: String, </li></ul></ul><ul><ul><li>localização: ...
BD Objeto Relacional (BDOR) <ul><li>Combina os benefícios do modelo Relacional com a tecnologia de Orientação a Objetos  <...
BD Objeto Relacional - Exemplo CREATE  TYPE  Endereço  ( RuaNo VARCHAR(60), Cidade VARCHAR(40), ); CREATE  TYPE  Fornecedo...
BD Dedutivo (BDD) <ul><li>Utiliza regras para deduzir ou inferir informações adicionais a partir dos fatos armazenados no ...
BD Dedutivo (cont.) <ul><li>A linguagem Datalog é um subconjunto de Prolog utilizada em sistemas de BDD para definir regra...
BD Dedutivo - Exemplo <ul><li>Fatos </li></ul><ul><li>supervisiona(helena, maria) </li></ul><ul><li>supervisiona(joão, luí...
BD Dedutivo Orientado a Objetos (BDDOO) <ul><li>BDD: </li></ul><ul><ul><li>alta capacidade de inferência </li></ul></ul><u...
BD Dedutivo Orientado a Objetos BD x IA <ul><li>Requisitos OO: </li></ul><ul><li>identidade de objetos </li></ul><ul><li>o...
BDDOO - Exemplo <ul><li>A hierarquia é-um: </li></ul><ul><ul><li>empl::person </li></ul></ul><ul><ul><li>student::person <...
BDDOO - Exemplo (cont.) <ul><li>Assinatura de Classes: </li></ul><ul><ul><ul><li>faculty [boss=>(faculty, manager); age=>m...
BDDOO - Exemplo (cont.) <ul><li>Fatos da base (BD extensional) </li></ul><ul><ul><ul><li>bob [name-> “Bob”; age->40; affil...
BDDOO - Exemplo (cont.) <ul><li>Consultas: </li></ul><ul><ul><li>Quem são os empregados de meia idade do departamento CS e...
Banco de Dados de Restrições <ul><li>Generalizam BD Relacionais através de representações finitas de relações infinitas </...
Banco de Dados de Restrições - Exemplo <ul><li>Representação Relacional: </li></ul><ul><ul><li>Tuplas: (n,a,b,c,d) </li></...
Banco de Dados de Restrições - Exemplo <ul><li>Representação com Restrições: </li></ul><ul><ul><li>R (z,x,y) </li></ul></u...
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 Distribuídos <ul><li>Classificação quanto ao grau: </li></ul><ul><ul><li>de Heterogeneidade  </li></ul></ul><ul><ul><li...
BD Federados - Arquitetura Esquema Exportado 1 Esquema Exportado 2 Esquema Exportado n Esquema Componente 1 Esquema Compon...
Mediadores - Arquitetura  Mediador 1 Mediador 2 Tradutor 1 Tradutor 2 Tradutor 3 BD1 BD2 BD3 BD x Internet/Sist.Distribuíd...
BD x Agentes <ul><li>Dedução embutida </li></ul><ul><li>Atualização de DW/Data Mart </li></ul><ul><li>Personalização de in...
BD Multimídia <ul><li>Armazenam informações que se originam de diferentes tipos de mídia: textos, imagens, áudio e vídeo <...
BD Multimídia - Aplicações <ul><li>Gerenciamento de documentos </li></ul><ul><ul><li>os dados podem incluir projetos de en...
BDs Espaciais <ul><li>Oferecem tipos de dados espaciais em seu modelo de dados e linguagem de consulta </li></ul><ul><li>E...
Banco de Dados x KDD <ul><li>Vantagens da aprendizagem a partir de BDs: </li></ul><ul><ul><li>Os dados são armazenados de ...
Banco de Dados x KDD <ul><li>Restrições da aprendizagem a partir de BDs: </li></ul><ul><ul><li>O volume de dados é tipicam...
Bibliografia <ul><li>Database research: achievements and opportunities for the 21st century  </li></ul><ul><li>The emergen...
Bibliografia <ul><li>Logic and databases: a 20 year retrospective  </li></ul><ul><li>A survey of research on deductive dat...
Upcoming SlideShare
Loading in...5
×

Bancos de Dados Pós-Relacionais

2,704

Published on

Published in: Technology
2 Comments
1 Like
Statistics
Notes
No Downloads
Views
Total Views
2,704
On Slideshare
0
From Embeds
0
Number of Embeds
0
Actions
Shares
0
Downloads
132
Comments
2
Likes
1
Embeds 0
No embeds

No notes for slide

Transcript of "Bancos de Dados Pós-Relacionais"

  1. 1. Bancos de Dados Pós-Relacionais Bernadette Farias Lóscio DI-UFPE
  2. 2. Plano de Aula <ul><li>Integração de BDs com outras áreas </li></ul><ul><ul><li>Visão dos sistemas </li></ul></ul><ul><ul><li>Visão das aplicações </li></ul></ul><ul><li>Requisitos das novas aplicações </li></ul><ul><li>Limitações dos BDs Relacionais </li></ul><ul><li>Sistemas de BDs Pós-Relacionais </li></ul><ul><li>Banco de Dados x KDD </li></ul>
  3. 3. 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
  4. 4. 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
  5. 5. Requisitos das Novas Aplicações de BD <ul><li>Visualização dos dados: </li></ul><ul><ul><li>Multidimensional </li></ul></ul><ul><ul><li>Multigranular </li></ul></ul><ul><li>Integração entre dados e programas: </li></ul><ul><ul><li>Integrar funcionalidades comuns de muitas aplicações de BDs no SGBD </li></ul></ul><ul><ul><li>Integração com sistemas de raciocínio e representação de conhecimento </li></ul></ul><ul><ul><li>Integração com linguagens de programação </li></ul></ul>
  6. 6. Requisitos das Novas Aplicações de BD <ul><li>Recuperação de Informações através da Internet/Intranet: </li></ul><ul><ul><li>Distribuição dos dados </li></ul></ul><ul><ul><ul><li>replicação e reconciliação </li></ul></ul></ul><ul><ul><ul><li>interoperabilidade </li></ul></ul></ul><ul><ul><ul><ul><li>semântica do esquema </li></ul></ul></ul></ul><ul><ul><ul><ul><li>linguagem de consulta </li></ul></ul></ul></ul><ul><ul><ul><li>autonomia </li></ul></ul></ul><ul><ul><ul><li>confiabilidade/origem </li></ul></ul></ul><ul><ul><ul><li>segurança </li></ul></ul></ul><ul><ul><li>Integração de Informações Heterogêneas </li></ul></ul>
  7. 7. Requisitos das Novas Aplicações de BD <ul><li>Manipulação de objetos complexos: </li></ul><ul><ul><li>Multimídia e Objetos n-dimensionais </li></ul></ul><ul><ul><ul><li>Novos tipos de Dados </li></ul></ul></ul><ul><ul><ul><li>Consultas multiresolução </li></ul></ul></ul><ul><ul><ul><li>Suporte para Interface com o usuário </li></ul></ul></ul><ul><ul><li>Objetos reais com estrutura </li></ul></ul><ul><ul><li>e comportamento </li></ul></ul><ul><li>Resumindo... </li></ul><ul><li>Abstrações para facilitar a interação DADOS + CONSULTAS + USUÁRIO </li></ul>
  8. 8. Limitações dos BDs Relacionais <ul><li>Não possuem mecanismos para a definição e manipulação de tipos de dados complexos </li></ul><ul><li>Não suportam itens de dados de grandes tamanhos </li></ul><ul><li>Permitem apenas consultas com noções precisas </li></ul><ul><li>Não permitem consultas ad-hoc </li></ul><ul><li>Baixa performance e dificuldades de implementação para aplicações mais complexas </li></ul>
  9. 9. “ Pontos Fortes” dos BDs Relacionais <ul><ul><li>declaratividade </li></ul></ul><ul><ul><li>robustez </li></ul></ul><ul><ul><li>simplicidade (usa poucos conceitos poderosos) </li></ul></ul><ul><ul><li>fundamentos formais </li></ul></ul><ul><ul><li>tecnologia madura e eficiente para: </li></ul></ul><ul><ul><ul><li>oferecer persistência </li></ul></ul></ul><ul><ul><ul><li>garantir segurança </li></ul></ul></ul><ul><ul><ul><li>gerenciar memória secundária </li></ul></ul></ul><ul><ul><ul><li>controlar transações </li></ul></ul></ul><ul><li>Extensões ou novos modelos devem oferecer: </li></ul>
  10. 10. Sistemas de BDs Pós-Relacionais <ul><li>BD x DSS: </li></ul><ul><ul><li>BD Multidimensional </li></ul></ul><ul><ul><li>Data Warehouse/Data Mart </li></ul></ul><ul><ul><li>BD Temporal </li></ul></ul><ul><li>BD x Aplicações: </li></ul><ul><ul><li>BD Ativo </li></ul></ul><ul><ul><li>BD Orientado a Objetos </li></ul></ul><ul><ul><li>BD Objeto-Relacional </li></ul></ul><ul><li>BD x IA: </li></ul><ul><ul><li>BD Dedutivo </li></ul></ul><ul><ul><li>BD Dedutivo OO </li></ul></ul><ul><ul><li>BD de Restrições </li></ul></ul><ul><li>BD x Sist. Distribuídos/Internet: </li></ul><ul><ul><li>BD Distribuídos </li></ul></ul><ul><ul><ul><li>BD Federados </li></ul></ul></ul><ul><ul><ul><li>Arquitetura de Mediadores </li></ul></ul></ul><ul><ul><li>BD x Agentes </li></ul></ul><ul><ul><li>BD Multimídia </li></ul></ul><ul><li>BD x SIG </li></ul><ul><ul><li>BD Espacial </li></ul></ul>
  11. 11. BD Multidimensional <ul><ul><li>Dimensões: diferentes perspectivas de visualização dos dados (podem ser compostas por múltiplos níveis) </li></ul></ul><ul><ul><li>Elementos (ou membros): posições segundo uma dimensão </li></ul></ul><ul><ul><li>Medidas : conteúdo de uma célula </li></ul></ul><ul><li>Armazena os dados em arrays multidimensionais com um número fixo de dimensões </li></ul><ul><li>Permite uma visualização multidimensional e multigranular dos dados </li></ul>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 ...
  12. 12. BD Multidimensional - Exemplo Loja 5 1 6 8 3 Produto Tempo Impressora MW PCC Tabela relacional BD x DSS Jan/99 Fev/99 Mar/99 Abr/99 Monitor Scanner 5 <ul><li>Obter respostas a questões típicas de análise dos negócios de uma empresa geralmente requer a visualização dos dados segundo diferentes perspectivas </li></ul>Produto Loja Unidades Tempo Monitor Monitor Monitor Monitor Impressora Scanner MW MW MW MW PCC MW Jan/99 5 1 8 6 5 3 Abr/99 Fev/99 Fev/99 Mar/99 Mar/99
  13. 13. Data Warehouse <ul><li>Características: </li></ul><ul><ul><li>Orientado por temas </li></ul></ul><ul><ul><li>Integrado </li></ul></ul><ul><ul><li>Variante no tempo </li></ul></ul><ul><ul><li>Não volátil </li></ul></ul><ul><li>Questões críticas: </li></ul><ul><ul><li>Integração de dados e metadados de várias fontes </li></ul></ul><ul><ul><li>Qualidade dos dados: limpeza e refinamento </li></ul></ul><ul><ul><li>Resumir e agregar os dados </li></ul></ul><ul><ul><li>Sincronização das fontes com o DW </li></ul></ul><ul><ul><li>Problemas de desempenho (unir em um mesmo ambiente os BDs corporativos operacionais e o DW) </li></ul></ul><ul><li>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 </li></ul>BD x DSS
  14. 14. Data Mart <ul><li>É uma implementação de um DW no qual o escopo dos dados é limitado, contém dados agregados apenas a nível departamental </li></ul><ul><li>Uma maneira de construir um DW é através da criação e integração progressiva de data marts </li></ul><ul><li>Problemas: </li></ul><ul><ul><li>escalabilidade em situações onde pequenos data marts iniciais crescem em múltiplas dimensões </li></ul></ul><ul><ul><li>integração de dados (diferentes estruturas) </li></ul></ul>BD x DSS
  15. 15. OLAP (On-Line Analytical Processing) <ul><li>Processamento e ferramentas voltados para análise de dados típica do suporte à decisão </li></ul><ul><ul><li>Os dados são apresentados através de uma visão multidimensional e multigranular </li></ul></ul><ul><ul><li>A visão dos dados é independente de como eles estão armazenados (MOLAP x ROLAP) </li></ul></ul><ul><ul><li>Eficiente para consultas ad-hoc complexas </li></ul></ul><ul><ul><li>Exemplos de consultas: </li></ul></ul><ul><ul><ul><li>Quais os produtos que vendem bem? </li></ul></ul></ul><ul><ul><ul><li>Qual o &quot;ranking&quot; dos vendedores da Região Nordeste? </li></ul></ul></ul>BD x DSS
  16. 16. OLAP x OLTP <ul><li>OLTP </li></ul><ul><li>Modelo de dados Relacional </li></ul><ul><li>Dados Atômicos </li></ul><ul><li>Apenas informações atuais </li></ul><ul><li>Orientados ao Processo </li></ul><ul><li>Poucos tipos de consultas simples </li></ul><ul><li>Atualizações e leituras rápidas </li></ul><ul><li>OLAP </li></ul><ul><li>Modelo de dados Multidimensional </li></ul><ul><li>Dados Agregados </li></ul><ul><li>Também informações históricas </li></ul><ul><li>Orientados ao Negócio </li></ul><ul><li>Grande variedade de consultas complexas </li></ul><ul><li>Apenas leitura </li></ul>BD x DSS
  17. 17. BD Temporais <ul><li>Bancos de dados temporais apresentam rótulos temporais associados aos dados. </li></ul><ul><ul><li>(i) bancos de dados de tempo de transação: associam aos dados o o instante em que foram inseridos no banco de dados; </li></ul></ul><ul><ul><li>(ii) bancos de dados de tempo de validade: associam aos dados o seu tempo de validade na realidade modelada; </li></ul></ul><ul><ul><li>(iii) bancos de dados bitemporais: associam o tempo de transação e o tempo de validade </li></ul></ul><ul><li>Aspectos temporais podem ser: pontuais, intervalos de tempo ou relacionamentos abstratos (antes, depois, durante,...) </li></ul>BD x DSS
  18. 18. BD Ativo <ul><li>SGBD capaz de responder automaticamente a eventos ocorrendo: </li></ul><ul><ul><li>internamente (ex: atualizações no BD, restrições de integridade) </li></ul></ul><ul><ul><li>externamente (ex: dispositivos de monitoramento, falhas de hardware) </li></ul></ul><ul><li>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) </li></ul><ul><li>Abordagem comum: regras Evento-Condição-Ação especificando comportamento reativo </li></ul>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
  19. 19. BD Ativo (cont.) <ul><li>Vantagens: </li></ul><ul><li>Não acarreta mudanças nas aplicações </li></ul><ul><li>Incrementa a funcionalidade dos SGBDs </li></ul><ul><li>Atende aos requisitos de restrições temporais das aplicações </li></ul>SGBD Ativo BD x Aplicações Consultas e atualizações Eventos externos Especificação de eventos e condições a serem monitoradas Ações
  20. 20. BD Ativo - Exemplo <ul><li>Empregado(#emp, nome, salario, #gerente) </li></ul><ul><li>Gerente(#gerente, #depto) </li></ul><ul><li>Regra1: </li></ul><ul><li>on update to salario of empregado </li></ul><ul><li>if new.salario > update.gerente.salario </li></ul><ul><li>do abort </li></ul><ul><li>Regra2: </li></ul><ul><li>on update to salario of empregado or </li></ul><ul><li>insert to empregado </li></ul><ul><li>if new.salario > update.gerente.salario </li></ul><ul><li>do instead <informe o administrador do sistema> </li></ul><ul><li>Regras podem ser disparadas e </li></ul><ul><li>executadas da seguinte forma: </li></ul><ul><li>immediate </li></ul><ul><li>deferred </li></ul><ul><li>detached </li></ul>BD x Aplicações
  21. 21. Regras Ativas - Aplicações <ul><li>Manutenção: </li></ul><ul><ul><li>Restrições de Integridade </li></ul></ul><ul><ul><li>Visões materializadas </li></ul></ul><ul><li>Descrever o comportamento/semântica das aplicações </li></ul><ul><ul><li>monitorar vendas em um BD para controle de estoque </li></ul></ul><ul><li>Em conjunto com dispositivos de monitoramento, podem ser usadas para registrar e responder a situações externas ao BD </li></ul><ul><ul><li>aplicações médicas </li></ul></ul><ul><ul><li>sistemas de monitoramento de tráfego aéreo </li></ul></ul>BD x Aplicações
  22. 22. BD Orientado a Objetos (BDOO) <ul><li>Combina o paradigma OO com a tecnologia de BD </li></ul><ul><li>Um SGBDOO é um SGBD com um modelo de dados OO </li></ul><ul><li>Os requisitos para suportar um modelo de dados OO são: </li></ul><ul><ul><li>identidade de objetos </li></ul></ul><ul><ul><li>objetos complexos </li></ul></ul><ul><ul><li>classes </li></ul></ul><ul><ul><li>encapsulamento </li></ul></ul><ul><ul><li>herança </li></ul></ul><ul><ul><li>overriding, overloading e </li></ul></ul><ul><ul><li>ligação dinâmica </li></ul></ul><ul><ul><li>extensibilidade </li></ul></ul>BD x Aplicações <ul><li>Funcionalidades dos BDs: </li></ul><ul><li>dados persistentes </li></ul><ul><li>gerenciamento de grandes conjuntos de dados </li></ul><ul><li>gerenciamento de memória secundária </li></ul><ul><li>gerenciamento de transações </li></ul><ul><li>linguagem de consulta declarativa </li></ul>
  23. 23. BD Orientado a Objetos (cont.) <ul><li>OO em BD combina conceitos de várias áreas: </li></ul><ul><ul><li>Linguagens de Programação: tipos de dados abstratos e encapsulamento </li></ul></ul><ul><ul><li>Tecnologia de Software: extensibilidade e reusabilidade de código e o princípio da modularização </li></ul></ul><ul><ul><li>Modelagem de dados: relações aninhadas ou generalizações do modelo relacional, juntamente com os modelos de dados semânticos </li></ul></ul>BD x Aplicações
  24. 24. 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
  25. 25. <ul><li>classe3: </li></ul><ul><li>Endereço: [ </li></ul><ul><ul><li>rua: String, </li></ul></ul><ul><ul><li>localização: String] </li></ul></ul><ul><li>classe4: </li></ul><ul><li>Pessoa: [ </li></ul><ul><ul><li>nome: String, </li></ul></ul><ul><ul><li>idade: Integer; </li></ul></ul><ul><ul><li>domicilio: Endereço, </li></ul></ul><ul><ul><li>Frota: {Veiculos}] </li></ul></ul><ul><li>classe5: </li></ul><ul><li>Empregado is-a Pessoa : [ </li></ul><ul><ul><li>qualificações: {String}, </li></ul></ul><ul><ul><li>salário: Integer; </li></ul></ul><ul><ul><li>Familiares: {Pessoa}] </li></ul></ul>BD Orientado a Objetos - Exemplo <ul><li>classe1: </li></ul><ul><li>Companhia: [ </li></ul><ul><ul><li>nome: String, </li></ul></ul><ul><ul><li>matriz: Endereço ; </li></ul></ul><ul><ul><li>Subsidiarias: {Subsidiaria}, </li></ul></ul><ul><ul><li>Presidente: Empregado ] </li></ul></ul><ul><li>classe2: </li></ul><ul><li>Subsidiaria: [ </li></ul><ul><ul><li>nome: String, </li></ul></ul><ul><ul><li>escritório: Endereço; </li></ul></ul><ul><ul><li>Gerente: Empregado, </li></ul></ul><ul><ul><li>Empregados: {Empregado}] </li></ul></ul>BD x Aplicações
  26. 26. BD Objeto Relacional (BDOR) <ul><li>Combina os benefícios do modelo Relacional com a tecnologia de Orientação a Objetos </li></ul><ul><li>O modelo de dados OR é uma extensão do modelo Relacional: </li></ul><ul><ul><li>permite estender o banco de dados com tipos e funções específicas da aplicação </li></ul></ul><ul><ul><li>A linguagem de consulta OR (SQL3) é uma extensão da linguagem SQL para suportar o modelo de objetos </li></ul></ul><ul><ul><ul><li>As extensões incluem consultas envolvendo objetos, atributos multivalorados, TADs, métodos e funções como predicados de busca em uma consulta </li></ul></ul></ul>BD x Aplicações
  27. 27. 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 <ul><li>CREATE TYPE Companhia </li></ul><ul><li>( </li></ul><ul><li>NomeComp String, </li></ul><ul><ul><li>Matriz endereço, </li></ul></ul><ul><ul><li>Subsidiarias SET ( REF (Subsidiaria)), </li></ul></ul><ul><ul><li>Presidente REF (Empregado), </li></ul></ul><ul><li>); </li></ul><ul><li>CREATE TYPE Subsidiaria </li></ul><ul><li>( </li></ul><ul><ul><li>NomeSub String, </li></ul></ul><ul><ul><li>Escritório endereço, </li></ul></ul><ul><ul><li>Empregados SET ( REF (Empregado)), </li></ul></ul><ul><li>); </li></ul>Criação de Tipos: Criação de Tabelas: BD x Aplicações
  28. 28. BD Dedutivo (BDD) <ul><li>Utiliza regras para deduzir ou inferir informações adicionais a partir dos fatos armazenados no BD </li></ul><ul><li>Um BDD possui dois tipos principais de especificações: </li></ul><ul><ul><li>Fatos (são similares as tabelas dos BDs Relacionais) </li></ul></ul><ul><ul><li>Regras (são similares as visões em BDs Relacionais) </li></ul></ul><ul><li>Os requisitos para suportar dedução são: </li></ul><ul><ul><li>linguagem declarativa </li></ul></ul><ul><ul><ul><li>predicados </li></ul></ul></ul><ul><ul><ul><li>variáveis lógica </li></ul></ul></ul><ul><ul><li>unificação de termos com variáveis </li></ul></ul><ul><ul><li>mecanismo de dedução </li></ul></ul>BD x IA <ul><li>Funcionalidades dos BDs: </li></ul><ul><li>dados persistentes </li></ul><ul><li>gerenciamento de grandes conjuntos de dados </li></ul><ul><li>gerenciamento de memória secundária </li></ul><ul><li>gerenciamento de transações </li></ul><ul><li>linguagem de consulta declarativa </li></ul>
  29. 29. BD Dedutivo (cont.) <ul><li>A linguagem Datalog é um subconjunto de Prolog utilizada em sistemas de BDD para definir regras e fatos </li></ul><ul><li>A notação usada em Datalog é baseada em predicados com um número fixo de argumentos usados para definir fatos e regras </li></ul><ul><ul><li>se todos os argumentos de um predicado são constantes, então o predicado estabelece que um certo fato é verdade </li></ul></ul><ul><ul><li>se um predicado tem variáveis como argumentos, então ele é considerado uma consulta , ou parte de uma regra ou restrição </li></ul></ul>BD x IA
  30. 30. BD Dedutivo - Exemplo <ul><li>Fatos </li></ul><ul><li>supervisiona(helena, maria) </li></ul><ul><li>supervisiona(joão, luís) </li></ul><ul><li>supervisiona(joão, josé) </li></ul><ul><li>supervisiona(paula, helena) </li></ul><ul><li>supervisiona(paula, pedro) </li></ul><ul><li>... </li></ul><ul><li>Regras </li></ul><ul><li>superior(X,Y) :- supervisiona(X,Y) </li></ul><ul><li>superior(X,Y) :- supervisiona(X,Z), supervisiona(Z,Y) </li></ul><ul><li>subordinado(X,Y) :- supervisor(Y,X) </li></ul>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
  31. 31. BD Dedutivo Orientado a Objetos (BDDOO) <ul><li>BDD: </li></ul><ul><ul><li>alta capacidade de inferência </li></ul></ul><ul><ul><li>fundamentos formais </li></ul></ul><ul><ul><li>pobre poder de modelagem </li></ul></ul><ul><li>BDOO: </li></ul><ul><ul><li>rica capacidade de modelagem </li></ul></ul><ul><ul><li>alta extensibilidade </li></ul></ul><ul><ul><li>falta de consenso sobre o modelo de dados </li></ul></ul><ul><ul><li>baixa capacidade de inferência </li></ul></ul><ul><ul><li>fundamentos não tão bem formalizados quando os de BDD </li></ul></ul><ul><li>BDDOO: </li></ul><ul><ul><li>deve combinar as vantagens dos dois métodos acima </li></ul></ul>BD x IA
  32. 32. BD Dedutivo Orientado a Objetos BD x IA <ul><li>Requisitos OO: </li></ul><ul><li>identidade de objetos </li></ul><ul><li>objetos complexos </li></ul><ul><li>classes </li></ul><ul><li>encapsulamento </li></ul><ul><li>herança </li></ul><ul><li>overriding, overloading </li></ul><ul><li>e ligação dinâmica </li></ul><ul><li>extensibilidade </li></ul><ul><li>Requisitos Raciocínio: </li></ul><ul><li>linguagem declarativa </li></ul><ul><ul><li>predicados </li></ul></ul><ul><ul><li>variáveis lógica </li></ul></ul><ul><li>unificação de termos </li></ul><ul><li>com variáveis </li></ul><ul><li>mecanismo de dedução </li></ul><ul><li>Requisitos BD: </li></ul><ul><li>dados persistentes </li></ul><ul><li>gerenciamento de grandes conjuntos de dados </li></ul><ul><li>gerenciamento de memória secundária </li></ul><ul><li>gerenciamento de transações </li></ul><ul><li>linguagem de consulta declarativa </li></ul>BDDOO
  33. 33. BDDOO - Exemplo <ul><li>A hierarquia é-um: </li></ul><ul><ul><li>empl::person </li></ul></ul><ul><ul><li>student::person </li></ul></ul><ul><ul><li>child(person)::person </li></ul></ul><ul><ul><li>faculty::empl </li></ul></ul><ul><ul><li>manager::empl </li></ul></ul><ul><ul><li>yuppie::young </li></ul></ul><ul><ul><li>yuppie::midaged </li></ul></ul><ul><ul><li>article::report </li></ul></ul><ul><ul><li>cacm::article </li></ul></ul><ul><ul><li>jacm::article </li></ul></ul><ul><ul><li>john:student </li></ul></ul><ul><ul><li>john:empl </li></ul></ul><ul><ul><li>sally:student </li></ul></ul><ul><ul><li>sally:empl </li></ul></ul><ul><ul><li>alice:child(john) </li></ul></ul><ul><ul><li>mary:faculty </li></ul></ul><ul><ul><li>bob:faculty </li></ul></ul><ul><ul><li>bob:manager </li></ul></ul><ul><ul><li>phil:empl </li></ul></ul><ul><ul><li>20:young </li></ul></ul><ul><ul><li>30:yuppie </li></ul></ul><ul><ul><li>40:midaged </li></ul></ul><ul><ul><li>codd70:cacm </li></ul></ul><ul><ul><li>flogic94:jacm </li></ul></ul><ul><ul><li>cs1:dept </li></ul></ul><ul><ul><li>cs2:dept </li></ul></ul><ul><ul><li>integer:datatype </li></ul></ul><ul><ul><li>string:datatype </li></ul></ul><ul><ul><li>“ CS”:string </li></ul></ul><ul><ul><li>“ Mary”:string </li></ul></ul><ul><ul><li>“ Bob”:string </li></ul></ul><ul><ul><li>ms:degree </li></ul></ul><ul><ul><li>phd:degree </li></ul></ul>BD x IA
  34. 34. BDDOO - Exemplo (cont.) <ul><li>Assinatura de Classes: </li></ul><ul><ul><ul><li>faculty [boss=>(faculty, manager); age=>midaged; highestDegree=>degree; papers->>article; highestDegree*->phd; avgSalary->50000] </li></ul></ul></ul><ul><ul><ul><li>person [name=>string; friends=>>person; children=>>child(person); </li></ul></ul></ul><ul><ul><ul><li>empl [affiliation=>dept; boss=>empl; jointWorks@empl=>>report] </li></ul></ul></ul><ul><ul><ul><li>dept [assistants=>>(student, empl); mngr=>empl] </li></ul></ul></ul>BD x IA
  35. 35. BDDOO - Exemplo (cont.) <ul><li>Fatos da base (BD extensional) </li></ul><ul><ul><ul><li>bob [name-> “Bob”; age->40; affiliation->cs1[dname-> “CS”; mngr ->bob; assistants->> {john, sally}]] </li></ul></ul></ul><ul><ul><ul><li>mary [name-> “Mary”; highestDegree->ms; friends->>{bob, sally} affiliation->cs2[dname->”CS”]] </li></ul></ul></ul><ul><li>Regras dedutivas: </li></ul><ul><ul><ul><li>E[boss->M] :- E:empl ^ D:dept ^ E[affiliation->D[mngr->M:empl]] </li></ul></ul></ul><ul><ul><ul><li>X [jointWorks@Y->>Z] :- Y:faculty ^ X:faculty ^ Y [papers->>Z] ^ X [papers->>Z] </li></ul></ul></ul>BD x IA
  36. 36. BDDOO - Exemplo (cont.) <ul><li>Consultas: </li></ul><ul><ul><li>Quem são os empregados de meia idade do departamento CS e quem são os seus gerentes? </li></ul></ul><ul><ul><ul><li>?- X:empl ^ X [boss-> Y; age->Z:midaged; affiliation->D[dname->”CS”]]. </li></ul></ul></ul><ul><ul><li>Quem publicou juntamente com Mary no Jornal da ACM? </li></ul></ul><ul><ul><ul><li>?- mary[jointWorks@Y->>jacm90]. </li></ul></ul></ul><ul><ul><li>Onde Mary tem publicações em conjunto com Phil? </li></ul></ul><ul><ul><ul><li>?- mary[jointWorks@phil->>Z]. </li></ul></ul></ul>BD x IA
  37. 37. Banco de Dados de Restrições <ul><li>Generalizam BD Relacionais através de representações finitas de relações infinitas </li></ul><ul><li>Modelo de Dados de Restrições: </li></ul>BD x IA Entrada: BD Relacional Entrada: BD de Restrições Saída: BD Relacional Saída: BD de Restrições Consulta de Restrições Consulta Relacional
  38. 38. Banco de Dados de Restrições - Exemplo <ul><li>Representação Relacional: </li></ul><ul><ul><li>Tuplas: (n,a,b,c,d) </li></ul></ul><ul><ul><li>Consulta: </li></ul></ul><ul><ul><li>{(n 1 ,n 2 )|n 1  n 2  (  a 1 ,a 2 ,b 1 ,b 2 ,c 1 ,c 2 ,d 1 ,d 2 )(R(n 1 ,a 1 ,b 1 ,c 1 ,d 1 )  R(n 2 ,a 2 ,b 2 ,c 2 ,d 2 )  (  x,y  {a 1 ,a 2 ,b 1 ,b 2 ,c 1 ,c 2 ,d 1 ,d 2 }) (a 1  x  c 1  </li></ul></ul><ul><ul><li>b 1  y  d 1  a 2  x  c 2  b 2  y  d 2 ))} </li></ul></ul>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 )
  39. 39. Banco de Dados de Restrições - Exemplo <ul><li>Representação com Restrições: </li></ul><ul><ul><li>R (z,x,y) </li></ul></ul><ul><ul><li>Tupla generalizada: (z =n  ( a  x  c)  ( b  y  d)) </li></ul></ul><ul><ul><li>Consulta: {(n 1 ,n 2 )|n 1  n 2  (  x,y)(R(n1,x,y)  R(n2,x,y)} </li></ul></ul>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 )
  40. 40. 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
  41. 41. BD Distribuídos <ul><li>Classificação quanto ao grau: </li></ul><ul><ul><li>de Heterogeneidade </li></ul></ul><ul><ul><li>de Autonomia Local </li></ul></ul><ul><ul><li>de Transparência de Distribuição/Integração </li></ul></ul><ul><li>Enfoques para Integração de Informações: </li></ul><ul><ul><li>Materializado :as informações relevantes são extraídas, filtradas e integradas previamente, de formas a agilizar as consultas </li></ul></ul><ul><ul><li>Virtual: as informações são extraídas das fontes de informação somente quando requisitadas </li></ul></ul><ul><ul><ul><li>BD Federados </li></ul></ul></ul><ul><ul><ul><li>Mediadores </li></ul></ul></ul>BD x Internet/Sist.Distribuídos
  42. 42. 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
  43. 43. 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
  44. 44. BD x Agentes <ul><li>Dedução embutida </li></ul><ul><li>Atualização de DW/Data Mart </li></ul><ul><li>Personalização de interfaces </li></ul><ul><li>Variedades de aplicações integrando BD com Internet </li></ul><ul><li>Os agentes podem ter diferentes funções: </li></ul><ul><ul><li>notificação </li></ul></ul><ul><ul><li>mediação </li></ul></ul><ul><ul><li>aquisição de conhecimento </li></ul></ul>BD x Internet/Sist.Distribuídos
  45. 45. BD Multimídia <ul><li>Armazenam informações que se originam de diferentes tipos de mídia: textos, imagens, áudio e vídeo </li></ul><ul><li>Os requisitos para suportar dados multimídia são: </li></ul><ul><ul><li>Novos tipos de Dados </li></ul></ul><ul><ul><li>Qualidade do Serviço </li></ul></ul><ul><ul><li>Consultas multiresolução </li></ul></ul><ul><ul><li>Suporte para Interface com o usuário </li></ul></ul>BD x Internet/Sist.Distribuídos
  46. 46. BD Multimídia - Aplicações <ul><li>Gerenciamento de documentos </li></ul><ul><ul><li>os dados podem incluir projetos de engenharia, registros médicos, etc </li></ul></ul><ul><li>Disseminação do conhecimento </li></ul><ul><ul><li>bibliotecas digitais, livros eletrônicos e repositórios de informação </li></ul></ul><ul><li>Monitoramento e controle em tempo real </li></ul><ul><ul><li>juntamente com BD Ativo pode ser muito útil para o controle de operações nucleares, pacientes em UTIs, sistemas de transporte, etc </li></ul></ul>BD x Internet/Sist.Distribuídos
  47. 47. BDs Espaciais <ul><li>Oferecem tipos de dados espaciais em seu modelo de dados e linguagem de consulta </li></ul><ul><li>Estes sistemas devem: </li></ul><ul><ul><li>combinar informações geométricas e temáticas </li></ul></ul><ul><ul><li>ser o mais geral possível </li></ul></ul><ul><ul><li>ter uma semântica formalmente definida </li></ul></ul><ul><ul><li>ser independente de SGBD, mas cooperativo com qualquer SGBD </li></ul></ul><ul><ul><li>usar técnicas de implementação eficientes para operações em objetos n-dimensionais </li></ul></ul><ul><ul><li>ter uma interface visual para os usuários </li></ul></ul><ul><li>Aplicações: </li></ul><ul><ul><li>Sistemas de Informação Geográficas </li></ul></ul><ul><ul><li>CAD/CAM </li></ul></ul><ul><ul><li>Robótica </li></ul></ul>BD x SIG
  48. 48. Banco de Dados x KDD <ul><li>Vantagens da aprendizagem a partir de BDs: </li></ul><ul><ul><li>Os dados são armazenados de maneira mais ou menos estruturada </li></ul></ul><ul><ul><li>Algum conhecimento do domínio é implicitamente armazenado no BD </li></ul></ul><ul><ul><li>Ferramentas de consultas, manipulação de dados e transações estão disponíveis </li></ul></ul><ul><ul><li>O número de BD com dados aplicáveis as técnicas de mineração é grande e continua crescendo! </li></ul></ul>
  49. 49. Banco de Dados x KDD <ul><li>Restrições da aprendizagem a partir de BDs: </li></ul><ul><ul><li>O volume de dados é tipicamente muito grande </li></ul></ul><ul><ul><li>Os dados podem conter ruídos e informações incompletas </li></ul></ul><ul><ul><li>Os dados não foram coletados com o propósito de descoberta de conhecimento </li></ul></ul><ul><li>Conhecimento pode ser descoberto a partir de diferentes fontes de dados </li></ul><ul><ul><li>Dados relacionais </li></ul></ul><ul><ul><li>Dados OO </li></ul></ul><ul><ul><li>Dados textuais </li></ul></ul><ul><ul><li>Dados temporais </li></ul></ul><ul><ul><li>Dados espaciais </li></ul></ul><ul><ul><li>Dados na Web </li></ul></ul><ul><ul><li>Dados de DW </li></ul></ul>
  50. 50. Bibliografia <ul><li>Database research: achievements and opportunities for the 21st century </li></ul><ul><li>The emergence of post-relational databases by Richard Currier, Chairman - Strategic Marketing - April 1997 </li></ul><ul><li>The Asilomar Report on Database Research </li></ul><ul><li>Fundamentals of Database Systems </li></ul><ul><li>Database Issues in Knowledge Discovery and Data Mining </li></ul>
  51. 51. Bibliografia <ul><li>Logic and databases: a 20 year retrospective </li></ul><ul><li>A survey of research on deductive database systems </li></ul><ul><li>Active database systems </li></ul><ul><li>Comparing deductive and active databases </li></ul><ul><li>Object-oriented DBMS and beyond </li></ul><ul><li>Constraint Databases: A Survey </li></ul>
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×