[firebase-br] Modelagem para ganhar desempenho

Paulo Portella pportellaa.firebase em gmail.com
Sex Fev 25 12:40:15 -03 2011


Em 25/02/2011 12:10, Marcelo Moreira escreveu:
> Pessoal,
> Estou precisando tomar uma decisao no desenvolvimento de alguns
> procedimentos em um sistema e gostaria de pedir a opiniao de voces,
> seguinte:
> Preciso inserir algumas informacoes em uma tabela, e depois de inseridas as
> informações  e tratadas preciso pegar as informacoes desta tabela, jogar em
> outra tabela e depois escluir o registro da tabela anterior. Seria mais ou
> menos assim, uma tabela chamada TB_TRABALHO e outra chamada TB_HISTORICO
> Resumindo:
>
> 1 - Informações entram na tabela TB_TRABALHO
> 2 - Sistema processa e trabalha as informações na tabela TB_TRABALHO
> 3 - Pego as informações ja processadas da tabela TB_TRBALHO e insiro na
> tabela TB_HISTORICO (aqui eu teria de dar um select na tabela TB_TRABALHO
> para dar um insert na tabela TB_HISTORICO
> 3 - Deleto as informações da tabela TB_TRABALHO
>
> Dai fiquei pensando em modificar para a segunda situação:
>
> 1 - Informações entram nas duas tabelas ao mesmo tempo TB_TRABALHO e
> TB_HISTORIO (Porem na TB_HISTORICO eu teria um campo tipo um flag onde
> informaria que aquela informacao ainda nao foi trabalhada)
> 2 - Sistema processa e trabalha as informações na tabela TB_TRABALHO
> 3 - Depois que o sistema trabalhar o registro eu apenas mudo o flag da
> tabela TB_HISTORICO informando que o registro foi trabalhado (aqui eu nao
> teria aquele select que tive na primeira situação)
> 4 - Deleto as informações da tabela TB_TRABALHO
>
> O que eu gostaria de saber é se eu trabalhar com a segunda situação faria
> alguma diferença? Iria ganhar desempenho? Teria menos atividade LEITURA e
> ESCRITA nos HDs? Alguem sugere outra solução?
>
> Obrigado a todos pela atenção!
>
>

Apenas adicione um campo na sua tabela pra saber se o registro é 
"Trabalho" ou se virou "Histórico" (ou Ativo/Inativo)

Assim você:
* Não corre o risco de ter a mesma informação duplicada
* Não tem o trabalho de trazer de uma tabela pra outra tabela
* Não faz seu banco de dados crescer exponencialmente à toa.

-- 
Vida de americano é assim: iPhone, iPod, iPad, iMac….
Já a de brasileiro é assim:IPTU, IPVA, ICMS, IPI etc





Mais detalhes sobre a lista de discussão lista