You are on page 1of 15

BANCO DE DADOS

Aula Teórica – Módulo 01

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 1

Arquitetura de um Sistema de
Banco de Dados
Usuários/programadores
Sistema de
Banco de Programa de aplicações/consultas
dados

SGBD
Software para processar
Consultas/Programas

Software para acessar


dados armazenados

Definição da Base de
Base de dados
Dados Armazenada
Armazenada

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 2

1
Vantagens do BD
A utilização de um BD oferece um
controle centralizado
de seus dados operacionais com as seguintes
vantagens:
• Redundância pode ser reduzida: o sistema dever ter
conhecimento da redundância e assumir a
responsabilidade de propagar as atualizações;
• Inconsistência pode ser evitada: através de regras bem
definidas, os dados são estruturados garantindo-se a
consistência dos dados armazenados;
• concorrência entre aplicações: os dados podem ser
compartilhados por diversas aplicações ao mesmo
tempo;
• Segurança: a integridade pode ser mantida com a
aplicação de restrições de segurança;
Prof. Plinio Aquino - plinio.aquino@fei.edu.br 3

Vantagens do BD
• Pode-se afirmar que quase todas as vantagens e
propriedades de um BD são possíveis graças à
forma como são esquematizados e
estruturados os seus dados.

• Para que um SGBD possa “entender” a estrutura


como os dados do banco estão armazenados, há
a necessidade que esses dados estejam
esquematizados de forma a serem interpretados
pelas funções pré-definidas no gerenciador.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 4

2
Esquema e Modelo de Dados
• Esse esquema é elaborado segundo um Modelo
de Dados.
• Um modelo de dados compreende uma
coleção de elementos de representação com
propriedades semânticas e sintáticas pré-
definidas.
• Um conjunto de elementos de representação
são devidamente agrupados e organiza-
dos para representar uma porção do “mundo
real”, constituindo um “esquema de dados”
compreensível pelo gerenciador.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 5

Arquitetura de um SGBD segundo níveis de


visão

Visão Visão Visão Visão


externa externa externa externa

Visão da
Comunidade de
Esquema Conceitual Usuários

Visão de
Esquema Interno
Armazenamento

Definição da Base de Dados


Base de Dados Armazenada
Prof. Plinio Aquino - plinio.aquino@fei.edu.br 6

3
Arquitetura
Segundo Níveis de Visão
• A arquitetura para banco de dados em níveis de
visão, apresentam três níveis, os quais são
denominados:

• Esquema externo;

• Esquema conceitual;

• Esquema interno.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 7

Arquitetura – Segundo Níveis de Visão

• O esquema interno descreve a estrutura de


armazenamento físico do banco de dados.

– O esquema interno usa um modelo de dados


físico e descreve os detalhes completos de
armazenamento de dados e caminhos de
acesso para banco de dados.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 8

4
Arquitetura – Segundo Níveis de Visão
• O esquema conceitual descreve a estrutura do
banco de dados para toda a comunidade de
usuários.
– O esquema conceitual esconde os detalhes
das estruturas de armazenamento físico;
– Concentra-se na descrição das entidades,
tipos de dados, relacionamentos, operações
dos usuários, e restrições.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 9

Arquitetura – Segundo Níveis de Visão


• O esquema externo inclue vários esquemas
externos ou visões dos usuários.
– Cada esquema externo:
• descreve a parte da base de dados que um
grupo particular está interessado;
• e oculta o resto do banco para o grupo de
usuários.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 10

5
Independência de Dados
• Essa estrutura em níveis permite a
implementação de um conceito extremamente
importante, o qual é denominado independência
de dados.
• A independência de dados pode ser definida
como a capacidade de se alterar o esquema em
um nível de um sistema de banco de dados sem
ter que alterar o próximo nível.
• A independência pode ser lógica ou física.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 11

Independência de Dados
• Independência lógica de dados - é a
capacidade de se alterar o esquema conceitual
sem ter que alterar o esquema externo.

• Independência física de dados - é a


capacidade de se alterar o esquema interno
sem ter que alterar o esquema conceitual ou o
esquema externo.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 12

