Modelos de Dados

Propaganda
Banco de Dados



Gerenciamento de Arquivos
Sistema Gerenciador de Banco de Dados
Modelos de Dados
Gerenciamento de
Arquivos

Gerenciamento de Arquivos
Gerenciamento de Arquivos

Em uma indústria são executadas três funções:
◦ Vendas
 Contato com os clientes, fornecimento de cotações de preços,
vendas e informações sobre produtos;
◦ Produção
 Atividades relativas à produção: planejamento da produção e
controle do que foi produzido;
◦ Compras
 Atividades relacionadas à aquisição de insumos necessários à
produção, cotação de preços junto a fornecedores, compras e
acompanhamento de fornecimento.

Os dados referentes aos produtos são usados em
todas as funções acima;
Gerenciamento de Arquivos
Produção
Arquivos Produção
produtos
Vendas
Arquivos Vendas
produtos
Compras
Arquivos Compras
produtos

Se cada uma das funções acima for informatizada de forma separada, sem
considerar a informatização das demais funções, pode ocorrer que, para
cada uma das funções, seja criado um arquivo separado para produtos.

Surge o problema de redundância de dados. Uma informação está
representada várias vezes. Esta situação trás diversos problemas:
◦ Entrada repetida da mesma informação; pode resultar em erros de transcrição de dados
◦ Inconsistência de dados; a estrutura das informações sobre produto pode ser diferente
para os diversos sistemas.
Gerenciamento de Arquivos
Produção
Vendas
Compras
Banco de Dados
produtos

A solução para evitar a redundância de informações é o compartilhamento de
dados.

Cada informação é armazenada uma única vez, sendo acessada pelos vários
sistemas.

Ao conjunto de arquivos integrados que atendem a um conjunto de sistemas dá-se
o nome de Banco de Dados.

A estrutura interna dos arquivos passa a ser mais complexa, pois devem ser
construídos de forma a atender às necessidades dos diferentes sistemas.

É necessário um sistema sofisticado para gerenciar os dados do banco de dados.
Sistema
Gerenciador de
Banco de Dados
(SGBD)
Sistema
Gerenciador de Banco de Dados
(SGBD ou DBMS)
Sistema Gerenciador de Banco de
Dados (SGBD)
É um sistema computadorizado de
armazenamento de registros;
 Os usuários desse sistema podem realizar
diversas operações sobre tais arquivos:

◦
◦
◦
◦
Acrescentar novos objetos/elementos;
Inserir novos dados;
Buscar/alterar/eliminar dados;
Remover objetos/elementos do banco de dados;
Sistema Gerenciador de Banco de
Dados (SGBD)




Coleção de dados inter-relacionados e um conjunto
de programas (softwares) para acessar esses dados.
O principal objetivo de um SGBD é proporcionar
um ambiente eficiente para armazenar e recuperar
dados.
Os SGBDs são concebidos para gerenciar grandes
quantidades de dados.
O gerenciamento dos dados envolve tanto a
definição de estruturas para armazenamento dos
dados como a implementação de mecanismos para a
manipulação desses dados.
Sistema Gerenciador de Banco de
Dados (SGBD) - componentes

Hardware
◦ meios de armazenamento

Dados
◦ depósito de dados
armazenados.

Software
◦ Entre os dados e os usuários
do sistema encontra-se uma
camada de software que é o
sistema de gerenciamento de
banco de dados (SGBD).

Usuários
◦ Programador de sistemas
◦ Usuário final
◦ DBA
Sistema Gerenciador de Banco de
Dados (SGBD) - objetivos

Independência de dados
◦ Capacidade de permitir que haja uma evolução na descrição de dados, sem
que os sistemas ou aplicações (os programas) tenham de ser alterados.

Controle de redundância dos dados
◦ Controle centralizado dos dados compartilhados por diversas aplicações,
reduzindo a repetição de dados a um mínimo.

Segurança de dados
◦ Garantia de integridade e controle de acesso, que visam resguardar o banco
de dados de uma possível perda ou destruição de dados;
◦ Capacidade de restauração parcial ou total do banco de dados através de
cópias

