[firebase-br] Res: Re: RES: RES: Maneira mais rápida... SQL ou CÓDIGO ?

alexgpedroso em gmail.com alexgpedroso em gmail.com
Qui Ago 6 10:37:45 -03 2009


A simples troca de banco de dados já lhe ajudaria em muito ,  fora que com disse o Felipe voce poderia fazer em tempo real. Ja trabalhei com Access e te afirmo. Todo o tempo que voce perder na conversao para uma nova base vai valer a pena. Comeca com firebird, ae depois se houverem duvidas volte ao forum e pergunte a vontade. Mesmo porque este é um forum de firebird, e as pessoas estarão prontas para lhe ajudar.
Enviado pelo meu aparelho BlackBerry® da Vivo

-----Original Message-----
From: Felipe Aron <felipearon em gmail.com>

Date: Thu, 6 Aug 2009 09:44:33 
To: FireBase<lista em firebase.com.br>
Subject: Re: [firebase-br]
	RES: RES: Maneira mais rápida
	... SQL ou CÓDIGO ?


Porque não faz a movimentação de estoque em tempo real ?? Saida e entrada ??

2009/8/6 Luis <luisfirevb em gmail.com>

> Amigos não sou especialista, mas acho um absurdo minha rotina de montagem
> dos saldos parciais no controle de estoques dos 5 almoxarifados fixos e 62
> móveis, com 5 mil itens de materiais, percorrendo toda movimentação mensal
> (12 mil registros) levar +/- 3 horas para terminar, e isso feito em
> MSAccess.
>
> 12 mil lançamentos x 5 mil materiais = 60 milhões registros
> 60 milhões x 67 almoxarifados = 4 bilhões e 20 milhões de repetições
> Isso dentro de um laço que soma o valor lançado de cada item por cada
> almoxarifado.
>
> Agora uma rotina que leva 88 horas ou até 20 horas acredito ser
> inimaginável. Se há um processo tão moroso assim, acredito que a estrutura
> deva ser revista e alterada para tempo real, ou seja, a cada operação as
> ações são todas realizadas imediatamente, assim poderia se perder alguns
> milissegundos em cada operação, porém se ganharia essas horas ou dias ao
> final, já que todas as informações estariam prontas em tempo real.
>
> Luis
>
>
>
> -----Mensagem original-----
> De: lista-bounces em firebase.com.br [mailto:lista-bounces em firebase.com.br]
> Em
> nome de //---- Kelsie.Z.Marshall ----//
> Enviada em: quarta-feira, 5 de agosto de 2009 18:20
> Para: lista em firebase.com.br
> Assunto: Re: [firebase-br] RES: Maneira mais rápida... SQL ou CÓDIGO ?
>
> Oi Rodrigo
>
> Aqui o processamento levou 88 horas via código se eu conseguir reduzir este
> tempo pela metade via SQL já estou satisfeito.
>
> Eu não sei como fazer a chamada da SP, não entendo como funciona.
>
> Dentro da SP tem que existir um select ou o select é antes na chamada da SP
> ?
>
> []'s
>
> Kelsie
>
> "Rodrigo A. de Freitas"
> <rodrigo em solucoeseinformatica.com.br> wrote
> in message news:33613.6380829432$1249505659 em news.gmane.org...
> Kelsie,
>
> O banco também não faz milagres. Manipular 80 milhões de registros do
> primeiro ao último é algo que exigirá uma quantidade GIGANTESCA de tempo
> para rodar.
>
> Imagine que você faça uma stored procedure correndo do primeiro ao último
> registro, executando sua função check_id, que pode ser uma outra SP ou uma
> UDF. Se o banco levar um milissegundo por registro, você teria o seguinte:
>
> 80.000.000 de registros x 1 milissegundo = 80.000 segundos = 22,22 horas de
> processamento!
>
> Respondendo sua pergunta, de qualquer forma fazer isso internamente no
> banco
> seria mais rápido. Se você desenvolvesse essa rotina via código em uma
> linguagem de programação, você teria o tempo adicional de se fazer o fetch
> dos registros pra memória da sua máquina para em seguida executar o seu
> teste.
>
>
> []'s
>
>
> Rodrigo A. de Freitas
> Análise & Desenvolvimento
>
> Soluções & Informática
>
> -----Mensagem original-----
> De: lista-bounces em firebase.com.br
> [mailto:lista-bounces em firebase.com.br] Em
> nome de //---- Kelsie.Z.Marshall ----//
> Enviada em: 5 de agosto de 2009 16:59
> Para: lista em firebase.com.br
> Assunto: [firebase-br] Maneira mais rápida... SQL ou CÓDIGO ?
>
> Oi Pessoal
>
> Meu primeiro post nesta lista.
>
> Estou testando os limites do FB.
>
> Criei uma enorme tabela com 80.000.000 de registro e inseri dados
> aleatórios.
>
> ID VARCHAR(20)
> NOME VARCHAR(120)
>
> Agora eu preciso fazer um calculo para verificar se a ID está correta em
> cada registro.
>
> Tentei primeiro fazer através do código mas levou muito tempo
> (impraticável).
>
> Meu código:
>
> CHECK_ID(ID)
> {
>   ...varios calculos...
>   return valido ou nao valido
> }
>
>  DM->IBQueryGen->First();
>  while(!DM->IBQueryGen->Eof)
>  {
>     if(CHECK_ID(DM->IBQueryGen->FieldByName("ID")->AsString)
>       ct_valid++;
>     else
>      ct_invalid++;
>     DM->IBQueryGen->Next();
>  }
>
> Existe uma maneira de fazer isto via SQL com procedure, trigger ou UDF,
> ainda estou meio perdido nos conceitos.
>
> Thanks
>
> Kelsie
>
>
>
>______________________________________________
> 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
> Nenhum vírus encontrado nessa mensagem recebida.
> Verificado por AVG - www.avgbrasil.com.br
> Versão: 8.5.392 / Banco de dados de vírus: 270.13.44/2283 - Data de
> Lançamento: 08/05/09 05:57:00
>
>
>______________________________________________
> 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
>
>
>
>______________________________________________
> 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
>
>
>______________________________________________
> 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
>



-- 
Felipe Aron (www.felipearon.com.br - CURSO ON-LINE GRATUITO XNA)
Analista e Programador de Sistemas

http://br.groups.yahoo.com/group/xna-br/ --> Lista de Discussão sobre XNA
______________________________________________
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