6
Projeto de BD Relacional
• A abordagem relacional aos dados é baseada
na observação de que arquivos podem ser
considerados como relações matemáticas.
• Conseqüentemente, a teoria elementar de
relações pode ser usada para lidar com vários
problemas práticos com os dados desses
arquivos.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 13

Principais Características do BD Relacional

• Estrutura Tabular: os dados são representados


em forma de tabelas aonde temos linhas e
atributos.
• Álgebra Relacional: a manipulação dessas tabelas
é feita através de operadores, por meio dos quais
se podem fazer qualquer tipo de acesso a uma
tabela ou a um conjunto delas (seleção, junção,
etc).

Continua…

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 14

7
Principais Características do BD Relacional

• Dicionário de Dados Integrado, Ativo e Dinâmico:


consistência automática de campos, integridade
dos dados, referência cruzada dos dados.
• Navegação automática entre tabelas e pesquisa
por qualquer dado.
• Assegurar regras de Integridade Referencial;

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 15

Regras para um BD Relacional


• Regras que fazem parte do teste para determinar
se o BD é considerado completamente
relacional:
• Regra Base: deve ser capaz de gerenciar o BD
exclusivamente através de suas capacidades
relacionais;
• 1) Regra da Informação: toda a informação é
apresentada explicitamente a nível lógico e exatamente
de uma maneira – por valores em tabelas;
– Mesmo nomes de tabelas, colunas, domínios devem ser
representados em tabelas;

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 16

8
Regras para um BD Relacional
• 2) Regra do Acesso Garantido: todo e cada dado deve
ter a garantia de ser logicamente acessível recorrendo-
se a uma combinação do nome da tabela, valor da chave
primária e nome da coluna;
• 3) Tratamento Sistemático de Valores Nulos: os valores
nulos devem ser suportados;
• 4) Repositório em linha baseado no Modelo Relacional: a
descrição do BD é representada ao nível lógico da
mesma maneira que os usuários autorizados podem
aplicar, para sua interrogação, a mesma linguagem
relacional que aplicam para os dados regulares;

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 17

Regras para um BD Relacional


• 5) Sublinguagem Detalhada de Dados: pode suportar
várias linguagens e modalidades de uso terminal. Deve
haver pelo menos uma linguagem para cuja as instruções
façam:
– Definição de Dados;
– Definição de Visão;
– Manipulação de Dados;
– Restrições de integridade;
– Autorização;
– Limites de Transação (commit e rollback).

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 18

9
Regras para um BD Relacional
• 6) Regra da Atualização de Visão: todas as visões que
são teoricamente atualizáveis, são também atualizáveis
pelo sistema;
• 7) Inserção, atualização e eliminação de alto nível: a
capacidade de tratar uma relação básica ou uma relação
derivada como um único operando;
• 8) Independência de dados físicos: os programas de
aplicação permanecem logicamente inalterados sempre
que quaisquer mudanças são feitas, quer nas
representações de armazenamento ou nos métodos de
acesso;
• 9) Independência de dados lógicos: os programas de
aplicação permanecem logicamente inalterados quando
são feitas nas tabelas básicas mudanças de qualquer
tipo.
Prof. Plinio Aquino - plinio.aquino@fei.edu.br 19

Regras para um BD Relacional


• 10) Independência de Integridade: as restrições de
integridade específicas devem ser definíveis na
sublinguagem de dados relacional e armazenáveis no
repositório, não nos programas de aplicação.
• 11) Independência de Distribuição: mesmo que haja
posterior distribuição do BD, os programas de aplicação
não devem sofre modificações;
• 12) Regra de não subversão: se um sistema relacional
possui uma linguagem de nível baixo, esse nível não
pode ser usado para subverter ou ignorar as regras de
integridade e restrições expressas na linguagem
relacional de nível superior.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 20

10
Esquemas e Instâncias
• A descrição de um banco de dados é chamada
Esquema do banco de dados.
• A maioria dos modelos de dados possuem
algumas convenções gráficas para diagramar o
esquema.
• Exemplo de um diagrama de esquema:

Estudante NroMat Nome_Estudante Data_nasc CPF

Disciplina NroDiscip Nome_Discip Prof Departamento

