• Nenhum resultado encontrado

FBD - Slide 01 - Introducao ao modelo relacional

N/A
N/A
Protected

Academic year: 2021

Share "FBD - Slide 01 - Introducao ao modelo relacional"

Copied!
38
0
0

Texto

(1)

INTRODUÇÃO AO

(2)

Sumário

◻ Modelo de Dados

◻ História dos Modelos de Dados

◻ Conceitos Básicos do Modelo Relacional

⬜ Relação

⬜ Esquema de Relação

⬜ Estado de Banco de Dados Relacional ⬜ Arquitetura de Esquemas

(3)

Modelo de Dados

◻ É um conjunto de convenções para descrever a

estrutura de um banco de dados e certas restrições

que o banco de dados deve obedecer

◻ Um SGBD permite um usuário definir os dados a

serem armazenados em termos de um modelo de dados

◻ A maioria dos SGBDs atuais são baseados no

(4)

Categorias de Modelos de Dados

◻ Modelo de Dados Conceitual (semântico)

⬜ alto nível de abstração. Modelo baseado em entidade

ou baseado em objeto.

◻ Modelo de Dados Físico (baixo-nível, interno)

⬜ Provê conceitos para descrever detalhes de como os

dados estão armazenados no computador

◻ Modelo de Dados de Implementação (lógico)

(5)

História dos Modelos de Dados

◻ Modelo de Redes

⬜ Foi primeiro implementado por Honeywell in 1964-65 (IDS System).

⬜ Depois implementado em vários DBMS: IDMS (Cullinet - now CA), DMS 1100 (Unisys), IMAGE (H.P.), VAX -DBMS (Digital).

◻ Modelo Hierárquico

⬜ Implementado em um esforço conjunto da IBM e North American

Rockwell em 1965.

◻ Modelo Relacional

⬜ Proposto em 1970 por E.F. Codd (IBM). Primeiro sistema comercial em

1981-82.