Privacidade dos dados
◦ Controles para que os dados possam ser acessados somente por pessoa
autorizada
Sistema Gerenciador de Banco de
Dados (SGBD) - vantagens
Um Banco de Dados proporciona à empresa um
controle centralizado de seus dados
operacionais, um de seus ativos mais valiosos.
 Dentre as diversas vantagens de um SGBD,
pode-se destacar as seguintes:

◦
◦
◦
◦
◦
Eliminação de redundâncias de dados armazenados;
Evitar inconsistência de dados;
Os dados podem ser compartilhados;
Fácil utilização de padrões;
Restrições de segurança;
Modelos de Dados
Modelagem de Dados
Modelos de Dados
É um método de
estruturar
logicamente as
informações (dados)
 Principais modelos
de dados:

◦ Hierárquico
◦ Rede
◦ Relacional
Modelos de Dados: hierárquico
Os dados são estruturados em hierarquias
(árvores)
 Os nós das hierarquias contêm ocorrências de
registros, onde cada registro é uma coleção de
campos (atributos), cada um contendo apenas
uma informação.
 O registro da hierarquia que precede a outros é o
registro-pai, os outros são chamados de
registros-filhos.

Modelos de Dados: hierárquico
Clientes
Contas
Nome
Endereço
Cidade
Conta
Saldo
José
Av. Pio XI
São Paulo
900
55,00
Maria
R. São Francisco
Recife
556
100.000,00
Maria
R. São Francisco
Recife
647
105.366,00
Gabriela
R. do Sol
Maceió
801
744,00
Gabriela
R. do Sol
Maceió
647
105.366,00
Modelos de Dados: rede
O modelo em redes surgiu como uma extensão
ao modelo hierárquico, eliminando o conceito
de hierarquia e permitindo que um mesmo
registro estivesse envolvido em várias
associações.
 No modelo em rede, os registros são
organizados em grafos onde aparece um único
tipo de associação (set) que define uma relação
1:n entre 2 tipos de registros: proprietário e
membro

Modelos de Dados: rede
Nome
Endereço
Cidade
Conta
Saldo
José
Av. Pio XI
São Paulo
900
55,00
Maria
R. São Francisco
Recife
556
100.000,00
Maria
R. São Francisco
Recife
647
105.366,00
Gabriela
R. do Sol
Maceió
801
744,00
Gabriela
R. do Sol
Maceió
647
105.366,00
Clientes
Contas
Modelos de Dados: relacional




O modelo relacional, tem por base a teoria dos
conjuntos e álgebra relacional;
O Modelo relacional revelou-se ser o mais flexível e
adequado ao solucionar os vários problemas que se
colocam no nível da concepção e implementação da
base de dados;
A estrutura fundamental do modelo relacional é a
relação (tabela). Uma relação é constituída por um
ou mais atributos (campos) que traduzem o tipo de
dados a armazenar;
Cada instância do esquema (linha) é chamada de
tupla (registro).
Modelos de Dados: relacional
Nome
Endereço
Cidade
Conta
Saldo
José
Av. Pio XI
São Paulo
900
55,00
Maria
R. São Francisco
Recife
556
100.000,00
Maria
R. São Francisco
Recife
647
105.366,00
801
744,00
647
105.366,00
Gabriela
R. do Sol
Maceió
Gabriela
R. do Sol
Maceió
Cliente
Conta
Cliente
Cod_cliente Nome
Rua
Cidade
São Paulo
01
José
Av. Pio XI
02
Maria
R. São Francisco Recife
03
Gabriela R. do Sol
Cod_conta
Saldo
900
55,00
556 100.000,00
647 105.366,00
801
744,00
Maceió
Cliente_Conta
Cod_cliente
01
02
02
03
03
Cod_conta
900
556
647
647
801
Exercícios
Exercício

Organizar os dados abaixo conforme os modelos
hierárquico, rede e relacional;
◦ Curso - professor
 Arquivologia – Cassia, Antônio , Maria
 Biblioteconomia – Cassia, João, Maria
◦ Curso – disciplina
 Arquivologia – preservação, automação, GED, diplomática,
 Biblioteconomia – catalogação, indexação, automação
◦ Professor - Disciplina




