Você está na página 1de 29

Banco de Dados

Cincia da Computao
UFG Catalo/GO
Prof. Mrcio Antnio Duarte

Banco de Dados
uma coleo logicamente coerente de dados
relacionados com algum significado inerente;
Exemplos de bancos de dados:
- Lista telefnica (papel ou eletrnica).
- Fichas do acervo de uma biblioteca.

Sistemas de Banco de Dados
Consiste em uma coIeo de dados Inter-
reIacionados e uma coIeo de programas para
prover o acesso a esses dados. O objetivo
principaI de um sistema de banco de dados
prover um ambiente que seja adequado e
eficiente para uso na recuperao e
armazenamento de informaes.

Sistema de Gerncia de Banco de Dados
Conjunto de programas que permite a criao e
manuteno de BDs.
Definio do BD:
- EnvoIve a especificao dos tipos de dados a
serem armazenados no BD mais a descrio
de cada tipo de dados;
Construo do BD:
- Processo de armazenar os dados em um meio
controIado peIo SGBD;
ManipuIao do BD:
- IncIui funes como consuIta para
recuperao de dados, atuaIizao do BD e
gerao de reIatrios;

Vantagens do uso de um SGBD
Controle de Redundncia.
Compartilhamento de Dados.
Restrio a Acesso no Autorizado.
Representao de Relacionamentos
Complexos entre Dados.
Tolerncia a Falhas.

Desvantagens do uso de um SGBD
Alto investimento inicial em software e Hardware.
Generalidade que um SGBD fornece na definio
e processamento de dados.
Sobrecarga na proviso de controle de
segurana, controle de concorrncia, recuperao
e integrao de funes.
M administrao do DBA pode comprometer a
segurana e integridade do sistema.

Caracterstica fundamentaI de SGBDs
SGBDs contm o BD mais uma definio completa
do BD armazenada no CATLOGO
Catlogo ou dicionrio de dados contm META
DADOS:
informao sobre a estrutura de cada arquivo
formato de armazenamento
tipo de cada item de dados
restries sobre os dados
No proc. de arquivos tradicional, a definio dos
dados faz parte do programa de aplicao.

Abordagem SGBD x Processamento
Arquivos TradicionaI
Suportado por sistema operacional convencional.
Registros permanentes so guardados em
diversos arquivos.
So desenvolvidos programas aplicativos
manipular os registros.
Exemplo: cdigo Pascal para definir registros:

type cliente = record of
nome: string;
endereo: string[50];
fone: string[10];
...
End;

Processamento de Arquivos
TradicionaI: Desvantagens
Redundncia e inconsistncia de dados
Dificuldade no acesso aos dados
Dificuldades no isolamento de dados:
estrutura do BD modificada, o programa que
tambm deve ser mudado;
Anomalias de acesso concorrente
Problemas de segurana
Problemas de integridade

Usurios de um sistema de BD
Administrador do BD (DBA)
- ResponsveI por autorizar o acesso ao BD,
coordenar e monitorar seu uso.
Projetista do BD
- ResponsveI por identificar os dados a serem
armazenados no BD e escoIher as estruturas
apropriadas para representar e armazenar
essesdados
Programador de apIicaes
Usurio finaI
- Usa as apIicaes feitas peIo programador de
apIicaes mais uma Iinguagem de consuIta do BD
(ex. SQL)


Uma apIicao depende dos dados quando:
- impossveI modificar a estrutura de
armazenamento ou a estratgia de acesso
sem afetar a apIicao.
Isto indesejveI pois:
- apIicaes diferentes necessitam de vises
diferentes dos mesmos dados
- O DBA deve ter autonomia para modificar a
estrutura de armazenamento ou a estratgia
de acesso sem mudar as apIicaes
existentes
Independncia de Dados

Conjunto de conceitos que podem ser para
descrever o BD.
ModeIos Conceituais (de aIto nveI ou modeIos
Igicos baseados em objetos)
Provem conceitos prximos aos percebidos
muitos usurios, tais como entidades,
atributos e reIacionamentos
ModeIo de Dados

ModeIos de ImpIementao (ou modeIos Igicos baseados
em registros)
- Tm conceitos que podem ser entendidos peIos usurios
e no esto distantes da organizao fsica dos dados.
Usados em SGBDs comerciais.
Usam estruturas de registros.
- ExempIos: modeIo reIacionaI, modeIo hierrquico,
modeIo rede.
ModeIos Fsicos (ou de baixo nveI)
Fornece uma viso mais detaIhada do modo como os
dados esto reaImente armazenados no computador.
ModeIo de Dados

