You are on page 1of 27

1

Banco de Dados I
Verificaremos o plano de aula
Baixar no portal
2
Por que estudar BD?
Os Bancos de Dados fazem parte do
nosso dia-a-dia:
operao bancria
reserva de hotel
matrcula em uma disciplina da universidade
cadastro na vdeo locadora

3
Conceitos bsicos
Dado: fato do mundo real que est registrado
exemplos: endereo, data

Informao: fato til que pode ser extrado direta ou
indiretamente a partir dos dados
exemplos: endereo de entrega, idade

Banco de Dados (BD): coleo de dados inter-
relacionados e persistentes que representa um sub-
conjunto dos fatos presentes em um domnio de
aplicao(universo de discurso)

4
Por que usar BD?

5
Exemplo de um BD
6
Banco de dados
Banco de dados = instncia de dado +
meta-dados
Instncia de dado
Dado propriamente

Meta-dados
Dicionrio de dados
Esquema da base de dados
Acessado atravs de linguagens de definio de dados
7
Nem sempre foi assim...
Sistemas de Arquivos (armazenados em pastas, no disco):
Funcionalidades oferecidas
Registros de tamanho fixo com campos de tipos diferentes
Possibilidade de memria virtual e persistncia
ndices: hash, rvore-B
Bloqueio de arquivo e registro para concorrncia


Dados de diferentes aplicaes no esto integrados
Dados so projetados para atender uma aplicao
especfica
8
Sistemas de arquivos
Em uma fbrica com os dados em sistemas de arquivos:
Sistema para
Setor de Vendas
Sistema para
Setor de Produo
Sistema para
Setor de Engenharia
Arquivos
de vendas
Arquivos
de engenharia
Arquivos
de produo
Mesmos dados aparecem em todos os arquivos da fbrica
Teclado TC60 R$ 20,00
Monitor 15 M60 R$ 150,00
Mouse MS09 R$ 10,00
Teclado TC60 10/11/2000
Monitor 15 M60 20/11/2000
Mouse MS09 09/11/2000
Teclado TC60 teclado.gif
Monitor 15 M60 monitor.gif
Mouse MS09 mouse.gif
[baseado em Heuser]
9
Sistemas de arquivos
dados no integrados
Mesmo objeto da realidade representado vrias vezes na
base de dados
Exemplo - teclado, monitor e mouse

Redundncia no controlada de dados
No h gerncia automtica da redundncia
Redundncia leva a
inconsistncia dos dados
re-digitao de informaes
dificuldade de extrao de informaes

Dados pouco confiveis e de baixa disponibilidade
10
Sistemas de arquivos
Concorrncia
Difcil implementao
Polticas de acesso concorrente consistente so
independentes de domnio
Tolerncia a falhas
Falta de luz, erro de disco, interrupo de
funcionamento, etc
Cpias? restaurao do estado anterior? Consistncia da
base?
Segurana
Acesso diferenciado por tipo de usurio
11
Sistemas de arquivos
gerenciamento dos arquivos
Outros problemas:
Nmero mximo de arquivos
Tamanho de memria
Limitaes do tipo de arquivo, tipo de acesso
Preocupaes tcnicas junto com problemas do domnio
Exemplo: efetuar aluguel de um DVD
Sem reservas? sem multas?
Como registrar um emprstimo?
abrir arquivos (fechando outros )
carregar registros na memria (abre ndice, usa ponteiro,
estourou memria?, .)
12
Banco de dados
Em uma fbrica com os dados em bancos de
dados:
Sistema para
Setor de Vendas
Sistema para
Setor de Produo
Sistema para
Setor de Engenharia
Banco de
dados
Teclado TC60
Monitor 15 M60
Mouse MS09
R$ 20,00
R$ 150,00
R$ 10,00
10/11/2000
20/11/2000
09/11/2000
teclado.gif
monitor.gif
mouse.gif
Dados aparecem
uma nica vez
no banco
[baseado em Heuser]
13
Gerenciamento do banco de dados
BD de uma fbrica:
Sistema para
Setor de Vendas
Sistema para
Setor de Produo
Sistema para
Setor de Engenharia
Banco de
dados
Teclado TC60
Monitor 15 M60
Mouse MS09
R$ 20,00
R$ 150,00
R$ 10,00
10/11/2000
20/11/2000
09/11/2000
teclado.gif
monitor.gif
mouse.gif
SGBD
Software que permite
a criao e gerncia
da base de dados
Exemplos destes Softwares:
Livres:
FireBird, PostgreSQL e
MySQL
Comerciais (pagos)
Oracle, DB2 e
SQLServer
14
Sistema Gerenciador de Bancos de Dados
(SGBD)
Um SGBD (Sistema Gerenciador de
Banco de Dados) consiste em uma
coleo de dados inter-relacionados e
em um conjunto de programas para
acess-los

