Boas meu buffer hits, quando roda uma relatório, fica girando 59%, 63%, 70%, as vezes fica 83%. Meu banco está com 40GB, meu parâmetro -B está com 400000 (5.6GB shared memory). De acordo com algumas pesquisas que fiz, o tamanho -B seria entre 5% e 10% do tamanho do banco, ou até o buffer hits ficar acima de 95%. Nesse caso, como faço vou aumentando o -B, se tiver memória disponível? Grato.
Marcio, Primeiro, como você chegou ao valor de 5.6gb? Mesmo com bloco de 8kb, 400mil buffers = 3.2gb. Esta é a área que você tem para cache de dados. As outras áreas da SM são, digamos, para outras coisas... Tamanho de -B é controverso. 5 a 10% é um bom início, mas você tem que ajustar conforme análise. O melhor valor, normalmente, é aquele que te dá o melhor % de acerto sem degradar outras aplicações (inclusive outros bancos). De cabeça agora, os 2 principais fatores que não contribuem com o BH: - programa ineficiente (se o programa ler o banco inteiro não tem muito o que fazer); - espalhamento dos dados. Se os dados de uma tabela estão espalhados por todos os blocos do banco, será necessário ler todos os blocos para ler apenas 1 tabela. Ineficiente...
Kirchner, No promon - Activy -> o Shared Menory está assim 5693M. Na verdade, até hoje não entendi direito o cáculo para o parãmetro -B. O programa que está sendo gerado no momento é o Razão Geral do Estoque. Para um grupo meio grande, demorou 1 hora...coloquei outro grupo maior faz tempo e até agora está rolando. Com buffer hora baixo e em poucos momentos acima de 95%. Acho que tenho que saber primeiro como calcular esse -B... vou ativar o profiler no Datasul e depois analisar onde está pegando. Pode dar uma dica como faço o cáculo?