modelos de dados - parte 3 bancos de dados
DESCRIPTION
Distingue:- Modelos de elos explícitos- Modelos de elos implícitos (relacional)- Modelos semânticos- Modelos orientados a objetosTRANSCRIPT
UNIVERSIDADE FEDERAL DA PARAÍBA
Centro de Engenharia Elétrica e Informática
Pós-Graduação em Ciência da Computação
MODELOS DE DADOS
Parte 3 – Bancos de Dados
Ulrich Schiel
PARTE III - Modelos de Dados
PARTE III - Modelos de Dados
O que é um Modelo?Segundo Aris é o elo entre uma teoria e um protótipo. Ou seja, temos:
• Teorias (lógicas – linguagem e axiomas) • Modelos (esquema de equações)• Protótipos (sistema ser modelado)
PARTE III - Modelos de Dados
• Modelos de elos explícitos
• Modelos de elos implícitos - modelo relacional
• Modelos semânticos
• Modelos orientados a objetos
Modelos de Dados
Modelos de elos explícitos
Modelo Hierárquico
BANCO
AGENCIA
CLIENTE
CONTA CORR.
codigo nome
código nome endereço
nome endereço
número saldo
CONTA POUP.
número saldo
Modelo Hierárquico
Estrutura Qual o esquema correto ?
Estudante
Disciplina
Professor
Disciplina
Estudante
Professor
Modelo Hierárquico
Estrutura Qual o esquema correto ?
Matrícula
EstudanteDisciplina
Professor
Disciplina
Modelo de Redes
Estrutura
DEPARTA-MENTO
PROJETO
EMPREGADO
alocação participação
Owner
Member
Set
Modelo de Redes
Modelo de Redes - Instâncias
P5 DYNAMO $100.000DSC CCT UFCG
nome unidade empresa código nome orçamento
e1 | João | | e2 | Joana | | e3 | Janete | | e4 | Josinaldo| |
DEE CCT UFCG
nome unidade empresa
DEPARTAMENTO DEPARTAMENTO PROJETO
EMPREGADO
Modelo de Redes
Comportamento
LINGUAGENS
• DDL – Data Definition Language• DML – Data Manipulation Language
Modelo Relacional
Estrutura
domínios D1, D2,..., Dn
NOME(tipo: fixed-char(30)), IDADE (tipo: integer-range[1..100]), TITULO (tipo: var-char(15)),
relação R D1D2, ..Dk
tupla t R
banco de dados relacional {R1,..,Rn}
PROF(NOME,IDADE,TITULO),MAQUINA(NOME,IDADE)
Modelo Relacional
esquema de uma relação NR(A1, A2, ..,Ak)
cada atributo está associado a um domínio
Estruturas
esquema de um banco de dados {NR}
conceitos adicionais• atributo(s) chave• valores nulos• chave estrangeira
Modelo Relacional
Integridade implícita:
INTEGRIDADE
• Domínio de um Atributo
• atributo(s) chave• valores nulos• chave estrangeira
• uma relação é um conjunto
Modelo Relacional
Integridade explícita:
INTEGRIDADE
• funcionais
Dependências: • multivaloradas
• de junção
• de inclusão
Equação relacional:R S ouR =
Modelo Relacional
Integridade explícita:
INTEGRIDADE
• Restrições intrarelacionais: Relação <R, r1, .., rn>
Forma genérica:
• restrições interrelacionais ir1,.., irm
• Banco de Dados Relacional {<R1, r11, .., r1n>,..,<Rk, rk1, .., rkn>; ir1,.., irm }
Modelo Relacional
COMPORTAMENTO
ÁLGEBRA RELACIONAL CÁLCULO RELACIONAL
Permite navegar no banco de dados
Modelos Semânticos
Modelo Relacional Extendido: NF2 MR/Tasmania
Modelos Semânticos: Data Semantics; E-R; SDM; SAM; TAXIS; ACM/PCM; NIAM; THM
Modelos Semânticos
ELEMENTOS BÁSICOS
• entidade, • relacionamento, • atributo
ABSTRAÇÕES
• generalização• agregação • agrupamento
PERGUNTA:
com quantos paus se faz uma canoa?
CAPÍTULO III - Modelos de Dados
Modelos Semânticos de Dados
MODELOS DE 3 ELEMENTOS (entidade, relacionamento, atributo)
ESTUDANTE DISCIPLINAmatriculado
nome datacód. nome
n n
CAPÍTULO III - Modelos de Dados
Modelos Semânticos de Dados
MODELOS DE 2 ELEMENTOS (entidade, relacionamento)
ESTUDANTE DISCIPLINA1..n5..n matriculado
nome código
tem-nome tem-nome
1 1
0..n 0..n
1
1
tem-código
CAPÍTULO III - Modelos de Dados
Modelos Semânticos de Dados
MODELOS DE 1 ELEMENTO (entidade)
ESTUDANTE DISCIPLINA
nome código
MATRICULA
data
CAPÍTULO III - Modelos de Dados
Modelos Semânticos de Dados
INTEGRIDADE Regras E-C-A
COMPORTAMENTO • Operações conceituais abstratas pré-/pós-condições
• Redes de Petri
ESTUDANTE
matrícula
DISCIPLINAmatriculado
CAPÍTULO III - Modelos de Dados
Modelos Orientados a Objetos
• ABSTRAÇÕES (modelos semânticos)
• ENCAPSULAMENTO (tipos abstratos de dados)
• IDENTIFICAÇÃO DE OBJETOS
• COMPORTAMENTO DE OBJETOS
• POLIMORFISMO
CAPÍTULO III - Modelos de Dados
Modelos Orientados a Objetos
ESTUDANTEnome
matricula(x)
DISCIPLINAcódigonome
matrícula(x)
matriculado
ENCAPSULAMENTO
5..n 1..n
(e)
(d)
CAPÍTULO III - Modelos de Dados
Modelos Orientados a Objetos
ESTUDANTE-GRADUAÇÃO
GENERALIZAÇÃO + ENCAPSULAMENTO POLIMORFISMO
ESTUDANTE-PÓS
orientador
ESTUDANTEnomecurso
matrícula
GENERALIZAÇÃO
CAPÍTULO III - Modelos de Dados
Modelos Orientados a Objetos
ATRIBUTOS • domínio simples
• domínio complexo
• domínio objeto
MAPEAMENTOS
Modelo Interno
Modelo Conceitual