⬜ Atualmente, vários produtos comerciais (ORACLE, SYBASE,

(6)

História dos Modelos de Dados

◻ Modelo de Redes

⬜ Foi primeiro implementado por Honeywell in 1964-65 (IDS System).

⬜ Depois implementado em vários DBMS: IDMS (Cullinet - now CA), DMS 1100 (Unisys), IMAGE (H.P.), VAX -DBMS (Digital).

◻ Modelo Hierárquico

⬜ Implementado em um esforço conjunto da IBM e North American

Rockwell em 1965.

◻ Modelo Relacional

⬜ Proposto em 1970 por E.F. Codd (IBM). Primeiro sistema comercial em

1981-82.

⬜ Atualmente, vários produtos comerciais (ORACLE, SYBASE,

(7)

◻ Modelo Orientado a Objetos

⬜ Vários modelos propostos

⬜ OBJECTSTORE e VERSANT: Adiciona persistência a C++ ⬜ GEMSTONE : Adiciona persistência a Smalltalk

⬜ O2, , ORION, IRIS .

◻ Modelo Objeto-Relacional:

⬜ Tendência mais recente.

⬜ Informix, ORACLE 8, ILLUSTRA e UNiSQL,

(8)

1. Modelo de Dados, Esquema e

Instância

Modelo Esquema Instância

Regras para estruturação dos dados Regras para verificação das instâncias

(9)

Modelo de Dados, Esquema e

Instância

◻ Modelo de dados: Conjunto de conceitos

descrevem a estrutura de um BD

⬜ Abstração de dados

⬜ Estrutura = tipos de dados + relacionamentos +

restrições (+operações -> recuperação e atualização) ◻ Esquema: Descrição (textual ou gráfica) da

estrutura de um BD de acordo com um determinado modelo de dados

◻ Instância: Conjunto de dados armazenados em

(10)

Modelo de Dados, Esquema e

Instância

(11)

Modelo de Dados, Esquema e

Instância

(12)

Modelo de Dados, Esquema e

Instância

◻ Esquema do BD

⬜ Armazenado no catálogo

⬜ Mudanças muito menos freqüentes

◻ Estado do BD

⬜ Dados do banco em qualquer ponto do tempo ⬜ Inicialmente vazio

⬜ Muda frequentemente

(13)

Categorias de Modelo de Dados

MODELOS CONCEITUAIS

◻ Descrevem a estrutura de um BD de uma forma

mais próxima da percepção dos usuários

◻ Independente de aspectos de implementação

◻ Conceitos: entidades, atributos, relacionamentos ◻ Exemplos:

⬜ Modelo entidade-relacionamento (ER) ⬜ Modelo funcional

(14)

Categorias de Modelo de Dados

MODELOS REPRESENTACIONAIS (lógicos)

◻ Descrevem a estrutura de um BD da forma como

será manipulado através de SGBD

◻ Mais dependente das estruturas físicas de

armazenamento de dados armazenamento de dados

◻ Exemplos:

⬜ Modelo relacional

⬜ Modelo de rede (CODASYL) ⬜ Modelo hierárquico

(15)

Categorias de Modelo de Dados

MODELOS FÍSICOS

◻ Descrevem como os dados são fisicamente

armazenados

◻ Conceitos: formatos dos registros, ordenamento

(16)

Modelo Relacional

◻ Introduzido pelo pesquisador da IBM E. Codd [1970]

◻ Razões do sucesso

⬜ Estrutura de dados simples e uniforme

■ Um banco de dados relacional é um conjunto de Relações ■ Cada relação é um conjunto de linhas ou tuplas

■ Cada tupla é uma lista de valores de atributos ■ Cada valor de atributo é retirado de um domínio

(17)

Um Exemplo de Relação

Relação Empregado Nome Marta Souza José Oliveira Ana Alves DataNasc. 05/12/75 09/07/70 23/08/65 Telefone 278.90.76 241.80.76 261.65.94

Empregado = {< Marta Souza, 05/12/75, 278.90.76>,

< José Oliveira, 09/07/70, 241.80.76>, < Ana Alves, 23/08/65, 261.65.94>}

Coluna ou Atributo

Linha ou Tupla

(18)

Esquema Relacional

Esquema é a descrição dos dados em termos de um modelo de dados. O esquema não muda com o tempo.

conjunto de Esquemas de Relação

E = ({R1, R2, ..., Rn}, I)

Esquemas de Relação Restrições de

Integridade

+

conjunto de Restrições de Integridade

(19)

Esquema de Relação

Empregado(nome: string, dataNasc.:Date, telefone:Integer )

Nome da Relação

Nome de Atributo

Domínio do Atributo

(20)

Esquema x Instância

◻ Esquema de um Banco de Dados

⬜ É a descrição de um banco de dados. Inclui a descrição

da estrutura dos dados e as restrições que precisam ser obedecidas.

◻ Instância de um Banco de Dados

⬜ Os dados armazenados no BD em um dado instante. ⬜ Também chamado de Estado ou Ocorrência do Banco

de Dados.

✓Esquema é chamado intenção ✓Esquema muda raramente

✓Estado é chamado extensão ✓Estado muda freqüentemente

(21)

Instância de Relação

Instância de uma relação = Conjunto de Tuplas Tupla = Lista de valores de Atributo

Nome Marta Souza José Oliveira Ana Alves DataNasc. 05/12/75 09/07/70 23/08/65 Telefone 278.90.76 241.80.76 261.65.94 Tuplas

(22)

Instância ou Estado de BD

Relacional

◻ Uma Instância de um BD são os dados no BD em um

determinado instante.

BD é um estado consistente do esquema S se satisfaz a todas as Restrições de Integridade de S

BD = {r

1

, r

2

, ..., r

n

}

Instâncias de Esquemas de Relação

Instância de um BD relacional = Conjunto de Instâncias de Relações

(23)

Restrições de Integridade

Um Banco de Dados armazena informação sobre parte de um mundo real que chamamos de mini-mundo.

Certas regras, denominadas de Restrições de Integridade, governam este mini-mundo.

As restrições de Integridade especificam os estados do BD que são considerados consistente.

O Estado de um Banco de Dados é dito consistente ou válido se todas as RI’s forem satisfeitas.

(24)

Terminologia de Conceitos Básicos do

Modelo Relacional

Modelo Relacional

(Formal) Relação Tupla Atributo

Linha Coluna

Tabela

Conjunto estruturado (lista)Elemento Componentede lista

Teoria de conjuntos e Estrutura de dados Modelo Relacional (informal) e SQL Análise estruturada moderna Processamento de dados Depósito de dados Arquivo Registro Registro Campo Campo

(25)

ARQUITETURA DE ESQUEMAS PARA

SISTEMAS DE BANCO DE DADOS

Arquitetura de 3-esquemas

Proposta em 1978 pela ANSI/SPARC

Proposta para suportar as características dos

sistemas de BDs de

Suporte para múltiplas visões de usuários Independência entre programas e dados

(26)

Arquitetura de um Sistema de BD

Características do enfoque de BD

◻ Isolamento de programas e dados

◻ Suporte de visões múltiplas de usuários

◻ Catálogo para armazenar a descrição (esquema)

do BD

Arquitetura de três níveis

◻ Mantém independência de dados e programas ◻ Suporta múltiplas visões

(27)

Arquitetura de 3 esquemas

NÍVEL

EXTERNO VISÃO .. VISÃO

.

NÍVEL

CONCEITUAL ESQUEMA CONCEITUAL

NÍVEL

INTERNO ESQUEMA INTERNO

BANCO DE DADOS ARMAZENADO

Mapeamento Externo/Conceitua l Mapeament o Conceitual/Interno

(28)

Arquitetura de um Sistema de BD

Esquema interno

• Descreve armazenamento físico

Esquema conceitual

• Descreve entidades, tipos de dados, relacionamentos, operações e restrições

• Esconde detalhes de armazenamento

Esquemas externos (visões)

Descreve porções do banco para diferentes comunidades

(29)

Arquitetura de um Sistema de BD

Exemplo 1

◻ Esquema conceitual

⬜ Estudantes (eid: string, nome: string, login: string, idade:

integer, gpa:real)

⬜ Cursos (cid: string, cnome:string, creditos:integer)

⬜ Matricula (eid:string, cid:string, nota:string) Matricula

(eid:string, cid:string, nota:string) ◻ Esquema Físico

⬜ Relações guardadas como arquivos desordenados ⬜ Índices na primeira colunas de estudantes

◻ Esquema externo (Visão):

(30)

Arquitetura de 3 esquemas

ESQUEMA EXTERNO:

EMP (Nome: STRING, DataNasc.: Date, Local: STRING)

ESQUEMA CONCEITUAL:

EMP-RIO (Nome: STRING, DataNasc.: Date)

ESQUEMA INTERNO:

Formato do Registro EMP

4 bytes ponteiro 2 bytes Inteiro 4 bytes ponteiro Cadeira de caracter ...

(31)

Arquitetura de um Sistema de BD

(32)

Independência de Dados

◻ Capacidade de se alterar o esquema em um

determinado nível sem alterar o esquema (ou esquemas) do nível imediatamente mais alto .

VANTAGEM:

◻ Imunidade dos programas em relação a

mudanças na estrutura do banco de dados

(33)

Independência de Dados

É a capacidade de modificar uma definição de esquema em um nível, sem afetar as definições de esquema nos níveis mais acima.

* Sistemas de arquivos não têm independência física nem lógica.

Independência Física

Independência Lógica

(34)
(35)

Independência Lógica

⬜ EX: Expansão ou redução

⬜ Você decide adicionar uma nova coluna na tabela Estudante do esquema conceitual. Todos os

programas continuarão funcionando. Porém se uma coluna for removida, os programas que fazem uso desta coluna não funcionarão mais.

A capacidade de se modificar o

esquema

conceitual sem ter que modificar o esquema externo ou programas de aplicação

(36)

Independência Física

Exemplo:

Reorganização de arquivos para melhorar desempenho * Você decide modificar o layout do Registro físico da

tabela Estudante. O esquema conceitual permanece inalterado e todos os programas de aplicações

continuarão funcionando.

É a capacidade de se modificar o esquema

Interno sem ter que modificar o esquema

conceitual ou externo.

(37)

Linguagens dos SGBDs

◻ Linguagem de Definição de dados (DDL)

⬜ Usada pelo DBA e projetistas do BD para especificar o

esquema conceitual. Em alguns SGBDs a DDL é também usada para definir os esquemas interno e externos

(visões).

◻ Linguagem de Manipulação de Dados (DML)

⬜ Usada para especificar consultas e atualizações

⬜ Os comandos DML podem ser usados diretamente ou

embutido (embedded) em uma linguagem de programação com COBOL, JAVA

⬜ Exemplo: SQL (DML de alto nível usada em modo

(38)

Interfaces

◻ Baseadas em menus

◻ Baseadas em formulários ◻ Gráficas (GUI), diagramas

◻ Baseadas em linguagem natural ◻ Para leigos

Referências

Documentos relacionados

Muitas vezes o agricultor quer tirar a soja o quanto antes da lavoura, pois segundo Holtz e Reis (2013), o maior tempo de permanência da soja na lavoura, traz um aumento das

Coletaram-se informações referentes à habilitação pro- fissional dos docentes; suas fontes de conhecimentos sobre a Guerra do Contestado; seu conhecimento referente aos redutos

Pode haver alguns acordos prévios, como visto na classificação proposta em trabalho anterior (GUERRERO, 2006), mas estes são propostos sempre mantendo elevado

A baixa taxa de desconto ao longo dos anos de produção do campo, para o cálculo da função objetivo, aliada a baixa produção de água que a locação de

O objetivo deste estudo foi avaliar o comporta- mento clínico de lesões de dermatite digital bovina após tratamento cirúrgico, uso local e parenteral de oxitetraci- clina e passagem

Changes in the gut microbiota appears to be a key element in the pathogenesis of hepatic and gastrointestinal disorders, including non-alcoholic fatty liver disease, alcoholic

O objetivo deste trabalho é compreender a percepção de mulheres em relação homoafetiva sobre a assistência à saúde recebida durante concepção, gravidez, parto e pós-parto

Os instrumentos de pesquisa utilizados serão: Ficha de Rastreamento das Participantes do Estudo, International Consultation on Incontinence Questionnaire – Short Form