Maria – Catalogação, indexação, preservação
João – Indexação, Automação
Cassia – GED, Automação
Antônio – Preservação, diplomática
Modelos de
Dados
Modelagem Conceitual
Modelos de Dados: hierárquico
Modelos de Dados: rede
Modelos de Dados
Cod_cliente Nome
Rua
Cidade
São Paulo
01
José
Av. Pio XI
02
Maria
R. São Francisco Recife
03
Gabriela R. do Sol
Maceió
Cod_conta
Saldo
900
55,00
556 100.000,00
647 105.366,00
801
744,00
Cod_cliente
01
02
02
03
03
Cod_conta
900
556
647
647
801
Projeto de Banco de
Dados
Modelagem
Conceitual
Modelagem Conceitual
Projeto de Banco de Dados
A primeira etapa do projeto de um banco de
dados é a construção de um modelo conceitual;
 O objetivo da modelagem conceitual é obter
uma descrição abstrata dos dados que serão
armazenados;
 A técnica de modelagem de dados mais utilizada
é a abordagem entidade-relacionamento (E-R).
 Representado graficamente através de um
diagrama entidade-relacionamento (DER);

Modelagem Conceitual: entidade
Conjunto de objetos da realidade sobre os quais
se deseja manter informações no banco de
dados;
 Pode representar tanto objetos concretos (uma
pessoa, um automóvel) quanto objetos abstratos
(um departamento, uma venda).
 É representada através de um retângulo com o
nome da entidade.

Produto
Cliente
Departamento
Funcionário
Modelagem Conceitual:
relacionamento
Conjunto de associações entre entidades;
 É representado através de um losango, ligado
por linhas aos retângulos representativos das
entidades que participam do relacionamento;

Departamento
Lotação
Funcionário
• Um conjunto de objetos classificados como funcionários (entidade FUNCIONÁRIO)
• Um conjunto de objetos classificados como departamentos (entidade DEPARTAMENTO)
• Um conjunto de associações, cada uma ligando um departamento a um funcionário.
Modelagem Conceitual:
relacionamento
Departamento
Funcionário
Lotação
f3
f1
f5
f7
f4
f2
f1, d1
f6
f2, d1
d1
f5, d2
d2
f6, d3
d3
Entidade
FUNCIONÁRIO
Relacionamento
LOTAÇÃO
Entidade
DEPARTAMENTO
Modelagem Conceitual:
auto-relacionamento
Não necessariamente um relacionamento associa duas
entidades diferentes.
Um relacionamento entre instâncias de uma mesma
entidade é chamado de Auto-relacionamento
Pessoa
marido
esposa
casamento
p3
p1
p5
p2
marido
esposa
p1, p3
p7
p4
p6
esposa
Entidade
PESSOA
marido
p6, p5
Relacionamento
CASAMENTO
Modelagem Conceitual: cardinalidade
Número de ocorrências de entidade associadas a
uma ocorrência da entidade em questão através
do relacionamento.
 Quantas ocorrências de uma entidade podem
estar associadas a uma determinada ocorrência
de outra entidade através do relacionamento?

Departamento
n
1
Uma ocorrência de FUNCIONARIO
pode estar associada ao no máximo 1
ocorrência de DEPARTAMENTO
Lotação
Funcionário
A uma ocorrência de DEPARTAMENTO
pode estar associada várias (n)
ocorrências de FUNCIONÁRIO
Modelagem Conceitual:
relacionamentos 1 para 1
Funcionário
Pessoa
1
1
marido
1
esposa
casamento
alocação
1
Mesa
Modelagem Conceitual:
relacionamentos 1 para n
Curso
1
inscriçã
o
n
Aluno
Funcionário
supervisor
1
supervisionado
n
supervisão
Funcionário
1
n
Dependente
Modelagem Conceitual:
relacionamento n para n
Engenheiro
Médico
Produto
composto
n
n
n
alocação
n
n
consulta
Projeto
Paciente
componente
n
composição
Peça
n
n
fornecimento
Fornecedor
Modelagem Conceitual: exemplo
Deseja-se manter informações sobre
alunos, cursos, disciplinas e
departamentos:
1. Cada disciplina possui um
departamento responsável. Um
departamento é responsável por
muitas disciplinas.
pré-requisito
n
Departamento
1
n
responsável
4. Um aluno está inscrito em um
curso. Um curso pode ter nele
inscritos muitos alunos.
Disciplina
n
2. Uma disciplina pode possuir
diversos pré-requisitos. Uma
disciplina pode ser pré-requisito de
muitas outras disciplinas.
3. Uma disciplina pode aparecer no
currículo de muitos cursos. Um
curso pode possuir muitas
disciplinas em seu currículo.
n
disc-curso
n
Aluno
n
inscrição
1
Curso
Modelagem Conceitual: atributos
Dado que é associado a cada ocorrência de uma
entidade ou de um relacionamento;
 Muitas vezes os atributos não são representados
