Escolar Documentos
Profissional Documentos
Cultura Documentos
Bacharelado em
Sistemas de Informao
BANCOS DE DADOS
Aula 2
Banco de Dados / 2
Abstrao de Dados
O que abstrao?
SISTEMAS DE
INFORMAO
Banco de Dados / 3
Abstrao de Dados
O que abstrao?
Michaelis - Moderno Dicionrio da Lngua Portuguesa
abs.tra.o
sf (lat abstractione) 1 Ato ou efeito de abstrair ou abstrair-se.2 Considerao
das qualidades independentemente dos objetos a que pertencem. 3 Idia
metafsica, teoria demasiado vaga que no pode receber
aplicao. 4 Concentrao, meditao; alheamento do
esprito. 5 Psicol Processo pelo qual se isolam atributos de um objeto,
considerando os que certos grupos de objetos tenham em
comum. 6 Filos Operao pela qual o esprito considera separadamente
coisas inseparveis na natureza. 7 Qum Extrao ou separao por meio
de evaporao, de princpios que estavam unidos quimicamente a outra
substncia. sf pl Conjeturas sem fundamento real; devaneios, quimeras,
sonhos, utopias; descuidos, esquecimentos.
SISTEMAS DE
INFORMAO
Banco de Dados / 4
Abstrao de Dados
SGBD: estruturas complexas para a representao
dos dados no banco de dados.
Complexidade precisa ser escondida dos
usurios.
Nveis de abstrao: grande vantagem dos SGBD
Nvel fsico: mais baixo descreve como os dados so
armazenados
Nvel conceitual ou lgico: quais dados so
armazenados e quais relacionamentos entre eles.
Nvel viso: expe apenas parte do banco de dados.
SISTEMAS DE
INFORMAO
Banco de Dados / 5
Abstrao de Dados
Viso 1
Nvel de Viso
Viso 2
...
Nvel Conceitual
Nvel Fsico
SISTEMAS DE
INFORMAO
Viso N
Banco de Dados / 6
Abstrao de Dados
Analogia com o conceito de tipos de dados em
linguagens de programao (tipo de dados em
Pascal)
Banco de Dados / 7
Abstrao de Dados
Conta (numero-conta ,
saldo)
Empregado (numeroempregado, salrio)
Viso 2
Nvel
Conceitual
Nvel
Fsico
...
Viso N
Banco de Dados / 8
Abstrao de Dados
Nvel conceitual ou lgico
registro descrito por um tipo
definido. definida tambm interrelao entre estes tipos de
registros. Programadores
trabalham com este nvel de
abstrao; DBAs tambm podem
trabalhar neste nvel.
Nvel de viso usurios do
computador vem um conjunto de
programas de aplicao que
escondem os detalhes dos tipos
de dados. Vises tambm
fornecem mecanismos de
segurana.
SISTEMAS DE
INFORMAO
Viso 2
Nvel
Conceitual
Nvel
Fsico
...
Viso N
Banco de Dados / 9
Instncias e Esquemas
instncia conjunto de informaes contidas em
determinado BD em um dado momento.
esquema projeto geral do BD mudados com
pouca frequncia.
Analogia com linguagem de programao:
var ClienteNovo: cliente
rea de memria que contm um registro do tipo cliente.
Valor de ClienteNovo em um dado momento anlogo
instncia.
Definio do tipo anlogo ao esquema.
SISTEMAS DE
INFORMAO
Banco de Dados / 10
Instncias e Esquemas
Sistemas de BD possuem diversos esquemas, referentes aos
nveis de abstrao.
nvel mais baixo = esquema fsico
nvel intermedirio = esquema lgico
nvel mais alto = subesquemas.
Nvel de Viso
Sistemas de BD do suporte a:
Viso 1
Viso 2
um esquema fsico
um esquema lgico
Nvel
Conceitual
vrios subesquemas.
Nvel
Fsico
SISTEMAS DE
INFORMAO
...
Viso N
Banco de Dados / 11
Independncia de Dados
O que independncia?
SISTEMAS DE
INFORMAO
Banco de Dados / 12
Independncia de Dados
Capacidade de modificar a definio dos
esquemas em determinado nvel, sem afetar o
esquema do nvel superior
Independncia de dados fsica:
fsica: modifica o esquema
fsico sem que, com isso, qualquer programa aplicativo
precise ser reescrito (ocasionais para aumento de
desempenho).
Independncia de dados lgica:
lgica: modifica o esquema
lgico sem que, com isso, qualquer programa aplicativo
precise ser reescrito (sempre que uma estrutura lgica
do BD alterada) mais difcil de ser atingida.
SISTEMAS DE
INFORMAO
Banco de Dados / 13
Modelos de Dados
O que um modelo?
SISTEMAS DE
INFORMAO
Banco de Dados / 14
Modelos de Dados
Coleo de ferramentas conceituais para
descrio dos dados, relacionamentos entre os
dados, semntica e restries dos dados.
Trs grupos:
Modelos lgicos baseados em objetos
Modelos lgicos baseados em registros
Modelos de dados fsicos
SISTEMAS DE
INFORMAO
Banco de Dados / 15
Viso
1
Viso
2
...
Nvel
Conceitual
Exemplos:
Modelo Entidade-Relacionamento
Modelo Orientado a Objeto
Modelo Semntico de Dados
Modelo Funcional de Dados
SISTEMAS DE
INFORMAO
Nvel
Fsico
Viso
N
Banco de Dados / 16
nmero
cidade
saldo
cliente
cliente
conta
SISTEMAS DE
INFORMAO
conta
Banco de Dados / 17
SISTEMAS DE
INFORMAO
Banco de Dados / 18
modelo relacional
modelo de rede
modelo hierrquico
SISTEMAS DE
INFORMAO
Viso
1
Viso
2
...
Nvel
Conceitual
Nvel
Fsico
Viso
N
Banco de Dados / 19
Cidade
Lus
Marlia
Nmero
Conta
900
Bauru
556
Bauru
647
So Paulo
801
So Paulo
647
Rua X, 123
SISTEMAS DE
INFORMAO
Nmero
Conta
900
Saldo
556
458,98
647
561,89
801
654,12
678,00
Banco de Dados / 20
Rua X, 123
Marlia
Heitor
Adamantina
Joana
Rua da Curva, 89
So Paulo
SISTEMAS DE
INFORMAO
900
6 7 8 ,0 0
556
4 5 8 ,9 8
647
5 6 1 ,8 9
801
6 5 4 ,1 2
Banco de Dados / 21
Rua X, 123
Marlia
Heitor
900
6 7 8 ,0 0
556
4 5 8 ,9 8
Joana
647
647
5 6 1 ,8 9
SISTEMAS DE
INFORMAO
Rua da Curva, 89
So Paulo
Adamantina
5 6 1 ,8 9
801
6 5 4 ,1 2
Banco de Dados / 22
SISTEMAS DE
INFORMAO
Banco de Dados / 23
Banco de Dados / 24
Banco de Dados / 25
Gerenciamento de transaes
Transao coleo de operaes que desempenha uma unidade lgica
nica de trabalho dentro da aplicao do sistema de BD.
Cada transao uma unidade de atomicidade e consistncia BD estava
consistente antes do incio da transao e deve permanecer consistente
aps a sua concluso.
Responsabilidade do programador: definir as transaes de modo
apropriado
Responsabilidade do SGBD:
Assegurar atomicidade
Assegurar durabilidade valores devem ser consistentes mesmo se houver
falhas no sistema
Detectar falhas e recuperar o BD ao estado antes da transao, se necessrio
Controlar interaes entre transaes concorrentes para garantir consistncia do
BD
SISTEMAS DE
INFORMAO
Banco de Dados / 26
Gerenciador de Memria
Qual a funo da memria do computador?
SISTEMAS DE
INFORMAO
Banco de Dados / 27
Gerenciador de Memria
BD exigem grandes volume de memria (at
Terabytes)
Dados transportados entre discos e memria
principal, conforme a necessidade Sistema
de BD deve minimizar necessidade de
movimentao
Performance (tempo de resposta) depende
da eficincia das estruturas de dados usadas e
das operaes entre elas.
SISTEMAS DE
INFORMAO
Banco de Dados / 28
Gerenciador de Memria
Gerenciador de memria:
mdulo de programas para interface entre o
armazenamento de dados em um nvel baixo e
consultas e programas de aplicao submetidos ao
sistema.
responsvel pela interao com gerenciamento de
arquivos do SO.
traduz comandos DML em comandos de baixo nvel.
responsvel pelo armazenamento, recuperao e
atualizao de dados nos BD.
SISTEMAS DE
INFORMAO
Banco de Dados / 29
Definio do esquema
Definio da estrutura de dados e mtodo de acesso
Modificaes da organizao fsica do esquema
Concesso de autorizao para acesso aos dados
Especificao de regras de integridade
SISTEMAS DE
INFORMAO
Banco de Dados / 30
Banco de Dados / 31
Programadores de
aplicao
Programas
de aplicao
Chamadas
de rotinas
USURIOS
Pr-compilador da
DML
Usurios
sofisticados
Administrador
do BD
Consultas
Esquema de
Banco de Dados
Processador
de consultas
Gerenciador do
Banco de Dados
Gerenciador
de arquivos
Arquivos
de dados Dicionrio
memria
de dados
de disco
SISTEMAS DE
INFORMAO
Compilador da
linguagem de DDL
Sistema gerenciador
do banco de dados
Banco de Dados / 32
Exerccios
1. Explique a diferena entre a independncia de
dados fsica e lgica.
2. Quais as principais funes de um DBA?
3. O que abstrao de dados?
4. Diferencie instncias e esquemas. D um exemplo.
5. Diferencie DDL e DML
6. O que uma transao? Qual a responsabilidade
do programador e do SGBD sobre as transaes?
SISTEMAS DE
INFORMAO
Banco de Dados / 33
Bacharelado em
Sistemas de Informao
BANCOS DE DADOS
Aula 2