SGBDs so projetados para gerenciar
grandes grupos de informaes
15
SGBD
O gerenciamento envolve
A definio de estruturas para o
armazenamento da informao
O fornecimento de mecanismos para
manipular as informaes
Quando vrios usurios acessam os
dados o SGBD precisa garantir a
INTEGRIDADE dos dados, evitando
resultados anmalos
16
Objetivos de um SGBD
Isolar os usurios dos detalhes mais internos do banco de dados
(abstrao de dados).
Prover independncia de dados s aplicaes (estrutura fsica de
armazenamento e estratgia de acesso).
Vantagens:
rapidez na manipulao e no acesso informao,
reduo do esforo humano (desenvolvimento e utilizao),
reduo da redundncia e da inconsistncia de informaes,
reduo de problemas de integridade,
compartilhamento de dados,
aplicao automtica de restries de segurana,
controle integrado de informaes distribudas fisicamente.

17
Objetivos de um SGBD
O grande objetivo de um SGBD prover
aos usurios uma viso ABSTRATA dos
dados
O sistema omite certos detalhes de como os
dados so armazenados e mantidos
Mas oferece mecanismos eficientes para
BUSCA e ARMAZENAMENTO

18
Arquitetura Geral de um SGBD

Interface
Processamento
de Transaes
Acesso a
Arquivos
Processamento
de Consultas
Modelagem de
Dados (projeto
estrutural)
Base de Dados
SGBD
19
Abstrao de Dados
Mundo Real
Modelo
Conceitual
(modelo abstrato dos
dados)
Independente do
modelo de dados
Independente do
SGBD
Modelo Lgico
(estrutura dos dados)
Dependente do
modelo de dados
Independente do
SGBD
Relacional
Orientado a
Objetos
Objeto-
relacional
Modelo Fsico
Dependente do
modelo de dados
Dependente do SGBD
Organisao fsica dos dados
Estruturas de armazenamento de dados
ndices de acesso
Mdico
Paciente
Consulta
CRM nome
Mdico (CRM, Nome)
Sistema Mdico
20
Modelos de Dados
21
Modelos de Dados
Um modelo de dados uma coleo
de ferramentas conceituais para a
descrio de dados, relacionamentos,
semntica de dados e restries de
consistncia


22
Modelos de Dados
Modelos de Dados (conceitual)
Entidade-Relacionamento (ER)
Orientado a Objetos (OO)
Modelos de Dados (lgicos)
Redes
Hierrquico
Relacional
Objeto-relacional
Orientado a Objetos

Modelos mais antigos
23
Exemplo das Informaes em um
Banco de Dados
nome rua cidade conta saldo
Jos Figueiras Campinas 900 55
Joo Laranjeiras Campinas 556 1.000
Joo Laranjeiras Campinas 647 5.366
Antnio Ip So Paulo 647 5.366
Antnio Ip So Paulo 801 10.533
24
O Modelo de Redes
Clientes Contas
Jos Figueiras Campinas 900 55
Joo Laranjeiras Campinas
556 1.000
Antnio
Ip So Paulo
647 5.366
801 10.533
Os dados so representados por colees de
registros e os relacionamentos por elos
25
O Modelo Hierrquico
Os dados e relacionamentos so representados
por registros e ligaes, respectivamente.
Os registros so organizados como colees
arbitrrias de rvores.
Jos Figueiras Campinas
900 55
Joo Laranjeiras Campinas
556 1.000
Antnio Ip So Paulo
647 5.366
801 10.533 647 5.366
26
O Modelo Relacional
nro-conta saldo
900 55
556 1.000
647 5.366
801 10.533
Tabela Conta (dados)
Tabela Cliente (dados)
cd-cliente nome rua cidade
015 Jos Figueiras Campinas
021 Joo Laranjeiras Campinas
037 Antnio Ip So Paulo
cd-cliente nro-conta
015 900
021 556
021 647
037 647
037 801
Tabela Cliente-Conta
(relacionamento)
27
Diferena entre os Modelos
O modelo relacional no usa ponteiros
ou ligaes

O modelo relacional relaciona registros a
partir de valores do registro

You might also like