Baixe o app para aproveitar ainda mais
Prévia do material em texto
Universidade Federal de Mato Grosso Instituto de Computação Disciplina de Banco de Dados Aula 1 Histórico e Evolução de Banco de Dados Prof. MSc Allan Gonçalves de Oliveira allan@pgfa.ufmt.br Março – 2012 Conceitos básicos ➔ O que é um Banco de Dados? ➔ O que é um Sistema de Banco de Dados ➔ Quais os tipos de usuários? ➔ Onde está dentro do contexto de Engenharia de Software? Conceitos básicos ➔ O que é um Banco de Dados? ➔ Conjunto de dados ➔ estruturados ➔ confiáveis, ➔ coerentes e ➔ compartilhados Conceitos básicos ➔ O que é um Sistema de Banco de Dados? ➔ um ambiente ➔ eficiente para recuperar e armazenar informações de Bancos de Dados ➔ Eliminar ou Reduzir ➔ Redundância ➔ Inconsistência de Dados ➔ Permitir ➔ Acesso aos Dados ➔ Concorrência ➔ Segurança Conceitos básicos ➔ O que é um Banco de Dados? ➔ O que é um Sistema de Banco de Dados? ➔ Quais os tipos de usuários? ➔ Onde está dentro do contexto de Engenharia de Software? Tipos de Usuários ➔ Usuários ➔ Incluem dados ➔ Fazem consultas ➔ Programadores ➔ Definem dados ➔ Criam programas que acessam os dados ➔ Administradores de BD (DBA) ➔ Responsável por manter o sistema funcionando Conceitos básicos ➔ O que é um Banco de Dados? ➔ O que é um Sistema de Banco de Dados? ➔ Quais os tipos de usuários? ➔ Onde está dentro do contexto de Engenharia de Software? Engenharia de Software ➔ IC - UFMT [Amber2001] Engenharia de Software ➔ IC - UFMT [Amber2001] Engenharia de Software Linguagens de Programação Linguagens de Programação Inteligência Artificial Inteligência Artificial Sist. de Suporte a Decisão Sist. de Suporte a Decisão Outras áreasOutras áreas Sistemas Distribuídos & Internet Sistemas Distribuídos & Internet Aplicações de Bancos de Dados Aplicações de Bancos de Dados BD EspacialBD Espacial DWDW BDOOBDOO BD DistribuídosBD Distribuídos BD TemporalBD Temporal BD MultimídiaBD Multimídia DWDW BDDBDD BD AtivoBD Ativo Comércio Eletrônico Comércio Eletrônico OLAPOLAP MonitoramentoMonitoramento Digital Publishing Digital Publishing Restrições integridade Restrições integridade DiagnósticoDiagnósticoData MiningData Mining CAD/CAM/SIGsCAD/CAM/SIGs Engenharia de Software ➔ Sist. de Suporte a Decisão Sist. de Suporte a Decisão Outras áreasOutras áreas Linguagens de Programação Linguagens de Programação Inteligência Artificial Inteligência Artificial Sistemas Distribuídos & Internet Sistemas Distribuídos & Internet Sistemas de Bancos de Dados Sistemas de Bancos de Dados Temporal TemporalEspacialEspacial Espaço TemporalEspaço Temporal BD MultimídiaBD Multimídia BD DimensionalBD Dimensional DW DW BD DistribuídosBD Distribuídos BDOOBDOO BDDOOBDDOO BD AtivoBD Ativo BDDBDD BDD AtivoBDD Ativo BDOO Ativo BDOO Ativo BD de Restrições BD de Restrições BD OO Espacial BD OO Espacial Histórico G Visão Repositório óDispositivos de armazenamento G Visão Global óArquitetura de Banco de Dados G Visão Dado óEvolução dos Dados G Visão Conceitual óModelo de Dados Visão Repositório: cartão Visão Modelo ➔ Sistema de cartão perfurado ➔ Muito lento e tedioso para usar ➔ Erros de operação comumente realizados ➔ Correções de difícil execução Repositório: fita Visão Modelo ➔ Fita magnética ➔ Em 1950 construída primeira fital comercial ➔Armazenava 1 milhão de bits ➔Recuperava uma palavra em 5 ms ➔ Propriedades ➔Acesso sequencial Repositório: disco Visão Modelo ➔ Em setembro de 1956 ➔ IBM apresenta RAMAC™ (Random Access Method of Accounting and Control), ➔O primeiro sistema de disco de computador para armazenamento ➔Mesmo princípio utilizado até os dias de hoje ➔Disco(s) ➔Cabeça(s) de leitura Histórico G Visão Repositório óDispositivos de armazenamento G Visão Global óArquitetura de Banco de Dados G Visão Dado óEvolução dos Dados G Visão Conceitual óModelo Visão Arquitetura de um Sistema de Banco de Dados Componentes ➔ Usuário ➔ Software ➔ manipulação ➔ Hardware ➔ armazenamento VisãoGlobal Arquitetura de um Sistema de Banco de Dados Evolução ➔ 1ª geração: ➔ Software único ➔controla: interface, manipulação, acesso, armazenamento e gerenciamento dos dados. VisãoGlobal Armazenamento Software Software Arquitetura de um Sistema de Banco de Dados VisãoGlobal Aplicação Sistema Gerenciador de Banco de Dados Evolução ➔ 2ª geração: ➔ Software 2 camadas ➔Aplicação (Cliente ) ➔controla: manipulação, interface ➔SGBD (Servidor) ➔controla o acesso, armazenamento e gerenciamento dos dados. Software Arquitetura de um Sistema de Banco de Dados VisãoGlobal Aplicação SGBD1 Evolução ➔ 3ª geração: ➔ Software Distribuído ➔Cliente (Aplicação) ➔Servidor (SGBD) ➔vários locais ➔vários produtos SGBD3SGBD1 SGBD2 Software Arquitetura de um Sistema de Banco de Dados VisãoGlobal Navegador Web Evolução ➔ 4ª geração: ➔ Software 3 camadas ➔Cliente (Aplicação) ➔Navegador Web ➔Servidor Web ➔SGBD Servidor Web SGBD Software Arquitetura de um Sistema de Banco de Dados VisãoGlobal Cliente Evolução ➔ 5ª geração: ➔ Software Multi camadas ➔Cliente: vários dispositivos ➔Servidor de Aplicações ➔componentes ➔SGBD Servidor de Aplicações SGBD Histórico G Visão Repositório óDispositivos de armazenamento G Visão Global óArquitetura de Banco de Dados óComponentes G Visão Dado óEvolução dos Dados G Visão Conceitual óModelo Visão Conceitos Básicos Informação X Dado Visão Dados Gravação em código de uma observação, de um objeto, de um fenômeno Fatos registrados, e que têm um significado implícito, sobre acontecimentos Informação X Dado Informações (significado para organização) Dados (qualitativos / quantitativos) Conhecimento (compreensão / teoria) Ação (projetos / valores) A bs tra çã o / V al or Conceitos Básicos Visão Dados Dados Para definir um tipo de dado é preciso ter ➔ Propriedades: ➔ representação ➔ domínio ➔ Operações ➔ manipulação Em outras palavras: ➔ Operandos + Operadores Visão Dados Para definir um tipo de dado é preciso ter ➔ Propriedades: ➔ representação ➔ domínio ➔ Operações ➔ manipulação Em outras palavras: ➔ Operandos + Operadores Dados: número Visão Dados Para definir um tipo de dado é preciso ter ➔ Propriedades: ➔ Representação: BCD, little endian, big endian ➔ Domínio: 64 bits ➔ Ordem total ➔ Operações ➔ Manipulação: soma, adição, etc ➔ Comparações: <, >, etc ➔ Padrão para arredondamento em contas Dados: alfanumérico Visão Dados Propriedades: ➔ Representação: ➔codificação de caracter ➔UNICODE, ASCII, ISO 5960, etc Domínio: ➔ 16 bits para UNICODE (65535 caracteres) Operações ➔ Manipulação: concatenação, etc ➔ Comparações: ordem alfabética, etc Dados Visão Dados Além da definição de Operandos + Operadores em Banco de Dados é preciso definir Método de Acesso (MA) ➔ Árvores ➔ Usam a propriedade de ordem total para dividir o domínio e diminuir o número de comparações ➔ Bitmap, etc Dados: texto estruturado Visão Dados Propriedades: ➔ Representação: ➔Convergindo para padrão XML (Extensible Markup Language) ➔Estruturahierárquica ➔Diversos padrões: XHTML, SMIL, etc Domínio: ➔Texto estruturado com marcações ➔<xml> </xml> Dados: texto longo Visão Dados Propriedades: ➔ Representação: ➔Uso de método de acesso específico ➔Padrão Full Text ➔Formato do arquivo: ODF, DOC, PDF, etc Domínio: ➔Texto com mais de 64Kb Dados: imagem Visão Dados imagem Propriedades: ➔ Representação: ➔Resolução definida pela matriz de pixels (raster) ➔Modelo de cores: RGB(aditivo), CMYK(subtrativo), HSB. ➔Formato do arquivo: JPG, PNG, TIFF, etc Domínio: ➔ O tamanho da matriz pode ultrapassar Gigabytes Dados: imagem Visão Dados imagem ➔ Armazenamento ➔ Em formato binário ➔ Operações (não embutidas no SGBD) ➔ Manipulação: adição, subtração,etc ➔ Buscas de partes das imagens ➔ Métodos estatísticos e da área de reconhecimento de padrões podem normalmente não são escaláveis ➔ Comparações: ???????? ➔ Imagem é um dado complexo!! ➔ Comparação ➔ Não possui relação de ordem total ➔ Não existe ”origem” dos dados ➔ Ordenação dos dados: < < Dados: complexo Visão Dados ➔ Comparação ➔ Não possui relação de ordem total ➔ Não existe ”origem” dos dados ➔ Ordenação dos dados: < < Dados: complexo Visão Dados Dados: complexo ➔ Comparação ➔ Qual o parâmetro usar para comparação? Visão Dados ➔ Comparação: ➔ Similaridade entre objetos ➔ Criação de um Método de acesso: ➔ Domínio de dados complexo ➔ Permita buscas por similaridade 5 45 49 Valor de Similaridade Dados: complexo Visão Dados ➔ Imagem é um dado complexo ➔ Pertence a um espaço métrico ➔ Exige a definição de uma métrica ➔ (p1) ∀ x, y ∈ S, d(x, y) ≥ 0 positiva, ➔ (p2) ∀ x, y ∈ S, d(x, y) = d(y, x) simétrica, ➔ (p3) ∀ x ∈ S, d(x, x) = 0 reflexiva, ➔ e, em alguns casos, ➔ (p4) ∀ x, y ∈ S, x ≠ y ⇒ d(x, y) > 0 estritamente positiva. ➔ (p5) ∀ x, y, z ∈ S, d(x, y) ≤ d(x, z) + d(z, y) Desigualdade Triangular ➔ Indexação feita considerando a similaridade entre os objetos Dados: complexo Visão Dados ➔ Método de Acesso Métrico ➔ Seleciona um ou mais objetos representativos ➔ Inserção de um novo objeto ➔ Distância aos representativos são calculados e armazenados ➔ Durante as consultas ➔ Usa a propriedade de desigualdade triangular para descartar os objetos Dados: complexo Visão Dados ➔ Exemplo de MA: Slim-Tree: K L GH M N Q O PIJE A D F CB E A D F CB C B D E FG HI J K L M N O P QA CB A Dados: complexo Visão Dados ➔ Estaticas: ➔ GH-tree (Generalized Hyperplane Decomposition tree) ➔ VP-tree (Vantage Point tree) ➔ FQ-tree (Fixed Queries tree) ➔ GNAT (Geometric Near-Neighbor Access Tree) ➔ MVP-tree (Multi-Vantage Point tree) ➔ ... ➔ Dinâmicas: ➔ M-tree ➔ Slim-tree ➔ ... Visão Dados Dados: complexo ➔ Buscas por similaridade ➔ Retorna o(s) objeto(s) mais similares ao objeto de consulta (referência) ➔ Principais tipos: ➔ Range Query - RQ ➔ k-Nearest Neighbor Query - kNNQ Visão Dados Dados: complexo ➔Range Query ➔ Recupera todos os objetos que estão até uma distância rq ao objeto de consulta oq rqoq Visão Dados Dados: complexo ➔ k-Nearest Neighbor Query ➔ Recupera os k elementos mais similares ao objeto de consulta oq oq Visão Dados Dados: complexo Dado: áudio Visão Dados ➔ Propriedades: ➔ Representação: freqüência e altura ➔ Domínio: 64 bits ➔ Possui dimensão tempo ➔ Influencia nas comparações ➔ Formato de arquivos: Wav, Ogg Vorbis, MP3 ➔ Operações ➔ Manipulação: freqüência ➔ Comparações: intervalos Dado: vídeo Visão Dados ➔ Propriedades: ➔ Representação: ➔ Domínio: ➔ Possui dimensão tempo ➔ Influencia nas comparações ➔ Imagem + som = sincronização ➔ Formato de arquivo: RM, SWF, MPEG, Dado: genômico Visão Dados genômico ➔ Propriedades: ➔ Representação: sequência de caracteres ➔ Domínio: combinação de nucleotídeos ➔ Operações ➔ Manipulação: regras de composição ➔ Comparações: faixas semelhantes, formas semelhantes ➔ Propriedades: ➔ Representação: coordenadas ➔ Domínio: espaço N-dimensional ➔ Operações ➔ Manipulação: pontos e regiões ➔ Comparações: métodos de acesso multidimensionais Dado: espacial Visão Dados espacial ➔ Consultas espaciais Dado: espacial Seleção por ponto Seleção por região Seleção por janela Fonte: Karine Ferreira (2006) Visão Dados ➔ Junção espacial Para cada rodovia selecione as escolas que estão a menos de 1000 metros. Dado: espacial Fonte: Karine Ferreira (2006) Visão Dados Dado: espacial BA ∅ ∅ ¬∅ ∅ ∅ ¬∅ ¬∅ ¬∅ ¬∅ ∂A A° A- ∂B B° B- disjoint BA meet contains equal BA overlap A B inside B A covers A B covered by ¬∅ ∅ ¬∅ ∅ ∅ ¬∅ ¬∅ ¬∅ ¬∅ ∂A A° A- ∂B B° B- ∅ ∅ ¬∅ ¬∅ ¬∅ ¬∅ ∅ ∅ ¬∅ ∂A A° A- ∂B B° B- ¬∅ ∅ ¬∅ ¬∅ ¬∅ ¬∅ ∅ ∅ ¬∅ ∂A A° A- ∂B B° B- B A ¬∅ ∅ ∅ ∅ ¬∅ ∅ ∅ ∅ ¬∅ ∂A A° A- ∂B B° B- ¬∅ ¬∅ ¬∅ ¬∅ ¬∅ ¬∅ ¬∅ ¬∅ ¬∅ ∂A A° A- ∂B B° B- ∅ ¬∅ ∅ ∅ ¬∅ ∅ ¬∅ ¬∅ ¬∅ ∂A A° A- ∂B B° B- ¬∅ ¬∅ ∅ ∅ ¬∅ ∅ ¬∅ ¬∅ ¬∅ ∂A A° A- ∂B B° B- BA B Fonte: Adaptado de Egenhofer e Herring (1991) ➔ Predicados topológicos Visão Dados Dado:espacial ➔ Métodos de Acesso Multidimensionais: ➔ k-d Trees Fonte: Gilberto Ribeiro (2006) Visão Dados Dado: espacial ➔ Métodos de Acesso Multidimensionais ➔ Fixed-Grid Fonte: Gilberto Ribeiro (2006) Visão Dados Dado: espacial ➔ Métodos de Acesso Multidimensionais ➔ Quadtree Fonte: Gilberto Ribeiro (2006) Visão Dados Dado: espacial ➔ Métodos de Acesso Multidimensionais ➔ R-Trees Visão Dados Dado: composição Visão Dados ➔ Sistemas de Informação Geográfica ➔ Imagens georreferenciadas ➔ Sensores orbitais captam bandas do espectro eletromagnético ➔ Imagens podem atingir 200MB cada ➔ Todos os sensores captam TB de dados diariamente Dado: composição Visão Dados fonte: NASA Dado: composição Visão Dados Histórico G Visão Repositório óDispositivos de armazenamento G Visão Global óArquitetura de Banco de Dados G Visão Dado óEvolução dos Dados G Visão Conceitual óModelo de Dados Visão 60 Modelo de Dados ➔ Coleção de construções lógicas usadas para representar estrutura de dados estruturados e seus relacionamentos em um banco de dados ➔ Modelos conceituais: ➔ natureza lógica de representação dos dados ➔ distante de tecnologia ➔ Modelos lógicos ➔ ênfase na forma como os dados são representados pelo banco de dados ➔ próximo de tecnologia Modelo: arquivos ➔ Dados armazenados diretamente em arquivos ➔ Cada arquivo organizado pelo tipo de uso ➔ Dados redundantes ➔ Sem escalabilidade ➔ Dependência entre aplicação e estrutura dos dados ➔ Cada manipulação dependia de um programa (ou método) específico ➔ Baixa segurança ➔ Dados difíceis de serem representados Nome: Joana Rua: Av. Dom,123 Cidade: Poconé Fone: 455-0897 Data: Fev 14, 1955 Hora: 2:00 p.m. Paciente:Joana , 455-0897 CID: 123456789 Modelo: arquivos Nome: Joana Rua: Av. Dom,123 Cidade: Poconé Fone: 455-0897 Data: Fev 14, 1955 Hora: 2:00 p.m. Paciente:Joana , 455-0897 CID: 123456789 ➔ Limitações ➔ Separação e Isolamento de Dados ➔ Dificuldade no acesso aos dados porque eles são isolados em arquivos separados. ➔ Exemplo:Listar todos os pacientes que foram atendidos emfevereiro ➔ Criar um arquivo temporário dos pacientes ➔ Identificar os atendimentos de fevereiro ➔ Testar e sincronizar o processamento dos dois arquivos para garantir a extração correta dos dados. Modelo: arquivos ➔ Limitações ➔ Duplicação de Dados ➔ dados e programas desenvolvidos de forma independente. ➔ Duplicação excessiva de dados é problemática: ➔ Custo adicional para ➔ operações de entrada de dados e atualização. ➔ de espaço de armazenamento. ➔ para detecção e correção de erros. Modelo: arquivos ➔ Limitações ➔ Dependência entre Dados e Programas ➔ Dificuldade em mudar as definições das estruturas de arquivo existentes. ➔ Exemplo:Aumentar o tamanho do campo de endereço do paciente ➔ Criar um programa de conversão para: ➔ Abrir o arquivo original para leitura ➔ Abrir um arquivo temporário representando a nova estrutura ➔ Ler um registro do arquivo original, converter o dado e gravá-lo no arquivo temporário. Repetir isto p/ todos os registros. ➔ Remover o arquivo original. ➔ Renomear o arquivo temporário. Modelo: arquivos ➔ Limitações ➔ Incompatibilidade de Formatos de Arquivos ➔ Como a definição dos arquivos são embutidas nos programas de aplicação, os formatos destes arquivos dependem da linguagem de programação escolhida. ➔ Pode haver a necessidade de escrita de um software para converter os arquivos para um formato comum e facilitar o processamento. ➔ Isto acarreta em consumo de tempo e dinheiro. ➔ Exemplo: O setor de diagnóstico pode desejar obter o nome e o endereço de todos os pacientes cujos diagnósticos envolvem dengue. Modelo: arquivos ➔ Limitações ➔ Consultas Pré-determinadas ➔ Impossibilidade de realização de consultas não- planejadas (i.e. consultas ad-hoc). ➔ Aumento da carga de trabalho do Programador, resultando em: ➔ Programas ➔ inadequados ou ineficientes na satisfação dos requisitos dos usuários. ➔ Com documentação reduzida. ➔ De manutenção difícil. ➔ Omissão/Redução de funcionalidades importantes (e.g. recuperação, segurança, ...) Modelo: Hierárquico Visão ➔ Modelo Hierárquico ➔ Uma hierarquia define a organização e o acesso aos dados ➔ Cada nó pode ter diversos filhos Modelo: Hierárquico Visão ➔ Vantagens ➔ Simplicidade conceitual ➔ Integridade da base de dados ➔ Independência de Dados ➔ Eficiência ➔ Desvantagens ➔ Implementação complexa ➔ Falta de padrão ➔ Dependência estrutural ➔ Limitação de implementação Modelo: Redes Visão ➔ Cada registro pode ter diversos pais ➔ Composto de conjuntos ➔ Cada conjunto tem registro dono e registro membro ➔ Membro pode ter diversos donos Modelo: Redes Visão ➔ Vantagens ➔ Simplicidade conceitual ➔ Manipula diversos tipos de relacionamento ➔ Flexibilidade no acesso aos dados ➔ Permite manter integridade ➔ Independência de dados ➔ Padronizado ➔ Desvantagens ➔ Complexidade das ligações (ponteiros) ➔ Falta de independência estrutural Modelo: Relacional Visão ➔ Edgar Codd ➔ Pai do Modelo Relacional ➔ IBM San Jose ➔ Em 1970, Codd publicou:“A Relational Model of Data for Large Shared Data Banks.” ➔ Modelo Relacional consiste de: ➔ Independência de Dados com implementação e armazenamento em hardware. ➔ Navegação automática (alto nível) ➔ Linguagem não-procedural Modelo: Relacional Visão ➔ A adoção do modelo relacional enfrentou dificuldades ➔ IBM investiu muito no sistema IMS ➔ Padrão CODASYL ➔ Primeiras implementações ➔ System R – IBM ➔Criou linguagem SEQUEL ➔ Ingres – Berkeley ➔Michael Stonebraker ➔Eugene Wong Modelo: Relacional Visão ➔ Modelo lógico ➔ Usuário considera que trabalha com uma coleção de tabelas que armazenam os dados ➔ Tabelas são uma série de intersecções de linhas/colunas ➔ Tabelas possui características parecidas com de entidades Modelo: MER Visão ➔ Modelo Entidade Relacionamento ➔ Modelo conceitual ➔ Representa informações com ➔ Entidades ➔ representam entes do mundo real. ➔ Relacionamento ➔ representam interações entre as entidades. Companhia Subsidiária Pessoa Empregado nome_comp localização #companhia nome_sub rua localização qualificação salário nome idade domicílioVeículo produz é-um modelo fabricantecor possui administra trabalha rua gerencia possui_frota #pessoa 1 1 1 1 n 1 1 n n 1 n 1 1 1 1 Modelo: MER Visão Modelo: OO Visão Modelo ➔ Paradigma Orientado a Objetos ➔ Classe e Objeto ➔ Encapsulamento ➔ Relacionamento ➔ Herança ➔ Associação ➔ Polimorfismo Modelo: OO Visão Modelo ➔ Sistemas Orientados a Objetos ➔ Conceito mais especializado de detalhamento da realidade (herança) ➔ Conceito de reutilização: maior produtividade ➔ Melhor ligação: analista X usuário ➔ Suportam com mais flexibilidade alterações e evolução Fusion Operation descriptions, Message numbering Meyer Before and after conditions Harel State charts Wirfs-Brock Responsibilities Embley Singleton classes, High-level view Odell Classification Shlaer - Mellor Object Lifecycles Gamma, et.al Frameworks, patterns, notes Booch JacobsonRumbaugh Modelo: OO Visão Modelo Modelo: OO Visão Modelo Modelo: OO Visão Modelo ➔ Diagrama de Classes 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}] 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 Modelo: OO Modelo: objeto-relacional Visão Modelo ➔ Sistema Objeto-relacional ➔ Extensão de Tipo Básico em Contexto SQL ➔ Objetos Complexos em Contexto SQL ➔ Herança em Contexto SQL ➔ Suporte para Regras de Produção ➔ 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 CREATE TYPE Endereço ( RuaNoVARCHAR(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 Modelo: objeto-relacional 2002 1998 1994 1990 1986 1982 1978 1974 1970 1958 1966 1962 Pré-SGBD: Estruturas de Acesso suportadas pelo SO TOTAL Rede limitado IMS Hierárquico IDMS Rede Sistema R (Relacional), DATACOM, ADABAS INGRES, ORACLE DB2 Protótipos: Adaplex, Exodus, SDM Ontos, O2, PostgresOntos, O2, Postgres SGBD´s universais: Modelos OO/ORSGBD´s universais: Modelos OO/OR Modelo UML XML (SBDB Tamino) Modelo ER Evolução dos SGBD Modelo: não convencionais Visão Modelo➔ Tipos ➔ Grande Volume de Dados Estruturados ➔ Tipos de Dados Complexos (Textos, Gráficos, Imagens, Sons) ➔ Transações Longas ➔ Controle de Versões ➔ Espaço-Temporais ➔ Baseado em Restrições ➔ Orientado a Colunas Sistemas de Banco de Dados ➔ Sist. de Suporte a Decisão Sist. de Suporte a Decisão Outras áreasOutras áreas Linguagens de Programação Linguagens de Programação Inteligência Artificial Inteligência Artificial Sistemas Distribuídos & Internet Sistemas Distribuídos & Internet Sistemas de Bancos de Dados Sistemas de Bancos de Dados Temporal TemporalEspacialEspacial Espaço TemporalEspaço Temporal BD MultimídiaBD Multimídia BD DimensionalBD Dimensional DW DW BD DistribuídosBD Distribuídos BDOOBDOO BDDOOBDDOO BD AtivoBD Ativo BDDBDD BDD AtivoBDD Ativo BDOO Ativo BDOO Ativo BD de Restrições BD de Restrições BD OO Espacial BD OO Espacial Referências ➔ [Ambler2001] Ambler, S.W.; ”The Object Primer: Introduction to techniques for Agile Modeling”; Ronin International; 2001. ➔ http://www.databasecolumn.com ➔ http://www.dbms2.com ➔ http://www.wintercorp.com/ ➔ Brayner, A.;”Aplicações Avançadas de Banco de Dados”; UNIFOR; 2005. ➔ Salgado, A. C.;Banco de Dados; UPFE; 2005. ➔ Lóscio, B. F.;Banco de Dados Pós-Relacionais; DI-UFPe; ➔ Ferreira, K. R.; ”Introdução a Geoprocessamento”; INPE;2009. Slide 1 Slide 2 Slide 3 Slide 4 Slide 5 Slide 6 Slide 7 Slide 8 Slide 9 Slide 10 Slide 11 Slide 12 Slide 13 Slide 14 Slide 15 Slide 16 Slide 17 Slide 18 Slide 19 Slide 20 Slide 21 Slide 22 Slide 23 Slide 24 Slide 25 Slide 26 Slide 27 Slide 28 Slide 29 Slide 30 Slide 31 Slide 32 Slide 33 Slide 34 Slide 35 Intro-4 Intro-5 Slide 38 MAM ideia Slide 40 Main MAMs Simil-Queries RQ kNNQ Slide 45 Slide 46 Slide 47 Slide 48 Slide 49 Slide 50 Slide 51 Slide 52 Slide 53 Slide 54 Slide 55 Slide 56 Slide 57 Slide 58 Slide 59 Database Models In the beginning…(in the 1950s) Slide 62 Slide 63 Slide 64 Slide 65 Slide 66 Slide 67 Slide 68 Slide 69 Slide 70 Slide 71 Slide 72 Slide 73 Slide 74 Slide 75 Slide 76 Slide 77 Slide 78 Slide 79 Slide 80 Slide 81 Slide 82 Slide 83 Slide 84 Slide 85 Slide 86 Slide 87
Compartilhar