Pré-requisito NroDiscip Nro_Pre_Requisitos

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 21

Esquemas e Instâncias
• Os dados que estão armazenados em um
determinado momento de tempo no banco de
dados constituem uma Instância do banco de
dados.
• Dessa forma, os estudantes, cursos e pré-
requisitos armazenados em um determinado
instante constituem uma instância.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 22

11
Modelo Entidade-Relacionamento
• O MER foi apresentado por Peter Chen em
1976.
• O modelo baseia-se em representar os dados
do “mundo real” através da definição de
conjuntos de entidades e o relacionamento
entre esses conjuntos de entidades.
• Um conjunto de entidades representa um
conjunto de elementos do mundo real, como
por exemplo, um conjunto Pessoa
representando inúmeras pessoas, etc.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 23

Modelo Entidade-Relacionamento
• Um elemento do conjunto de entidades é
definido como uma Entidade, sendo identificado
por características individuais definidas através
do conceito de atributos.
• Assim, uma Pessoa pode ser caracterizada
através dos atributos Nome, CPF, Sexo, Idade,
Altura, etc.
• Cada vez que são atribuídos valores para os
atributos de um conjunto de entidades, tem-se a
instanciação de uma ocorrência de uma
entidade da vida real.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 24

12
Modelo Entidade-Relacionamento
• Cada atributo deve ser definido como
pertencente a um domínio, e os valores desses
atributos devem pertencer a esses domínios.

• Os atributos desses conjuntos de entidades


são representados através de seus nomes
envoltos em elipses (círculos ou indicados por
setas), as quais ficam ligadas ao conjunto de
entidades que está caracterizando.
Prof. Plinio Aquino - plinio.aquino@fei.edu.br 25

Modelo Entidade-Relacionamento
• Quando um determinado atributo possui um
valor para cada entidade que caracteriza,
então é denominado atributo monovalorado.

• Quando um atributo possui mais de um valor


para cada entidade que caracteriza, então é
denominado atributo multivalorado.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 26

13
Modelo Entidade-Relacionamento
• Um atributo monovalorado ou multivalorado
pode ter vários “subcampos”. Nesse caso, o
atributo é denominado atributo composto.

• Quando o valor de um atributo é obtido através


de valores de outros atributos, esse atributo é
denominado atributo derivado.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 27

Modelo Entidade-Relacionamento
• Um Conjunto de Entidades possue vários
atributos para caracterizá-lo.
• Dentre esses atributos, deve-se sempre definir
um atributo ou um conjunto de atributos, que
com seus valores consiga identificar uma
única Entidade dentro do Conjunto de
Entidades.
• Esse atributo ou Conjunto de Atributos é
denominado Chave.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 28

14
Chave
• Uma Chave deve ser, por definição, mínima.
• Mínima, não no sentido de ser composta pelo menor
número de atributos possível, mas no sentido de que se
a chave for composta, nenhum atributo que a compõe
poderá ser retirado, e ainda sim, a composição
resultante continuar sendo Chave.
• A notação adotada é a sublinhação do atributo ou
conjunto de atributos em questão.
• Quando um conjunto de atributos contém uma chave,
esse conjunto forma uma superchave.

Prof. Plinio Aquino - plinio.aquino@fei.edu.br 29

Agência de Turismo
• Deseja-se criar um banco de dados para uma agência de
turismo, contendo informações sobre recursos oferecidos
pela cidades que fazem parte da programação de turismo
da agência.
• As informações a serem mantidas sobre cada cidade
referem-se a hotéis, restaurantes e pontos turísticos.
• Sobre os hotéis deseja-se guardar seu nome,endereço,
categoria (5 estrelas, 4 estrelas etc), os tipos de
apartamentos existentes, o valor da diária de acordo com
o tipo do apartamento.
• Sobre cada cidade deve-se armazenar seu nome e
estado.
• Sobre os restaurantes é de interesse guardar o nome,
endereço e a categoria (de luxo, simples, etc).
• Quanto ao ponto tur ístico deseja -se manter uma
descrição do mesmo e o endereço.
Prof. Plinio Aquino - plinio.aquino@fei.edu.br 30

15

You might also like