[firebase-br] RES: Questionario X Respostas

Douglas Tosi douglasht em gmail.com
Qua Nov 26 17:20:42 -03 2008


2008/11/26 Marcelo Moreira <marcelo em easysistemasmg.com.br>:
> 20.000 clientes respondendo um questionário de 30 perguntas eu vou ter na
> tabela de respostas 600.000 linhas isso construindo o sistema da primeira
> maneira que imaginei ágoras se eu fizer as respostas em coluna para a mesma
> situação:
> 20.000 clientes respondendo um questionário de 30 perguntas eu vou ter na
> tabela de respostas 20.000 linhas.

Marcelo, 600 mil linhas não é um número grande, nem de longe.

E este é um caso clássico de normalização boa.
Se amanhã você precisar de 31 perguntas, faz como? Você não vai querer
alterar todo o sistema, select por select para incluir uma nova
coluna.
Você pode imaginar: "Ah, então vou me preparar agora e já vou criar
umas 100 colunas, pra não ter que alterar nunca". :) E aí você vai
ficar carregando essas 100 colunas pra cima e pra baixo sem precisar.

Pra mim a decisão parece óbvia, mas se você está inseguro, faça testes de carga:
Crie a estrutura, carregue 30 perguntas, 20.000 clientes, 600.000
respostas e veja. Rode os comandos que você espera rodar em produção,
relatórios, etc.

hth,
-- 
Douglas Tosi
www.sinatica.com




Mais detalhes sobre a lista de discussão lista