Oi Fernando,

2009/10/1 Fernando Maia <maiaapc em gmail.com>:
> "Em um DW eu coloco na tabela fato as chaves estrangeiras de cada
> dimensão e coloco apenas um índice contendo todas estas chaves."

Conceitualmente correto *s*e* não houver dependências funcionais entre as
chaves.
Se houver, ou seja, de os valores de algumas chaves determinarem os valores de
outras (por exemplo, se você tiver chaves separadas para dia, mês, ano e dia
da semana), aí a utilidade mesmo que *conceitual* (porque utilidade prática
não tem nenhuma) de uma chave primária com todos os campos é bastante
questionável.

> esse DW é um trabalho da universidade, minha tutora ensiste em dizer que a
> fato deve ser criada daquela forma, segundo ela, faz parte do modelo
lógico
> da tabela fato a criação de todas as dimensões como primary key.

Ah, que bonitinho... e o que é que o modelo lógico tem a ver com a
implementação?! É uma fonte inspiradora ou emburrecedora?
Nada contra imaginar um banco de dados com desempenho infinito, número de
campos infinito e sem limite de espaço, porém na hora de colocar em prática
os conceitos e entidades planejadas pode ser necessário representá-las ou
armazená-las em objetos separados ou similares. Afinal, o desempenho não é
conceitual, o trabalho é concreto e portanto deve oferecer um ganho de
desempenho concreto comparado com consultas diretas aos dados de origem.

Se os próprios livros de análise e banco de dados já falam que temos como
etapas a elaboração do modelo *lógico* (conceitual, com a chave primária
inútil que ela quer) e do modelo *físico* (viável, útil e eficiente), por
que ela vai querer misturar?

Convença ela a ponderar melhor esse idealismo conceitual. *Nenhum* banco de
dados aceita muitos campos num índice exatamente porque tratar campos demais
torna o índice menos eficiente, ainda mais numa chave primária. O limite do
Postgres (32 campos num índice) já é muito alto comparado com outros bancos
de dados, e querer superá-lo só por um capricho conceitual precisa de uma
excelente justificativa.

O ônus da prova cabe a quem afirma. Pelo que entendi ela alega que *deve* ser
desse jeito. Pois bem, pode começar perguntando a ela de qual parágrafo de
que livro ela *pensa* que tirou essa idéia, pois nem no meio acadêmico ouvi
falar dessa necessidade.

Atenciosamente,

Mozart Hasse


_______________________________________________
pgbr-geral mailing list
[email protected]
https://listas.postgresql.org.br/cgi-bin/mailman/listinfo/pgbr-geral

Responder a