Esquema:
Definio do BD que especificada durante
projeto e em geral no muda freqentemente fica
armazenado no catlogo.
Instncia:
Dados armazenados no BD em um momento
Particular instncias ficam armazenadas no BD.
Esquemas e Instncias

NveI Interno:
- Mais prximo do armazenamento fsico. Emprega-se
o modeIo de dados fsico para descrever detaIhes de
armazenamento;
NveI ConceituaI:
- Descreve a estrutura compIeta do BD para a
comunidade de usurios. uma descrio gIobaI do
BD que esconde detaIhes da estrutura fsica de
armazenamento (modeIo de dados de aIto nveI ou de
impIementao);
NveI Externo:
- Mais prximo dos usurios. Formado por um
conjunto de vises de usurios ou esquemas
externos;
Arquitetura de SGBD: 3 nveis
(ANSI/SPARC)


A maioria dos SGBDs no separa os trs
nveis compIetamente.
AIguns incIuem detaIhes de nveI fsico no
nveI conceituaI.
Notar que os trs esquemas so apenas
descries de dados. Os dados que reaImente
existem esto no nveI fsico.
Arquitetura de 3 nveis


Independncia Fsica
- Modificao no esquema fsico sem reescrever os
programas apIicativos ou o esquema conceituaI
(desempenho).
Independncia Lgica
- Modificao do esquema conceituaI sem reescrever
os programas apIicativos.
Independncia de dados:
- Mudando o esquema em aIgum nveI, pode-se deixar
o esquema do nveI superior inaIterado e aIterar
apenas o mapeamento entre os dois nveis.
Arquitetura de 3 nveis
- mais fciI obter independncia de dados.
Independncia de Dados -
Redefinio

DDL - Data Description Language
- NveI conceituaI e interno
SDL - Storage Description Language
- NveI interno
VDL - View Definition Language
- NveI externo
DML - Data ManipuIation Language
- manipuIao do BD: recuperao, insero,
excIuso, modificao
Linguagens de SGBD

Procedurais (baixo nveI)
- Recuperam registros individuaImente e processam
cada registro separadamente
DEVE ser embutida em uma Iinguagem de
programao (hospedeira)
No procedurais (aIto nveI)
- So capazes de expressar operaes compIexas
de maneira concisa
- Pode ser embutida em uma Iinguagem
deprogramao de propsito geraI
- Ex: SQL: seIect nome, saIrio
from Funcionrio
where depto= 3
- Quando utiIizada de maneira interativa e
independente
DML

Quanto ao modeIo de dados
ReIacionaI: representa o BD como uma
coIeo de tabeIas
- No usa ponteiros e eIos - usa reIaes
CIassificao dos SGBDs

Quanto ao modeIo de dados
Hierrquico: representa o BD como uma
coIeo de rvores.
CIassificao dos SGBDs

Quanto ao modeIo de dados
Redes: Forma ampIiada da estrutura
hierrquica.
- Representa o BD como um grafo arbitrrio.
- Um registro pode ter quaIquer nmero de
pares.
CIassificao dos SGBDs

Quanto ao nmero de usurios
- mono-usurio
- muIti-usurio
Quanto a distribuio dos dados e software
- centraIizado
- distribudo:
homogneo
heterogneo (federados)
- obs: um BD centraIizado pode suportar
mItipIos usurios dispersos
CIassificao dos SGBDs

- Cada usurio percebe o BD como se eIe
fosse monousurio e centraIizado, mas o dado
reside fisicamente em diversos Iocais.
BD Distribudo e MuItiusurio

PartiIhamento de Dados e ControIe da
Distribuio. O usurio de um n pode ser
capaz da fazer acesso a dados disponveis em
um outro n.
ConfiabiIidade e DisponibiIidade.
Se um n faIha o outro assume e continua
operando.
AceIerao de processamento de consuItas.
Se uma consuIta envoIve dados em diversos
ns, possveI dividi-Ia em subconsuItas que
podem ser executadas em paraIeIo.
Vantagens da Distribuio
dos Dados

Custo de desenvoIvimento de software:
mais difciI impIementar um BD distribudo
e, portanto, mais caro.
Maior potenciaI de defeitos:
Ns operam em paraIeIo, mais difciI
assegurar que os aIgoritmos esto corretos.
Aumento da sobrecarga de processamento:
A troca de mensagens e a computao
adicionaI requeridas para reaIizar a
coordenao interns so uma forma de
sobrecarga.
Desvantagens da Distribuio
dos Dados