Buscar

Aula2+-+Introdução+à+Modelagem+de+dados

Prévia do material em texto

09/03/2015
1
Introdução à modelagem de 
dados
Banco de dados 1
Fabrício Nogueira
fabricio.silva@uva.br
RelembrandoRelembrandoRelembrandoRelembrando
• Coleção de dados relacionados
• Representação digital dos dados do mundo real
• Grandes volumes de dados e suas relações complexas justificam a 
criação de estratégias específicas para gerenciá-los
Banco de dados
09/03/2015
2
RelembrandoRelembrandoRelembrandoRelembrando
• Arquivos X SGBDs
• Diminui o tempo de desenvolvimento de aplicações
• Tratamento de grande volume de informação
• Mecanismo padrão para obtenção dos dados
• Compartilhamento para múltiplos usuários
• Controle de concorrência
• Mecanismos de recuperação de falhas
Por que usar SGBD?Por que usar SGBD?Por que usar SGBD?Por que usar SGBD?
• Redução do tempo de desenvolvimento
• Consistência de dados
• Controle de concorrência
• Recuperação de falhas
09/03/2015
3
Aplicações tradicionaisAplicações tradicionaisAplicações tradicionaisAplicações tradicionais
• Bancos de dados numéricos e textuais
• Exemplos
• Gerenciamento de vendas de uma farmácia
• Gerenciamento de uma loja de tintas
• Sistema bibliotecário
• Sistema bancário
Aplicações mais recentesAplicações mais recentesAplicações mais recentesAplicações mais recentes
• Multimídia
• Sistemas de Informação Geográfica (GIS)
• Data Warehouses
09/03/2015
4
RelacionamentosRelacionamentosRelacionamentosRelacionamentos
• Data Mining
• Data Warehousing
• Information Retrieval
• Distributed and Parallel Databases
• Big Data
• NoSQL
• Ontologias e Web Semântica
ConceitosConceitosConceitosConceitos
• Modelo de dados
• Coleção de conceitos para descrever dados
• Estrutura para representação de dados
• Ex.: Modelo relacional � tabelas e atributos
• Esquema
• Descreve a coleção de dados que está sendo modelada pelo modelo de dados
• Tipo de modelo de dados sendo utilizado
• Relacional � Relações (tabelas) e esquema 
09/03/2015
5
Níveis de abstração dos dadosNíveis de abstração dos dadosNíveis de abstração dos dadosNíveis de abstração dos dados
Nível semântico Nível lógico Nível físico
Base de 
dados
Modelagem do universo de discursoModelagem do universo de discursoModelagem do universo de discursoModelagem do universo de discurso
• Modelo Entidade-Relacionamento (ER)
• Padrão para modelagem conceitual
• Criado por Peter Chen em 1976
• Entidade
• Objeto do universo
• Identificável distintamente
• Existência independente
Pessoa
Livro
Departamento de 
uma empresa
Categoria de um livro
09/03/2015
6
Modelagem do universo de discursoModelagem do universo de discursoModelagem do universo de discursoModelagem do universo de discurso
• Modelo Orientado a Objetos (OO)
• Simula 67
• Primeira linguagem Orienta a Objetos
• Smalltalk
• Projeto Dynabook
• Objeto
• Objeto do universo
• Identificável distintamente
• Existência independente
Pessoa
Livro
Departamento de 
uma empresa
Categoria de um livro
Níveis de abstração dos dadosNíveis de abstração dos dadosNíveis de abstração dos dadosNíveis de abstração dos dados
• Nível semântico
• Alto nível de representação de dados
• Relação direta com a forma como os usuários percebem os dados
• Entidades ou Objetos
• Nível lógico (ou conceitual)
• Dependente do SGBD
• Estruturas de representação do SGBD
• Nível físico
• Interno ao SGBD
• Armazenamento
• Sistema operacional
09/03/2015
7
Modelos lógicos de dadosModelos lógicos de dadosModelos lógicos de dadosModelos lógicos de dados
• Modelo relacional
• Modelo Hierárquico
• Modelo em Rede
• Modelo Orientado a Objetos
• Modelo Objeto-relacional
• NoSQL
Modelos lógicos de dadosModelos lógicos de dadosModelos lógicos de dadosModelos lógicos de dados
Estruturas
1
Operações
2
Restrições
3
09/03/2015
8
Modelos lógicos de dadosModelos lógicos de dadosModelos lógicos de dadosModelos lógicos de dados
Estruturas
=
tabelas
1 Operações= 
Álgebra 
relacional
2
Restrições
3 DuplicidadeDuplicidadeReferencialReferencial
Modelos lógicos de dadosModelos lógicos de dadosModelos lógicos de dadosModelos lógicos de dados
Estruturas
1
Operações
2
Restrições
3
09/03/2015
9
Modelos lógicos Modelos lógicos Modelos lógicos Modelos lógicos de dadosde dadosde dadosde dados
Estruturas
=
classes
1 Operações
=
Álgebra, 
métodos
2
Restrições
3 Objetos com identificação 
nula
Objetos com identificação 
nula
Independência de dadosIndependência de dadosIndependência de dadosIndependência de dados
• Sistema de arquivos � Esquema no código fonte do programa
• Definição dos dados + representação interna de armazenamento + métodos 
de acesso
• Independência lógica dos dados
• Mudanças no nível lógico não afetam o nível físico e nem conceitual
• Ex.: Inclusão de novos atributos numa tabela
• Independência física dos dados
• Alterações no nível físico não afetam o nível conceitual e nem o nível lógico
• Ex.: Alteração do método de busca dos dados
09/03/2015
10
Independência de dadosIndependência de dadosIndependência de dadosIndependência de dados
• Nível externo (visões)
• Garante a independência dando a diferentes usuários dos dados, diferentes 
possibilidades de visões
• Ex.:
• Professor� Nome, CPF, Disciplina
• Professor � Nome, Endereço, Filiação, RG
Níveis de esquema no SGBDNíveis de esquema no SGBDNíveis de esquema no SGBDNíveis de esquema no SGBD
• Nível externo
• Dados
• Nível lógico
• Entidades e atributos
• Nível físico
• Índices
• Número de bytes
Nível físico
Nível lógico
Visão Visão Visão
09/03/2015
11
Níveis de esquema no SGBDNíveis de esquema no SGBDNíveis de esquema no SGBDNíveis de esquema no SGBD
Exemplo: Base de dados de peças de computadorExemplo: Base de dados de peças de computadorExemplo: Base de dados de peças de computadorExemplo: Base de dados de peças de computador
Produto
Tipo de 
produto
1N
Código
Nome
Preço
Código
Nome
09/03/2015
12
Exemplo: Base de dados de peças de computadorExemplo: Base de dados de peças de computadorExemplo: Base de dados de peças de computadorExemplo: Base de dados de peças de computador
Produto
codigo nome preco codigo_tipo
1 HP 500 R$ 600 1
2 Sony Vaio R$ 2000 2
3 Dell R$ 1900 2
Tipo de produto
Codigo Nome
1 Impressora
2 Notebook
Exemplo: Base de dados de peças de computadorExemplo: Base de dados de peças de computadorExemplo: Base de dados de peças de computadorExemplo: Base de dados de peças de computador
• Esquema lógico
• Produto (codigo, nome, preço, cod_tipo)
• Tipo_Produto(codigo, nome)
• Cod_tipo da tabela Produto referencia o atributo codigo em Tipo_Produto
• Esquema físico
• Tabelas acessadas em arquivo de acesso sequencial
• Criação de índice usando a coluna código em Tipo_Produto
• Esquema de visões (externo)
• Aplicação de cotações de produtos só acessa código e preço de produto
• Aplicação de tipo de produto só acessa código e descrição
09/03/2015
13
Exemplo: Loja de tintasExemplo: Loja de tintasExemplo: Loja de tintasExemplo: Loja de tintas
Serviço
Cliente
Empresa
1
N
1
N
Um cliente solicita um serviço da loja de tintas.
Uma empresa pode recomendar vários clientes para a 
loja de tintas.
Exemplo: Loja de tintasExemplo: Loja de tintasExemplo: Loja de tintasExemplo: Loja de tintas
• Esquema lógico
• Cliente (código, nome, endereço, telefone, cpf, código_empresa, código_serviço)
• Empresa (código, nome, endereço, cnpj)
• Serviço (código, tipo, descrição, valor)
• Esquema físico
• Arquivos sequenciais
• Índices por cpf, cnpj
• Esquema externo
• Mala direta: Nome do cliente, telefone e endereço(cliente_mala_direta)
• Pagamentos: Nom do cliente, cpf, tipo, serviço, valor (cliente_serviços)
09/03/2015
14
ExercíciosExercíciosExercíciosExercícios
• Definição do fator de blocos
• Modelo físico
• Definição dos relacionamentos
• Modelo semântico 
• Modelo lógico
• Importância do esquema externo de visões
• Recurso responsável para que as aplicações compartilhem uma mesma 
informação mantendo as suas especificidades e independência

Continue navegando