[firebase-br] Dúvida em performance de consulta

Otavio Benini otavio.benini em gmail.com
Sáb Set 29 18:00:30 -03 2012


boa tarde, Thiago

via de regra as tabelas tem um campo ID ou CÓDIGO, sequencial; então é só
marcar o último registro transferido
isso resolve o prbl dos novos mas não resolve o prbl dos registros
editados, alterados e mesmo os excluídos
então sua opção do campo status seria mais indicada, pois sempre que o
registro for editado vc volta o valor para "0" e se for excluído vc marca
com "D" e depois o exclui definitivamente
é indiferente para o banco ter esse campo com a grande maioria = '1"
eu criaria esse campo e criaria também um índice para ele, de sorte a
contribuir para o select qdo for transferir

-- 
sds
*Otavio Benini*
Benini Informática e Sistemas
(11) 8181-6553
(11) 4701-2797
info em benini.com.br
otavio.benini em gmail.com


Em 27 de setembro de 2012 15:52, Thiago <thiagortk em rtkomp.com.br> escreveu:

> Boa tarde a todos,
>
>
>
> Iremos criar uma rotina batch em nosso sistema onde os dados de dois ou
> três
> bancos serão migrados para um único banco. Não queremos no momento utilizar
> ferramentas de replicação, pois durante a transferência algumas regras de
> negócio serão aplicadas. A transferência será feita 1x ao dia, pensei em
> duas formas de fazer. A primeira (Numero 1) seria pesquisar os registros
> inseridos no dia anterior e transferir para o banco de destino, eu faria
> sempre um SQL na data de inserção, porém se por alguma falha não rodar a
> rotina teríamos que intervir manualmente pois perderíamos 1 dia de
> transferência. A segunda opção (Número 2) seria criar um campos status de
> transferência dentro das tabela necessárias e após a transferência
> maçaremos
> com o valor 1, sendo assim meu SQL seria nesse campos buscando por todos os
> registros com status=0 (de não transferido), assim eu não teria problemas
> se
> perdesse 1 dia de transferência como na situação Numero 1, porém meu SQL
> sempre afetaria todos os registros da tabela acredito.
>
>
>
> Minha dúvida é qual seria a melhor forma a mais rápida e menos custosa para
> o banco, fazer a pesquisa por data, sendo somente um dia, ou pelo status
> que
> terá o mesmo valor 1 repetido no campo status em toda a tabela. Eu acredito
> que seria melhor por data, pois pelo status ao longo do tempo sempre
> teremos
> pelo menos 95% da tabela com o campos status=1, acredito que essa pesquisa
> seria mais custosa. Mas não tenho 100% de certeza da minha teoria, preciso
> da ajude de vocês.
>
>
>
> Grato.
>
>
>
> Abraços.
>
> ______________________________________________
> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
> Para saber como gerenciar/excluir seu cadastro na lista, use:
> http://www.firebase.com.br/fb/artigo.php?id=1107
> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>



Mais detalhes sobre a lista de discussão lista