conceitos e arquitetura do sistema de banco de dados
TRANSCRIPT
Copyright © 2011 Pearson Education, Inc. Publishing as Pearson Addison-Wesley© 2011 Pearson. Todos os direitos reservadosslide 1
Capítulo 2
Conceitos e arquitetura do sistema de banco de dados
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 2 © 2011 Pearson. Todos os direitos reservados
Tópicos
Modelos de dados, esquemas e instâncias Arquitetura de três esquemas e independência de dados Linguagens e interfaces do banco de dados O ambiente do sistema de banco de dados Arquiteturas centralizadas e cliente/servidor para SGBDs Classificação dos sistemas gerenciadores de banco de
dados
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 3 © 2011 Pearson. Todos os direitos reservados
Conceitos e arquitetura dosistema de banco de dados
Arquitetura básica de SGBD cliente/servidor
Módulo cliente: programas de aplicação e interface com o usuário
Módulo servidor: armazena dados, acesso, pesquisa e outras funções
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 4 © 2011 Pearson. Todos os direitos reservados
1. Modelos de dados, esquemas e instâncias
Abstração de dados
Supressão de detalhes da organização e armazenamento dos dados.
Destacando recursos essenciais para um melhor conhecimento desses dados.
Diferentes usuários percebem os dados em seu nível de detalhe específico
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 5 © 2011 Pearson. Todos os direitos reservados
1. Modelos de dados, esquemas e instâncias (cont.)
Modelo de dados Coleção de conceitos para descrever a estrutura de um
banco de dados Oferece os meios necessários para alcançar a
abstração de dados Estrutura de um banco de dados: tipos de dados,
relacionamentos e restrições Operações básicas
• Especifica recuperações e atualizações no banco de dados (inserir, excluir, atualizar
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 6 © 2011 Pearson. Todos os direitos reservados
Aspecto dinâmico ou comportamento de uma aplicação de banco de dados.
• Permite ao projetista do banco de dados especificar um conjunto de operações válidas sobre os objetos do banco de dados.
• Exemplo: calcular uma média
1. Modelos de dados, esquemas e instâncias (cont.)
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 7 © 2011 Pearson. Todos os direitos reservados
1.1. Categorias de modelos de dados
Modelos de dados de alto nível ou conceituais Próximos ao modo como muitos usuários percebem os
dados.
Modelos de dados de baixo nível ou físicos Descrevem os detalhes de como os dados são
armazenados no computador em discos magnéticos. Voltados para pessoas da área e não para usuários
finais
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 8 © 2011 Pearson. Todos os direitos reservados
Modelos de dados representativos
Conceitos facilmente entendidos pelos usuários finais.
Similar ao modo que os dados são organizados e armazenados no computador.
Ocultam detalhes do armazenamento
1.1. Categorias de modelos de dados (cont.)
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 9 © 2011 Pearson. Todos os direitos reservados
1.1. Categorias de modelos de dados (cont.)
Entidade Representa um objeto ou conceito do mundo real
Atributo Representa alguma propriedade de interesse Descreve melhor uma entidade
Relacionamento entre duas ou mais entidades Representa uma associação entre as entidades Modelo Entidade-Relacionamento
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 10 © 2011 Pearson. Todos os direitos reservados
1.1. Categorias de modelos de dados (cont.)
Modelo de dados relacional Usados com mais frequência nos SGBDs comerciais
tradicionais. São modelos de dados representativos ou de
implementação
Modelo de dados baseados em registro São modelos de dados representativos Mostram dados usando estruturas de registro
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 11 © 2011 Pearson. Todos os direitos reservados
1.1. Categorias de modelos de dados (cont.)
Modelo de dados de objeto Nova família de modelos de dados de implementação
de nível mais alto. Mais próximos dos modelos de dados conceituais. Modelos conceituais de alto nível ODMG:
• grupo de gerenciamento de ddos objeto – object data management group
• Desenvolveram um padrão para banco de dados objeto
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 12 © 2011 Pearson. Todos os direitos reservados
1.1. Categorias de modelos de dados (cont.)
Modelos de dados físicos Descrevem o armazenamento dos dados como arquivos
no computador: formatos de registro, ordenações, caminho, etc.
Caminho de acesso• Estrutura que torna eficiente a busca por registros de
um banco de dados em particular. Índice
• Exemplo de um caminho de acesso.• Permite o acesso direto aos dados usando um termo de
índice ou uma palavra-chave.
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 13 © 2011 Pearson. Todos os direitos reservados
1.2. Esquemas, instâncias eestado do banco de dados
Esquema do banco de dados Descrição do banco de dados Não deve mudar com frequencia
Diagrama de esquema Apresenta aspectos selecionados do esquema Representação de alguns aspectos de um esquema Não representa: tipo de dado de cada item,
relacionamentos entre os arquivos, tipos de restrições, etc.
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 14 © 2011 Pearson. Todos os direitos reservados
1.2. Esquemas, instâncias eestado do banco de dados
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 15 © 2011 Pearson. Todos os direitos reservados
1.2. Esquemas, instâncias eestado do banco de dados
Construtor do esquema Cada objeto no esquema
Estado ou instante do banco de dados Os dados no banco de dados em determinado momento no
tempo Conjunto atual de ocorrências (ou instâncias) do banco de
dados Cada construtor de esquema, em determinado momento, tem o
seu próprio conjunto de instâncias atuais O estado do banco de dados é mudado sempre que inserimos
ou excluimos um registro dele.
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 16 © 2011 Pearson. Todos os direitos reservados
1.2. Esquemas, instâncias e estadodo banco de dados (cont.)
Define-se um novo banco de dados Especifica-se o esquema de banco de dados para o
SGBD Estado vazio (sem dados)
Estado inicial Populado ou carregado com os dados iniciais
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 17 © 2011 Pearson. Todos os direitos reservados
1.2. Esquemas, instâncias e estadodo banco de dados (cont.)
Estado atual Ocorre em qualquer ponto do tempo
Estado válido Satisfaz a estrutura e as restrições especificadas no
esquema
Especificar um esquema correto é extremamente importante e deve ser projetado com muito cuidado
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 18 © 2011 Pearson. Todos os direitos reservados
1.2. Esquemas, instâncias e estadodo banco de dados (cont.)
Metadados Descrições das construções e restrições do
esquema Intenção = esquema Extensão do esquema = um estado do banco de
dados Evolução do esquema
Mudanças podem ser aplicadas ao esquema à medida que os requisitos da aplicação mudam
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 19 © 2011 Pearson. Todos os direitos reservados
1.2. Esquemas, instâncias e estadodo banco de dados (cont.)
RELEMBRANDO: Características importantes da abordagem de
banco de dados Uso de um catálogo para armazenar a descrição do
banco de dados de modo a torna-lo autodescritivo; Isolamento de programas e dados – independencia
entre dados do programa e operação do programa Suporte para multiplas visões do usuário ARQUITETURA DE 3 ESQUEMAS
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 20 © 2011 Pearson. Todos os direitos reservados
1.2. Esquemas, instâncias e estadodo banco de dados (cont.)
ARQUITETURA DE 3 ESQUEMAS Objetivo: separar as aplicações do usuário do banco
de dados físico Tres niveis:
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 21 © 2011 Pearson. Todos os direitos reservados
2. Arquitetura de três esquemase independência de dados
Nível interno Descreve a estrutura do armazenamento físico do banco de
dados
Nível conceitual Descreve a estrutura do banco de dados inteiro para uma
comunidade de usuários
Nível externo ou de visão Descreve a parte do banco de dados em que um grupo de
usuários em particular está interessado
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 22 © 2011 Pearson. Todos os direitos reservados
2. Arquitetura de três esquemas e independência de dados (cont.)
A arquitetura de três esquemas é uma ferramenta com a qual o usuário pode visualizar os níveis de esquema em um sistema de banco de dados.
A maioria dos SGBDs não separa os três níveis completa e explicitamente, mas dá suporte de alguma forma.
*os dados armazenados que realmente existem estão apenas no nível físico.
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 23 © 2011 Pearson. Todos os direitos reservados
2. Arquitetura de três esquemas e independência de dados (cont.)
MAPEAMENTO:
É o processo de transformação de requisições e os resultados entre os níveis
O SGBD precisa transformar uma solicitação especificada em um esquema externo em uma solicitação no esquema conceitual, e depois em uma solicitação no esquema interno para o processamento no banco armazenado
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 24 © 2011 Pearson. Todos os direitos reservados
2.1. Independência de dados
Capacidade de alterar o esquema em um nível do sistema de banco de dados Sem ter de alterar o esquema no nível mais alto
Tipos: Lógico Físico
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 25 © 2011 Pearson. Todos os direitos reservados
2.1. Independência de dados
Tipos: Lógico Capacidade de alterar o esquema conceitual sem ter
de alterar os esquemas externos ou os programas de aplicação
Somente a definição da visão e os mapeamentos precisam ser alterados
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 26 © 2011 Pearson. Todos os direitos reservados
2.1. Independência de dados
Tipos: Físico Capacidade de alterar o esquema interno sem ter de
alterar o esquema conceitual. Os esquemas externos não precisam ser alterados Situação exemplo: ao criar estruturas de acesso
adicionais, para melhorar o desempenho da recuperação ou atualização, os arquivos físicos podem ser reorganizados, então é necessário mudanças no esquema interno
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 27 © 2011 Pearson. Todos os direitos reservados
2.1. Independência de dados
Tipos: Físico Os detalhes físicos são ocultados do usuário Independencia física existe na maioria dos bancos
de dados Lógico: Permite alterações estruturais e de restrição sem
afetar os programas de aplicação Portanto, independencia lógica é mais dificil de ser
alcançada
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 28 © 2011 Pearson. Todos os direitos reservados
2.1. Independência de dados
Quando ocorre a independencia de dados? Quando o esquema é alterado em algum nível, o
esquema no próximo nível mais alto permanece inalterado
O mapeamento entre os níveis é alterado Programas de aplicação que fazem referencia ao
esquema de nível mais alto não precisam ser alterados
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 29 © 2011 Pearson. Todos os direitos reservados
2.1. Independência de dados
Desvantagem Os dois níveis de mapeamento criam uma sobrecarga
durante a compilação ou execução de uma consulta ou programa, levando a baixa eficiencia do SGBD.
Vantagem Torna mais fácil obter a verdadeira independencia de
dados, tanto física quanto lógica
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 30 © 2011 Pearson. Todos os direitos reservados
3. Linguagens e interfaces do SGBD
Linguagens e interfaces apropriadas para cada categoria de usuários
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 31 © 2011 Pearson. Todos os direitos reservados
3.1. Linguagens do SGBD
Linguagem de definição de dados (DDL) Define o esquema conceitual e o esquema interno,
assim como o mapeamento entre eles
Linguagem de definição de armazenamento (SDL) Especifica o esquema interno Mapeamentos entre os esquemas pode ser feito por
SDL ou DDL * na maioria do SGBDs RELACIONAIS não existe
uma específica que faz o papel da SDL.
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 32 © 2011 Pearson. Todos os direitos reservados
Linguagem de definição de visão (VDL) Especifica visões do usuário e seus mapeamentos ao
esquema conceitual * a maioria dos SGBDs usam a DDL pra definir o
esquema conceitual e também o externo
Linguagem de manipulação de dados (DML) Incluem recuperação, inserção, exclusão e modificação
dos dados
3.1. Linguagens do SGBD (cont.)
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 33 © 2011 Pearson. Todos os direitos reservados
ATUALMENTE: Uma linguagem integrada e abrangente é usada na
Definição do esquema conceitual Definição de visão Manipulação de dados
Exemplo: SQL (combina DD, VDL e DML) SQL fica apenas nos níveis conceitual e externo
3.1. Linguagens do SGBD (cont.)
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 34 © 2011 Pearson. Todos os direitos reservados
3.1. Linguagens do SGBD (cont.)
DML de alto nível ou não procedural Pode ser utilizada para especificar operações de banco de
dados complexas de forma concisa Especificam e recuperam muitos registros em uma única
instrução Quais dados recuperar? Também chamada de linguagem declarativa Linguagem hospedeira: quando comandos DML são
incorporados em uma linguagem de programação de uso geral Sublinguagem de dados: DML Linguagem de consulta: DML
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 35 © 2011 Pearson. Todos os direitos reservados
3.1. Linguagens do SGBD (cont.)
DML de baixo nível ou procedural Deve ser embutida em uma linguagem de programação de
uso geral Recupera registros individuais e processa cada um deles
separadamente
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 36 © 2011 Pearson. Todos os direitos reservados
3.1. Linguagens do SGBD (cont.)
Linguagem hospedeira: quando comandos DML são incorporados em uma linguagem de programação de uso geral
Sublinguagem de dados: DML embutida
Linguagem de consulta: DML de ALTO NÍVEL sendo usada em uma maneira interativa
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 37 © 2011 Pearson. Todos os direitos reservados
3. Linguagens e interfaces do SGBD (cont.)
Interfaces baseadas em menu para clientes Web ou de navegação
Interfaces baseadas em formulário Interfaces gráficas com o usuário Interfaces de linguagem natural Entrada e saída de voz Interfaces para usuários paramétricos Interfaces para o DBA
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 38 © 2011 Pearson. Todos os direitos reservados
4. O ambiente do sistema debanco de dados
Módulos componentes do SGBD Gerenciamento de buffer Gerenciador de dados armazenados Compilador da DDL Interface de consulta interativa
• Compilador de consulta• Otimizador de consulta
Pré-compilador
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 39 © 2011 Pearson. Todos os direitos reservados
4. O ambiente do sistema debanco de dados (cont.)
Módulos componentes de um SGBD Processador de banco de dados em tempo de
execução Catálogo do sistema Sistema de controle de concorrência Sistema de backup e recuperação
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 40 © 2011 Pearson. Todos os direitos reservados
Parte superior: são os vários usuários do ambiente de banco de dados e suas interfaces
Parte inferior: mostra os detalhes internos do SGBD, responsáveis pelo armazenamento de dados e processamento de transações
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 41 © 2011 Pearson. Todos os direitos reservados
SISTEMA OPERACIONAL:
- Controla o acesso ao disco
- Escalona a leitura/escrita em disco
GERENCIAMENTO DE BUFFER:
- Planeja a leitura/escrita em disco
*desempenho
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 42 © 2011 Pearson. Todos os direitos reservados
GERENCIADOR DE DADOS ARMAZENADO
- Controla o acesso às informações do SGBD que são armazenadas em disco
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 43 © 2011 Pearson. Todos os direitos reservados
DBAs
- Definem o banco de dados e ralizam ajustes, alterando sua definição por meio da DDL e de outros comandos privilegiados
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 44 © 2011 Pearson. Todos os direitos reservados
COMPILADOR DDL
- Processa as definições de esquema especificadas e armazena as descrições dos esquemas no catálogo
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 45 © 2011 Pearson. Todos os direitos reservados
CATÁLOGO
- Incui informações como os nomes e os tamanhos dos arquivos, nomes e tipos de dados dos itens de dados, detalhes de armazenamento de cada arquivo, informações de mapeamento entre esquemas e restrições
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 46 © 2011 Pearson. Todos os direitos reservados
USUÁRIOS CASUAIS
- Interagem usando alguma forma de interface (consulta interativa)
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 47 © 2011 Pearson. Todos os direitos reservados
CONSULTA INTERATIVA
- São analisadas e validadas pela exatidão da sintaxe de consulta, os nomes de arquivos, elementos de dados, etc., por um compilador de consulta
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 48 © 2011 Pearson. Todos os direitos reservados
COMPILADOR DE CONSULTA
- Compila as consultas interativas para um formato interno. Essa consulta interna está sujeita à otimização de consultas
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 49 © 2011 Pearson. Todos os direitos reservados
OTIMIZADOR DE CONSULTA
- preocupa-se com o rearranjo e a possível reordenação de operações, com a eliminação de redundancias e uso dos algoritmos e índices corretos durante a execução
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 50 © 2011 Pearson. Todos os direitos reservados
PROGRAMADORES DE APLICAÇÃO
-Escrevem programas em linguagens hospedeiras:-JAVA-C-C++-Etc
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 51 © 2011 Pearson. Todos os direitos reservados
PROGRAMAS DE APLICAÇÃO
-São os programas desenvolvidos pelos pogramadores-São sumbmetidos a um pré-compilador
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 52 © 2011 Pearson. Todos os direitos reservados
PRÉ-COMPILADOR
-Extrai comandos DML do programa de aplicação escrito em uma linguagem de programação hospedeira
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 53 © 2011 Pearson. Todos os direitos reservados
COMPILADOR DML
-Compilam, em código objeto para acesso ao bando de dados, os comandos extraídos pelo pré-compilador
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 54 © 2011 Pearson. Todos os direitos reservados
COMPILADOR DA LINGUAGEM HOSPEDEIRA
-O que sobra do programa, após a extração dos comandos, é enviado para cá
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 55 © 2011 Pearson. Todos os direitos reservados
TRANSAÇÕES COMPILADAS
-É a ligação dos códigos objeto para os comandos DML e o restante do programa
-O código executável resultante inclui chamadas para o processador
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 56 © 2011 Pearson. Todos os direitos reservados
USUÁRIOS PARAMÉTRICOS
-As transãções programadas são executadas repetidamente pelos usuários paramétricos, que apenas fornecem parametros para as transações
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 57 © 2011 Pearson. Todos os direitos reservados
PROCESSADOR DE BANCO DE DADOS EM TEMPO DE EXECUÇÃO
1.Executa comandos privilegiados
2. Executa os planos de consulta executáveis
3. Executa as transações programadas com parametros em tempo de execução
4. Pode atualizar o catálogo
5. Cuida do gerencialmento de buffers na memória
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 58 © 2011 Pearson. Todos os direitos reservados
GERENCIADOR DE DADOS ARMAZENADOS
Utiliza os erviços básicos do sistema operacional para executar operações de entrada/saída de baixo nível entre o disco e a memória principal
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 59 © 2011 Pearson. Todos os direitos reservados
SUBSISTEMA ...
Gerenciamento de transação
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 60 © 2011 Pearson. Todos os direitos reservados
4.2. Utilitários do sistema de banco de dados
FUNÇÕES DOS UTILITÁRIOS
Carga Carrega os arquivos de dados existentes: txt, etc. Responsável por reformatar automaticamente os
dados e armazená-los no banco (formatos de origem e destino diferentes)
Ferramentas de conversão
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 61 © 2011 Pearson. Todos os direitos reservados
4.2. Utilitários do sistema de banco de dados
FUNÇÕES DOS UTILITÁRIOS
Backup Cria uma cópia de segurança do banco de dados Armazenamento em massa: fita ou HDs Em caso de falhas, o backup restaura o banco
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 62 © 2011 Pearson. Todos os direitos reservados
4.2. Utilitários do sistema de banco de dados (cont.)
Reorganização do armazenamento do banco de dados Reorganiza um conjunto de arquivos do banco de
dados em diferentes organizações de arquivo Novos caminhos de acesso
Monitoração de desempenho Monitora o uso do banco de dados e oferece
estatísticas ao DBA que, a partir dela, toma decisões
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 63 © 2011 Pearson. Todos os direitos reservados
4.2. Ferramentas, ambientes de aplicação e facilidades decomunicações
Ferramentas CASE
Sistema de dicionário de dados (repositório de dados) Armazena decisões do projeto, padrões de uso, descrições de
programa de aplicação e informações do usuário
Ambientes de desenvolvimento de aplicação PowerBuilder, Jbuilder Oferece um ambiente de desenvolvimento de aplicações para
banco de dados
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 64 © 2011 Pearson. Todos os direitos reservados
4.2. Ferramentas, ambientes de aplicação e facilidades decomunicações
Software de comunicações Permite que usuários em locais remotos do sistema
acessem o banco de dados por meio de terminais Hardware de comunicação de dados: roteadores, etc. DB/DC: sistema integrado de SGBD e comunicações de
dados SGBDs distribuídos
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 65 © 2011 Pearson. Todos os direitos reservados
5. Arquiteturas centralizadas ecliente/servidor para SGBDs
Arquitetura de SGBDs centralizada Toda a funcionalidade de SGBD, execução de
programas de aplicação e processamento de interface do usuário eram executados em uma máquina
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 66 © 2011 Pearson. Todos os direitos reservados
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 67 © 2011 Pearson. Todos os direitos reservados
5. Arquiteturas cliente/servidorbásicas
Servidores com funcionalidades específicas Servidor de arquivos
• Mantém os arquivos das máquinas clientes Servidor de impressão
• Conectada a várias impressoras; todas as solicitações de impressão pelos clientes são encaminhadas a essa máquina
Servidores Web ou servidores de correio
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 68 © 2011 Pearson. Todos os direitos reservados
5. Arquiteturas cliente/servidor básicas (cont.)
Máquinas cliente Oferecem ao usuário:
• Interfaces apropriadas para utilizar esses servidores
• Poder de processamento local para executar aplicações locais
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 69 © 2011 Pearson. Todos os direitos reservados
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 70 © 2011 Pearson. Todos os direitos reservados
5. Arquiteturas cliente/servidorbásicas (cont.)
Cliente Máquina que oferece capacidades de interface com o
usuário e processamento local
Servidor Sistema com hardware e software Oferece serviços às máquinas cliente
• Como acesso a arquivo, impressão, arquivamento ou acesso a banco de dados
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 71 © 2011 Pearson. Todos os direitos reservados
5. Arquiteturas cliente/servidor deduas camadas para SGBDs
Servidor responsável Funcionalidades de consulta e de transação
relacionadas ao processamento da SQL
Cliente responsável Programas da interface com o usuário e os programas
de aplicação
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 72 © 2011 Pearson. Todos os direitos reservados
5. Arquiteturas cliente/servidor deduas camadas para SGBDs (cont.)
Conectividade de Banco de Dados Aberta (ODBC) Oferece uma interface de programação de aplicações
(API). Permite que os programas do cliente chamem o
SGBD.• As máquinas cliente e o servidor devem ter o
software necessário instalado.
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 73 © 2011 Pearson. Todos os direitos reservados
JDBC Permite que programas cliente em Java acessem
um ou mais SGBDs por meio de uma interface-padrão.
5. Arquiteturas cliente/servidor de duas camadas para SGBDs (cont.)
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 74 © 2011 Pearson. Todos os direitos reservados
5. Arquiteturas de três camadase n camadas para aplicações Web
Servidor de aplicação ou servidor Web Acrescenta uma camada intermediária entre o cliente e o
servidor de banco de dados. Executa programas de aplicação e armazena regras de
negócios.
N camadas Divide as camadas entre o usuário e os dados
armazenados em outros componentes mais detalhados.
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 75 © 2011 Pearson. Todos os direitos reservados
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 76 © 2011 Pearson. Todos os direitos reservados
6. Classificação dos sistemasgerenciadores de banco de dados
Modelo de dados Relacional Objeto Hierárquico e rede (legado) SGBDs XML nativos
Número de usuários Monousuário Multiusuário
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 77 © 2011 Pearson. Todos os direitos reservados
6. Classificação dos sistemasgerenciadores de banco de dados (cont.)
Número de locais Centralizado Distribuído
• Homogêneos• Heterogêneos
Custo Código aberto• Diferentes tipos de licença
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 78 © 2011 Pearson. Todos os direitos reservados
6. Classificação dos sistemasgerenciadores de banco de dados (cont.)
Opções de tipos de caminho de acesso Uso geral ou uso especial
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 79 © 2011 Pearson. Todos os direitos reservados
6. Classificação dos sistemasgerenciadores de banco de dados (cont.)
Copyright © 2011 Ramez Elmasri and Shamkant Navatheslide 80 © 2011 Pearson. Todos os direitos reservados
Resumo
Conceitos usados em sistemas de banco de dados Categorias principais de modelos de banco de dados Tipos de linguagem que os SGBDs possuem Interfaces fornecidas pelos SGBDs Critérios de classificação do SGBD:
Modelo de dados, número de usuários, número de locais, tipos de caminhos de acesso e custo