para não sobrecarregar o diagrama;

Projeto
tipo
nome
código
Modelagem conceitual:
atributos de relacionamentos

Assim como uma entidade, relacionamentos
também podem possuir atributos;
Engenheiro
código
n
atuação
n
Projeto
função
nome
código
título
Modelagem Conceitual:
identificadores
Cada entidade deve possuir um identificador;
 Um identificador é um conjunto de um ou mais
atributos cujos valores servem para distinguir
uma ocorrência (instância) das demais
ocorrências da mesma entidade.

Aluno
RA
nome
endereço
Modelagem Conceitual:
generalização / especialização
Propriedades podem ser atribuídas a entidades através do conceito de
generalização / especialização.
 Através desse conceito é possível atribuir propriedades particulares a um
subconjunto das ocorrências (especializadas) de uma entidade genérica.

Filial
1
No DER, o símbolo para representar
generalização/especialização é o triângulo
Associada à ideia de generalização / especialização
está a ideia de herança de propriedades;
A entidade PESSOA-FÍSICA possui, além de seus
atributos (CPF e sexo), também todos os atributos de
CLIENTE (código e nome);
n
Pessoa
Física
código
nome
Cliente
Pessoa
Jurídica
tipo empresa
CPF
sexo
CNPJ
Modelagem Conceitual
Um modelo/diagrama ER é (ou deve ser) um
modelo formal, preciso, não ambíguo;
 Dois diferentes leitores de um mesmo diagrama
ER devem sempre entender exatamente o
mesmo;

Exercícios
Comunidade
Uma certa comunidade deseja fazer o cadastro
de todos os seus moradores;
 Para cada residência será cadastrado o
provedor/chefe da família e todos os seus
dependentes (esposa/marido, filhos);
 Para o provedor /chefe é preciso cadastrar um
número de identificação, o RG, o Nome e o
Endereço;
 Para os dependentes será preciso cadastrar O
RG , o Nome e o tipo de parentesco;

Iglu Imóveis

A Iglu Imóveis trabalha tanto com administração
de condomínios quanto com administração de
aluguéis.
◦ A Iglu administra condomínios formados por unidades
condominiais.
◦ Cada unidade condominial é de propriedade de uma
ou mais pessoas. Uma pessoa pode possuir diversas
unidades;
◦ Cada unidade condominial pode estar alugada para no
máximo uma pessoa. Uma pessoa pode alugar
diversas unidades.
Iglu Imóveis
código
nome
Condomínio
1
composição
n
número
Unidade
n
n
aluguel
propriedade
n
Data
Registro
1
Pessoa
CPF Nome
Data
N. Contrato
Matrix Vídeo





A Matrix Vídeo é uma pequena locadora de vídeos.
Essa locadora mantêm um cadastro com os dados de seus
clientes: nome, sobrenome, endereço e telefone. A todo
cliente é dado um código.
Para cada filme é necessário saber seu título e sua categoria
(comédia, drama, aventura, etc). Cada filme recebe um
identificador próprio.
Cada DVD possui um código. Para cada filme há pelo menos
um DVD, e cada DVD contém somente um filme. Alguns
filmes necessitam mais de um DVD.
Os clientes podem desejar encontrar os filmes estrelados pelo
seu ator predileto. Por isso é necessário manter a informação
dos atores que atuam em cada filme. Nem todo filme possui
atores. Para cada ator os clientes às vezes desejam saber o
nome real, bem como a data de nascimento.
Matrix Vídeo
código
Pré
nome
volume
nome
endereço
código
nome
n
DVD
n
empréstimo
Cliente
n
cod_cli telefone
Categoria
código
Dt nascimento
1
1
n
Filme
id
título
n
estrelado
n
Ator
Nome
Nome
Artístico
Download