Sistemas Gerenciadores de Bancos de Dados Orivaldo V. Santana Jr A partir de slides elaborados por Ivan G. Costa Filho Fernando Fonseca & Robson Fidalgo 1
Sistemas de Arquivos Sistemas de arquivos Principal característica é a replicação e isolamento de dados (ilhas de informações) Aplicações eram escritas para um determinado arquivo Para cada nova aplicação criava-se um novo arquivo (redundância descontrolada) Arquivos possuíam formatos diferentes Sexo = M ou F e Sexo = 0 ou 1 Nome CHAR (50) e Nome CHAR (40) 2
Sistemas de Gerenciamento de Banco de Dados (SGBD) Consistem em uma coleção de dados interrelacionados e em um conjunto de programas para acessá-los Coleção de Dados Contém informações sobre um empreendimento particular Banco de Dados 3
Banco de Dados Coleção de dados inter-relacionados Conjunto de dados estruturados que são confiáveis, coerentes e compartilhados por usuários que têm necessidade de informações diferentes 4
Estrutura de um BD Instância => Os dados Coleção de dados armazenados no Banco de Dados em um determinado instante Esquema => Estrutura dos dados É o projeto geral do BD DEPARTAMENTO COD NOME GERENTE 1 Informática José 2 Matemática João Esquema Instâncias 5
SGBD Conjunto de Programas Descrever Armazenar Restringir o Acesso Tratar Manipular Consultar 6
SGBD Objetivo dos SGBD Prover um ambiente que seja conveniente e eficiente para recuperar e armazenar informações de Bancos de Dados Eliminar ou Reduzir Redundância e inconsistência de dados Dificuldade no acesso aos dados (consultas) 7
SGBD Eliminar ou reduzir (Cont.) Anomalias de acesso concorrente Problemas de segurança Abstração de dados Simplifica a interação do usuário com o Sistema Modelo de Dados 8
Vantagens do uso de SGBDs Controle de redundância Controle de acesso Processamento eficiente de consultas Backup e restauração Relações complexas entre dados Restrições de integridade http://www.misa.com.vn/uploads/images/metal_money_box_safe_bank.jpg 9
Modelo de Dados Coleção de ferramentas conceituais para descrição de dados, seus relacionamentos, sua semântica e restrições de consistência Conceituais Especialista no domínio, usuário padrão Lógico Projetista do BD, usuário especialista Físicos Desenvolvedor do SGBD 10
SGBD Modelos Conceituais Entidades, Atributos e Relacionamentos Entidades: Funcionário, Estudante Atributos: Nome, CPF Relacionamentos: DisciplinasCursadas Não são implementados em SGBD Entidade-Relacionamento (E-R) UML 11
SGBD Modelos lógicos São implementados em SGBD Baseados em registros Hierárquico Em Rede Relacional Baseados em objetos 12
Linguagens para SGBDs Linguagem de definição de dados Especifica o esquema do BD Linguagem de manipulação de dados Manipulação dos dados organizados pelo modelo de dados 13
Linguagens para SGBDs Linguagem de consulta Porção da linguagem de manipulação que envolve o resgate de informações Ex. select * from alunos where nota = 10 Linguagem de 4 a geração: combina estruturas de controle de linguagens de programação com estruturas para manipulação de elementos de um Banco de Dados 14
Interfaces para Bancos de Dados 15
Independência de Dados Habilidade de modificar a definição de um esquema em um nível sem afetar a definição do esquema em um nível mais alto (programa aplicativo) Independência física de dados Independência lógica de dados Ex. Adição do RG do aluno ao modelo conceitual 16
Usuários Interfaces dos Aplic. Arquitetura dos SGBD Prog. de Aplicações Programa de Aplic. Especialistas Consultas Esquema de BD ABD Pré-Compilador Processador de Consulta Sistema Gerenciador de BD Gerenciador de BD Compilador Gerenciador de Arquivos Disco de Armazenamento Arquivos de dados Dicionário de Dados 17
Arquitetura Cliente-Servidor Rede Local Clientes (aplicação que usa o BD) SGBD (processamento de consultas e transações) 18
Arquitetura Cliente-Servidor na Web Clientes web (Safari, Firefox, IE, etc.) Internet Servidor WEB Rede Local SGBD 19
Sistemas de Arquivos SGBD Hierárquicos SGBD em Rede... SGBD Orientados a Objetos SGBD Objeto-Relacional SGBD Relacionais 20
Sistemas de Arquivos (Inicialmente) Replicação Isolamento Utilização de linguagens de programação 21
Sis. de Produção Sis. de Vendas Sis. de Compras Arq. de Produção Produto... Arq. de Vendas Produto... Arq. de Compras Produto... Sis. de Produção X Sis. de Vendas Sistemas de Arquivos Sis. de Compras Banco de dados Produto... SGBD 22
Sistemas baseados no Modelo Hierárquico Representar hierarquias 23
Modelo Hierárquico Departamento Pai Hierarquia Funcionário Filho 24
Modelo Hierárquico Mário Av. S.Carlos S.P. Silvia Av.D.Pedro Itu Rui Rua XV S.Carlos 1234 55,00 7556 3.000,00 1333 600,00 7556 3.000,00 5512 350,00 25
Sistemas baseados no Modelo em Rede Reconhece a natureza geral de dados como não-hierárquica Construídos a partir de uma modelagem dos dados 26
Sistemas baseados no modelo em Rede Departamento Proprietário Funcionário Membro 27
Sistemas baseados no modelo em Rede Mário Av. S.Carlos S.P. Rui Rua XV S.Carlos 1234 55,00 1333 600,00 7556 3.000,00 Silvia Av.D.Pedro Itu 5512 350,00 28
Sistemas Relacionais Dados representados segundo tabelas Modelo formal apoiado na teoria dos conjuntos Exemplos: ORACLE, MySQL, MS SQL Server 29
Sistemas Relacionais COD NOME GERENTE DEPARTAMENTO 30
Sistemas Relacionais nome rua cidade nro-conta Mário Av. S.Carlos S.P. 1234 Rui Rua XV S.Carlos 1333 Rui Rua XV S.Carlos 7556 Silvia Av.D.Pedro Itu 5512 Silvia Av.D.Pedro Itu 7556 nro-conta saldo 1234 55,00 1333 600,00 5512 350,00 7556 3.000,00 31
Sistemas Orientados a Objetos Conceito mais especializado de detalhamento da realidade (Herança) Melhor ligação analista X usuário Dão suporte mais flexível a alterações na realidade Possuem maior continuidade em todas as fases do ciclo de vida do projeto Eficiência Forte acomplamento com a LP empregada 32
SGBD Orientado a Objetos EX: O2, OBJECTSTORE, IRIS M1 Cliente A1,A2,...An M2 Troca de Mensagens M1 Conta A1,A2,...An M2 Mn... Mn... Mário, Av. S.Carlos, SP, [1234] Rui, Rua XV, S.Carlos, [1333, 7556] Silvia, Av. D. Pedro, Itu, [5512, 7556] 1234, 55,00 1333, 600,00 5512, 350,00 7556, 3.000,00 33
Sistema Objeto-Relacional Extensão de tipo básico Objetos complexos Herança em contexto SQL 34
Sistema Objeto-Relacional (Cont.) Aplicações Gerenciamento de acervos gráficos e de vídeo na indústria do entretenimento Problemas de análise de séries de tempo no mercado financeiro Bancos de dados científicos Sistemas de informações geográficas 35
Aplicações (Cont.) Dados multimídia freqüentemente acessados pela WWW Exemplos PostgreSQL ORACLE 8i / 9i/10g/11g 36
SGBD Relacional-Objeto (ou Objeto-Relacional) Usa de conceitos OO sobre estruturas relacionais M1 Cliente A1,A2,...An M2 Conceitos de OO M1 Conta A1,A2,...An M2 Mn... Mn... 37
Classificação Primeira geração (Fim dos anos 60) Hierárquico Rede Segunda geração (Fim dos anos 70) Relacional 38
BD Relacional Características Evolução dos SGBD Dados bem estruturados Tipos de dados simples (Inteiros, Reais, Caracteres,...) Transações simples e curtas Acesso através de chaves Exemplos de aplicações Folha de pagamento Controle de estoque Contas a pagar 39
Classificação (Cont.) Terceira geração (A partir do meio da década de 80) Orientação a objetos Objeto-relacionais 40
Características Tipos de dados complexos (Textos, Gráficos, Imagens, Sons) Transações longas Controle de versões Nível de abstração mais alto 41