Modelagem e Administração de Dados em PostgreSQL

Propaganda
Do que vamos falar
..
O Modelo Relacional
.
..
...
.
Administrativia
Modelagem e Administração de Dados em
PostgreSQL
Fundamentos e práticas em bases de dados livres
Leandro Guimarães Faria Corcete DUTRA
1 Comunidade
Brasileira de PostgreSQL
2 ArsData
3 Atech
Fundação Aplicação de Tecnologias Críticas
.
.
.
.
.
.
Conferência PostgreSQL Brasil 2007PostgreSQL BR, ArsData & Atech
Leandro Guimarães Faria Corcete DUTRA
Modelagem e Administração de Dados em PostgreSQL
Do que vamos falar
..
O Modelo Relacional
.
..
...
.
Administrativia
Modelagem e administração, não diagramação e
mapeamento
Modelagem é muito mais que diagramação.
Mapeamento torna a administração impossível.
SQL não é relacional e contém muitos limites arbitrários.
.
Leandro Guimarães Faria Corcete DUTRA
Modelagem e Administração de Dados em PostgreSQL
.
.
.
.
.
PostgreSQL BR, ArsData & Atech
Do que vamos falar
..
O Modelo Relacional
.
..
...
.
Administrativia
Escolhendo ferramentas
Diagramadores têm de suportar dicionários de dados.
Mapeadores têm de passar do modelo de dados para o de classes.
.
Leandro Guimarães Faria Corcete DUTRA
Modelagem e Administração de Dados em PostgreSQL
.
.
.
.
.
PostgreSQL BR, ArsData & Atech
Do que vamos falar
..
O Modelo Relacional
.
..
...
.
Administrativia
O problema da gestão de dados
Linus e os dados
…o git é um projeto simples, com estruturas de dados
estáveis e razoavelmente bem documentadas. …sou
grande proponente de projetar o código em torno dos
dados, em vez do contrário, e creio que é uma das razões
para o git ter tido bastante sucesso.
…a diferença entre um mau e um bom programador é
se considera o código ou as estruturas de dados mais
importantes. Maus programadores preocupam-se com
código. Bons programadores preocupam-se com
estruturas de dados e seus relacionamentos.
— Torvalds, Linux.
.
Leandro Guimarães Faria Corcete DUTRA
Modelagem e Administração de Dados em PostgreSQL
.
.
.
.
.
PostgreSQL BR, ArsData & Atech
Do que vamos falar
..
O Modelo Relacional
.
..
...
.
Administrativia
O problema da gestão de dados
Um clássico
Mostra-me teus fluxogramas e esconda-me tuas
tabelas, e continuarei no escuro.
Mostra-me tuas tabelas, e… não precisarei de teus
fluxogramas: serão óbvios.
— Brooks, Frederick Phillips, Jr.: The Mythical
Man-Month.
.
Leandro Guimarães Faria Corcete DUTRA
Modelagem e Administração de Dados em PostgreSQL
.
.
.
.
.
PostgreSQL BR, ArsData & Atech
Do que vamos falar
..
O Modelo Relacional
.
..
...
.
Administrativia
O Modelo Relacional
Abstrato
Independência de dados
Sem limites arbitrários
.
Leandro Guimarães Faria Corcete DUTRA
Modelagem e Administração de Dados em PostgreSQL
.
.
.
.
.
PostgreSQL BR, ArsData & Atech
Do que vamos falar
..
O Modelo Relacional
.
..
...
.
Administrativia
Componentes
Componentes do modelo relacional
Bases de dados ou conjuntos organizados de dados.
Esquemas ou espaços de nomes para os objetos de dados.
Domínios ou listas de valores aceitáveis numa determinada
variável.
Operadores ou operações possíveis sobre determinado domínio.
Tipos de dados ou domínio mais os operadores correspondentes.
Relvars ou variáveis de relação, ou estruturas de tabelas.
Relações ou tabelas, com n atributos.
Restrições de integridade de dados ou regras de negócio.
.
Leandro Guimarães Faria Corcete DUTRA
Modelagem e Administração de Dados em PostgreSQL
.
.
.
.
.
PostgreSQL BR, ArsData & Atech
Do que vamos falar
..
O Modelo Relacional
.
..
...
.
Administrativia
Restrições de integridade
Declaração de regras como restrições
Restrições são declarativas mas aplicação é procedural.
Centralização das regras no servidor de dados.
Formalização das regras na análise.
Dizer o quê em vez de como facilita a otimização.
.
Leandro Guimarães Faria Corcete DUTRA
Modelagem e Administração de Dados em PostgreSQL
.
.
.
.
.
PostgreSQL BR, ArsData & Atech
Do que vamos falar
..
O Modelo Relacional
.
..
...
.
Administrativia
Restrições de integridade
Tipos de restrições de integridade
de tipo é a definição do próprio tipo.
de atributo é a definição do tipo dum atributo.
de relvar é uma restrição sobre uma relação.
de base de dados é uma restrição sobre várias relações.
.
Leandro Guimarães Faria Corcete DUTRA
Modelagem e Administração de Dados em PostgreSQL
.
.
.
.
.
PostgreSQL BR, ArsData & Atech
Do que vamos falar
..
O Modelo Relacional
.
..
...
.
Administrativia
Domínios, operadores e tipos de dados
Tipos de dados em SQL
Tipos de dados simples são muito poucos mesmo para começar
uma aplicação muito simples.
Falta de extensibilidade significa que muitas vezes não se
conseguem criar tipos específicos para a aplicação.
Extensibilidade de baixo nível exige programação em linguagens de
sistema (C, D &c) — o ISO SQL não tem a
capacidade de gerar seus próprios tipos!
DOMAINS e TYPES SQL são apenas gambiarra que precisam ser
combinadas para serem úteis.
.
Leandro Guimarães Faria Corcete DUTRA
Modelagem e Administração de Dados em PostgreSQL
.
.
.
.
.
PostgreSQL BR, ArsData & Atech
Do que vamos falar
..
O Modelo Relacional
.
..
...
.
Administrativia
Domínios, operadores e tipos de dados
Problemas da extensibilidade de tipos
Violar o padrão SQL com linguagens proprietárias de extensão
(C#, PL/SQL).
Violar o padrão com definições diferentes de tipos (objetos &c).
Exigir linguagens de baixo nível como C ou D em vez do próprio
SQL/PSM.
.
Leandro Guimarães Faria Corcete DUTRA
Modelagem e Administração de Dados em PostgreSQL
.
.
.
.
.
PostgreSQL BR, ArsData & Atech
Do que vamos falar
..
O Modelo Relacional
.
..
...
.
Administrativia
Domínios, operadores e tipos de dados
Problemas da implementação
Cobre poucos valores através de ENUM.
TYPE não usa CONSTRAINTs.
DOMAIN não implementa operadores.
Combinando primeiro TYPE, depois DOMAIN.
.
Leandro Guimarães Faria Corcete DUTRA
Modelagem e Administração de Dados em PostgreSQL
.
.
.
.
.
PostgreSQL BR, ArsData & Atech
Do que vamos falar
..
O Modelo Relacional
.
..
...
.
Administrativia
Outras restrições
Outras restrições de integridade
NOT NULL ajuda a normalização e evita surpresas.
Chaves primárias transformam simples tabelas em relvars.
Chaves estrangeiras ou integridade referencial.
CHECK pode ser usado para implementar outras restrições,
com limites.
Gatilhos embora procedurais tapam alguns buracos.
Algumas restrições ficam de fora.
.
Leandro Guimarães Faria Corcete DUTRA
Modelagem e Administração de Dados em PostgreSQL
.
.
.
.
.
PostgreSQL BR, ArsData & Atech
Do que vamos falar
..
O Modelo Relacional
.
..
...
.
Administrativia
Administrativia
Dicionários de dados são essenciais.
Diagramas podem, e devem, ser gerados automaticamente.
Ferramentas de modelagem podem unificar modelos de diversas
bases.
.
Leandro Guimarães Faria Corcete DUTRA
Modelagem e Administração de Dados em PostgreSQL
.
.
.
.
.
PostgreSQL BR, ArsData & Atech
Do que vamos falar
..
O Modelo Relacional
.
..
...
.
Administrativia
Administrativia
Glossários são úteis.
Dicionários de tipos de dados são essenciais.
Dicionário geral de dados dão mais trabalho.
Diagramas te promovem: AutoDoc!
.
Leandro Guimarães Faria Corcete DUTRA
Modelagem e Administração de Dados em PostgreSQL
.
.
.
.
.
PostgreSQL BR, ArsData & Atech
Download