23
Bancos de Dados Multimídia Ticianne Darin

Bdm aula 2 - modelo de dados e projeto de bancos de dados

Embed Size (px)

Citation preview

Page 1: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Bancos de Dados

Multimídia

Ticianne Darin

Page 2: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Modelo de Dados e

Projeto de Bancos de Dados

Page 3: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Modelos de Dados

• Característica essencial de Bancos de Dados:

– Abstração de Dados

• Modelo de dados

– Coleção de conceitos que descrevem a estrutura de um banco de dados

– Conjunto de operações básicas

– Definição de aspectos dinâmicos

Tipos, relacionamentos e restrições dos dados

Page 4: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Categorias de Modelos de Dados

• Alto Nível ou Modelos Conceituais

• Lógico, Representativo ou de Implementação

• Baixo Nível ou Modelos Físicos

Page 5: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Modelos de Dados Conceituais

• Descrição do Banco de Dados de forma independente do SGBD

• Entidades, atributos e relacionamentos

• Modelo Entidade-Relacionamento

Objeto ou conceito do mundo real

Propriedade de interesse

que descreve uma entidade

Associação entre duas ou

mais entidades

Page 6: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Modelo de Dados Lógico

• Descrição no nível de abstração visto pelo usuário do SGBD (dependente do SGBD)

• Mais frequentes em SGBDs comerciais tradicionais

• Modelo de Dados Relacional e modelos legados

• Implementação em linguagem especifica

Page 7: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Modelo de Dados Físico

• Descreve armazenamento de dados como arquivo no computador

– Formato do registro, ordenações, caminho de acesso

Page 8: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Esquemas, instâncias e estado

• Descrição do banco ≠ próprio banco

• Descrição = esquema do banco de dados

– Especificado durante o projeto

– Não muda com frequência

– Diagrama de esquema

• Dados reais mudam

– Estado ou Instante do BD

– Ocorrências ou instâncias

• Esquema ≠ Estado

Page 9: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Esquemas, instâncias e estado

• Definir um novo BD = especificar esquema para SGBD

– Construtores

– Estado vazio

• Popular ou carregar o BD

– Estado inicial

• Atualização

– Novo estado do banco

Page 10: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Esquemas, instâncias e estado

• SGBD garante parcialmente um estado válido

• Metadados

– Descrições das construções e restrições do esquema

• Esquema -> intenção

• Estado -> extensão do esquema

• Evolução do esquema

Page 11: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Projeto de Banco de Dados

• Duas fases

– Modelagem conceitual

– Projeto lógico

• Construção de um novo BD

• Engenharia reversa

– Novo BD a partir de BD ou arquivos pré-existentes

Page 12: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Arquitetura de Três Esquemas

Os três esquemas são descrições!

Page 13: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Independência de Dados

• Capacidade de alterar o esquema em um nível do sistema de banco de dados, sem tem que alterar o esquema do nível mais alto.

– Independência lógica de dados

– Independência física de dados

Page 14: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Independência lógica de dados

• Alterar o esquema conceitual sem ter que alterar esquemas externos ou aplicações

– Expandir BD

– Reduzir BD

– Mudanças nas restrições

• Mais difícil de ser alcançada

Page 15: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Independência física de dados

• Alterar o esquema interno sem ter que alterar esquema conceitual

– Esquemas externos não precisam ser alterados

– Mudanças na estrutura para melhoria de desempenho na recuperação/atualização

Page 16: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Linguagens de SGBDs

• Para uma arquitetura de 3 camadas é necessário:

– DDL – Data Definition Language

• Esquema conceitual

– SDL – Storage Definition Language

• Esquema interno

– VDL – View Definition Language

• Esquema Externo

Page 17: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Linguagens de SGBDs

• DML – Data Manipulation Language

– Alto nível ou não procedural

– Operações complexas de forma concisa

– Linguagem declarativa

– Via terminal

– Embutida em linguagem de programação

– Muitos registros em uma instrução

– Linguagem de consulta!

Page 18: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Linguagens de SGBDs

• DML – Data Manipulation Language

– Baixo nível ou procedural

– Embutida em linguagem de programação

– Usa construções da linguagem de programação

– Registros individuais em uma instrução

– Processa separadamente

Page 19: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Linguagens de SGBDs

• SGBDs atuais: linguagens não são distintas

– Linguagem integrada e abrangente define

• Esquema conceitual

• Visões

• Manipulação de dados

– Ex.: linguagem relacional SQL

Page 20: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Linguagens de SGBDs

VDL

DDL

SDL

DML

SQL

Page 21: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Exercício

• Escolha uma aplicação com a qual você esteja acostumado. Crie um esquema e mostre um exemplo de banco de dados para essa aplicação. Liste quais seriam as restrições. Crie visões para os diferentes tipos de usuários.

• P.S.: Não vale de sistema acadêmico!

Page 22: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Exercício:

Exemplo

Page 23: Bdm   aula 2 - modelo de dados e projeto de bancos de dados

Até a próxima aula!

Pois que aproveita ao homem ganhar o mundo inteiro, se perder a sua alma? Ou que dará o homem em recompensa da sua alma?

Mateus 16.26