Desenho de Bases de Dados Database Design Carlos Pampulim Caldeira http://www.di.uevora.pt/~ccaldeira Com base em Mullins Cap. 4 Administração de Bases de Dados
Database Design  (1/n)
Database Design  (2/n) Fundamental : Desenho do modelo de dados Modelo empresarial Diagrama do modelo de dados relacional Diagrama UML
Descoberta de entidades, atributos e rela ç ões : Lista de verbos, nomes, adjectivos Busca de múltiplas fontes de informação Contextualização dos termos Database Design  (3/n)
Database Design  (4/n) Modelo conceptual Modelo lógico Modelo físico
Database Design  (5/n) Sumário e review dos capítulos :
Database Design  (6/n) Do modelo ló g ico ao físico : Conhecimento aprofundado dos objectos e estruturas físicas do SGBDR Indexação, integridade referencial, restrições, tipos de dados DDL (data definition language)
Database Design  (7/n)
Estrutura física Não é apenas: Construir tabelas, colunas Regras de integridade e índices Tabelas atribuídas a ficheiros especiais
Espaços de Tabelas
MySQL: create database
MySQL: create tablespace
Tablespace: questões Cálculo do espaço necessário para armazenar os dados das tabelas Tipo de ficheiro
MySQL: tablespace no DD
MySQL: create table  1/3
MySQL: create table  2/3
MySQL: create table  3/3 Mais Opções
MySQL: lista de drops
Database performance design A questão fundamental é saber quantos índices criar e de que tipo Um índice é um caminho alternativo Diferentes tipos de índices
Índice B-Tree
Índice BitMap ‘ Male’ 1000011101 ‘ Female’ 0110000010 ‘ Unknown’ 0001100000 Resultado: as linhas 1,6,7,8 e 10 indicam pessoas do sexo masculino; as 2, 3 e 9 indicam o sexo feminino e as 4 e 5 como sendo desconhecido.
Outros formas de optimização Hashing Clustering Desnormalização  ( Mullins desnormalization guide ) Morte da desnormalização
Técnicas de Desnormalização
Views São construções virtuais do SGBDR que facilitam o funcionamento de alguns procedimentos, uma view pode ser considerada uma tabela lógica. Segurança no acesso aos dados Simplifica a estrutura dos dados Renomeia tabelas e colunas Assegura derivação de dados Melhora o acesso a alguns dados
MySQL: create view
Views Em condições normais: sem subqueries, nem campos calculados, nem campos repetidos e respeitando a(s) chave(s) primária(s) é possível utilizar as views para alterar ou inserir dados na(s) tabela(s) que suportam uma view.
D ata   D efinition   L anguage É inadmissível que um engenheiro de informática não tenha um bom conhecimento desta linguagem.

Database Design

  • 1.
    Desenho de Basesde Dados Database Design Carlos Pampulim Caldeira http://www.di.uevora.pt/~ccaldeira Com base em Mullins Cap. 4 Administração de Bases de Dados
  • 2.
  • 3.
    Database Design (2/n) Fundamental : Desenho do modelo de dados Modelo empresarial Diagrama do modelo de dados relacional Diagrama UML
  • 4.
    Descoberta de entidades,atributos e rela ç ões : Lista de verbos, nomes, adjectivos Busca de múltiplas fontes de informação Contextualização dos termos Database Design (3/n)
  • 5.
    Database Design (4/n) Modelo conceptual Modelo lógico Modelo físico
  • 6.
    Database Design (5/n) Sumário e review dos capítulos :
  • 7.
    Database Design (6/n) Do modelo ló g ico ao físico : Conhecimento aprofundado dos objectos e estruturas físicas do SGBDR Indexação, integridade referencial, restrições, tipos de dados DDL (data definition language)
  • 8.
  • 9.
    Estrutura física Nãoé apenas: Construir tabelas, colunas Regras de integridade e índices Tabelas atribuídas a ficheiros especiais
  • 10.
  • 11.
  • 12.
  • 13.
    Tablespace: questões Cálculodo espaço necessário para armazenar os dados das tabelas Tipo de ficheiro
  • 14.
  • 15.
  • 16.
  • 17.
    MySQL: create table 3/3 Mais Opções
  • 18.
  • 19.
    Database performance designA questão fundamental é saber quantos índices criar e de que tipo Um índice é um caminho alternativo Diferentes tipos de índices
  • 20.
  • 21.
    Índice BitMap ‘Male’ 1000011101 ‘ Female’ 0110000010 ‘ Unknown’ 0001100000 Resultado: as linhas 1,6,7,8 e 10 indicam pessoas do sexo masculino; as 2, 3 e 9 indicam o sexo feminino e as 4 e 5 como sendo desconhecido.
  • 22.
    Outros formas deoptimização Hashing Clustering Desnormalização ( Mullins desnormalization guide ) Morte da desnormalização
  • 23.
  • 24.
    Views São construçõesvirtuais do SGBDR que facilitam o funcionamento de alguns procedimentos, uma view pode ser considerada uma tabela lógica. Segurança no acesso aos dados Simplifica a estrutura dos dados Renomeia tabelas e colunas Assegura derivação de dados Melhora o acesso a alguns dados
  • 25.
  • 26.
    Views Em condiçõesnormais: sem subqueries, nem campos calculados, nem campos repetidos e respeitando a(s) chave(s) primária(s) é possível utilizar as views para alterar ou inserir dados na(s) tabela(s) que suportam uma view.
  • 27.
    D ata D efinition L anguage É inadmissível que um engenheiro de informática não tenha um bom conhecimento desta linguagem.