2 Aula - Banco de Dados - Conceitos
2 Aula - Banco de Dados - Conceitos
2 Aula - Banco de Dados - Conceitos
Onde está o
SGBD?
1 2 3
2
Preocupação : Armazenamento + Recuperação 2
Por que estudar BD?
operação bancária
reserva de hotel
... 3
Por que estudar BD?
ciência de dados
...
4
Conceitos básicos
Dado: fato do mundo real que está registrado
exemplos: endereço, data
5
Exemplo de um BD
6
Banco de dados
Meta-dados
• Dicionário de dados
– Contém informações sobre o Esquema da
base de dados
– Mantido por Linguagens de Definição de
7
Dados
Nem sempre foi assim...
8
Sistemas de arquivos
dados não integrados
Concorrência
Difícil implementação
Tolerância a falhas
Falta de luz, erro de disco, interrupção de
funcionamento, etc, podem corromper
arquivos
Cópias? restauração do estado anterior? Consistência da
base?
Segurança
Como garantir? Senha única para o arquivo (comunitária)?
Isolamento de dados
11
Diversidade de formatos de arquivos
Banco de dados
Banco de
dados
teclado.gif
monitor.gif Dados aparecem
R$ 50,00 Teclado TC60 mouse.gif uma única vez
R$ 400,00 Monitor 15´ M60
R$ 30,00 Mouse MS09 10/11/2020 no banco
20/11/2021
09/11/2022
1 2
[baseado em H e user]
Gerenciamento do banco de dados
Software que
permite a criação e
14
SGBD
O gerenciamento envolve
A definição de estruturas para o
armazenamento da informação;
O fornecimento de mecanismos para manipular
as informações;
Garantir a INTEGRIDADE dos dados;
15
Objetivos de um SGBD
Isolar os usuários dos detalhes mais internos do banco de dados (abstração
de dados).
Prover independência de dados às aplicações (estrutura física de
armazenamento e a estratégia de acesso).
Vantagens:
rapidez na manipulação e no acesso à informação;
gerenciamento de transações/atomicidade;
compartilhamento de dados;
16
Objetivos de um SGBD
17
Abstração de Dados
Mundo Real
Sistema Médico
Modelo Independente do
modelo de dados
Médico Consulta Paciente
Conceitual
Independente do
(modelo abstrato dos
SGBD CRM nome
dados)
Dependente do
Modelo Lógico modelo de dados Orientado a Objeto-
Independente do
Relacional
(estrutura dos dados) Objetos relacional
SGBD
Médico (CRM, Nome)
19
Modelos de Bancos de Dados
20
O Modelo de Redes
Os dados são representados por coleções de
registros e os relacionamentos por elos
556 1.000
Matheus Carlos Vila Velha
Moreira
647 5.366
801 10.533
Clientes Contas
21
O Modelo Hierárquico
Os dados e relacionamentos são representados
por registros e ligações, respectivamente.
Os registros são organizados como coleções
arbitrárias de árvores.
R2
Fundamental:
Usuário vê o B. Dados como
um conjunto de tabelas
(relações)
O Modelo Relacional
Tabela Cliente (dados)
codCliente nome rua cidade
015 Luiza Reta da Penha Vitória
Matheus Carlos Moreira Vila Velha
021
Gabriel Francisco Serra
037
codCliente nroConta
015 900
021 556
021 647
Tabela Cliente-Conta 037 647
(relacionamento) 27
037 801
Diferença entre os Modelos
26
Modelos de Arquitetura de SGBD
27
Arquitetura – Centralizada
O banco de dados centralizado se resume à centralização
dos dados em um único servidor. E este é acessado por
aplicações ou clientes;
Como estamos trabalhando com um único servidor, é
necessário que ele tenha um processamento potente e
um ótimo desempenho para gerenciar o banco de dados.
28
Arquitetura – Distribuída
O banco de dados distribuído, como o próprio nome diz, é
caracterizado pela distribuição de dados, geograficamente,
por diversos servidores ou computadores;
Para que esse tipo de banco de dados funcione, é preciso
que todos esses elementos de armazenamento de dados
estejam sincronizados e em processo constante de
atualização para que os dados fiquem íntegros em todos os
locais.
29
Funções de um SGBD
30
Instâncias e Esquemas
31
Independência dos Dados
34
Linguagem de Consulta – SQL
SQL – Structured Query Language
DDL DML
Linguagem de Linguagem de
definição de manipulação
dados de dados
Padrão ANSI
35
Linguagem de Definição de Dados (DDL)
36
Linguagem de Definição de Dados (DDL)
Exemplo
37
Linguagem de Manipulação de Dados
(DML)
39
Usuários do Banco de Dados
Programadores de Aplicações
São os usuários que escrevem os programas
de aplicação através da DML
Usuários de alto nível
Interagem com o sistema sem escrever
programas, por interfaces disponíveis nesse
ambiente
Escrevem consultas SQL e submetem à execução
sem a necessidade de escrever uma aplicação
para esse fim
40
Usuários do Banco de Dados
Usuários ingênuos/leigos
Interagem com o sistema por meio de
programas aplicativos
Exemplo: um cliente do banco invocaria um
programa para efetuar a transferência de 50
reais da conta A para a conta B
Administradores do banco de dados
Usuários mais especializados para um banco
de dados.
41
Usuários do Banco de Dados
Funções do Administrador do banco de dados
Definição do esquema
Definição de estruturas de armazenamento e
métodos de acesso
Modificação de esquema e de organização
física
Concessão de autorização para acesso aos
dados
Especificação de restrições de integridade
42
Arquitetura Geral de um SGBD
Vários
Interface componentes
Processamento trabalham em
de Consultas conjunto...
Processamento
de Transações
Acesso a
Arquivos
Base de Dados
SGBD 43
Arquitetura
Geral de
um SGBD
44
Estrutura Geral do sistema
Gerenciador de arquivos
Gerenciador do banco de dados
Processador de consultas
Pré-compilador da DML
Compilador da DDL
Arquivos
Arquivos de dados
Dicionário de dados
Índices
45
Estrutura Geral do sistema
Gerenciador de Transações
Controla a integridade dos dados no Banco de dados
Acessos simultâneos vários usuários
46
Bibliografia
SILBERSCHATZ, Abraham. Sistema de banco de dados. 6. ed. São
Paulo: Campus, 2012.
HEUSER, Carlos Alberto. Projeto de Banco de Dados. 6. ed. Porto
Alegre: Sagra Luzzato, 2008.
CHEN, Peter. Modelagem de Dados - A abordagem Entidade-
Relacionamento para Projeto Lógico. São Paulo: Makron Books, 1990.
OLIVEIRA, Celso. SQL – Curso prático. São Paulo: Novatec, 2002.
47