[firebase-br] Lentidao em Base de dados Grande

Rodrigo dominio em engeplus.com.br
Qui Jan 21 17:59:05 -03 2010


Oi Eduardo, boa tarde,

Deixa eu tentar te explicar qual a situação

Com a mudança dos sistemas para o PAF-ECF, estou transferindo os dados da 
Frente de Loja para a Retaguarda.

No estado atual a Tabela Pedidos ta em torno de 280,000 registros e a tabela 
itens em torno de uns 800.000 registros e a tabela pagto uns 350.000 
registros. A tabela estoque uns 20.000 registros.

Faço tudo com IBOQuery nao utilizo IBTable.

- O primeiro registro faz rapido da Tabela PEDIDOS da Frente de Loja para 
Retaguarda.  2 segundos

- Ja a tabela ITENS faz inserção da Frente de Loja para a Retaguarda e 
atualiza estoque na tabela estoque e atualiza uma tabela chamada movimento 
com a movimentação do estoque. 30 segundos

- Ja a tabela PAGTO faz inserção da Frete de Loja para Retaguarda e atualiza 
todas as formas de pagto possiveis, como Caixa, Contas a Receber, Cartao 
etc... 10 segundos aprox.

Para transferir uma venda em torno de 42 segundos, imagina passar 300 vendas 
diarias. leva mais tempo atualizando do que vendendo. hehe

Minha esperança é que tivesse alguma propriedade que pudesse alterar para 
nao ler a quantidade de registros ja existentes na tabela, dessa forma 
aumentando o desempenho.

Grato,

Rodrigo










----- Original Message ----- 
From: "Eduardo Bahiense" <eduardo em icontroller.com.br>
To: <lista em firebase.com.br>
Sent: Thursday, January 21, 2010 5:04 PM
Subject: Re: [firebase-br] Lentidao em Base de dados Grande


Olá Rodrigo

Se você está usando algo como TTable no Delphi e codificando

Table.Insert;
Table.Field[n].Asinteger := 0;
Table.Post;

e tiver controles dataware ativos, não há cristo que possa te ajudar.

Talvez, se vc der um table.disablecontrols, inserir e fizer um
table.enablecontrols, você consiga algum pequeno ganho, mas o ideal é
esquecer essa história de table e trabalhar sempre com queries,
recuperando somente um número limitados de registros.

Eduardo

> Estou com uma base de dados com mais ou menos 1.500.000 registros.
>
> Uso IBOQuery para fazer umas consultas e inserções. O Caso é o seguinte,
> quando vou inserir um item em uma destas tabelas com 400.000 registros
> demora
> muito para concluir, parece que ele abre todos os registros, depois 
> atualiza
> depois
> reabre todos os registros. Quando uso a base de dados limpa fica que é uma
> bala,
> mas com esse tanto de registros fica bem lenta.


______________________________________________
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

__________ NOD32 4793 (20100121) Information __________

This message was checked by NOD32 antivirus system.
http://www.eset.com






Mais detalhes sobre a lista de discussão lista