Pular para o conteúdo
Visualizando 15 posts - 1 até 15 (de 15 do total)
  • Autor
    Posts
  • #85732
    Avatar de mpvargasmpvargas
    Participante

      Bom dia.
      Estou configurando um novo servidor e ao fazer os testes observei que em determinado momento o banco praticamente trava, pois não está concluindo o checkpoint. Executei o ADDM e recebi a seguinte mensagem

      RECOMMENDATION 1: DB Configuration, 77% benefit (2241 seconds)
      ACTION: Verify whether incremental shipping was used for standby
      databases.

      RECOMMENDATION 2: DB Configuration, 77% benefit (2241 seconds)
      ACTION: Increase the size of the log files to 1792 M to hold at least 20
      minutes of redo information.

      No redo log tenho 5 grupos de 400MB. Eles estão em disco separados e estou usando RAID 1.
      Hoje, até o momento, gerou 22GB de logs na base de testes…
      Seria interessante eu aumentar o redo log colocando mais grupos com arquivos maiores?
      Obrigado.

      #85734
      Avatar de vierivieri
      Participante

        aumente os log’s para 1G .

        este banco é um dataguard ?

        #85735
        Avatar de mpvargasmpvargas
        Participante

          Fala Vieri…
          O banco não é dataguard, ele trabalha isolado… mas o ERP é microsiga hehehe

          Aumentei para 5 grupos de 1GB
          Agora recebi msg do ADDM com relação ao DBWR…

          Database writers (DBWR) were unable to keep up with the demand for free buffers.

          RECOMMENDATION 1: DB Configuration, 81% benefit (4905 seconds)
          ACTION: Consider increasing the number of database writers (DBWR) by setting the parameter “db_writer_processes”. Also consider if
          asynchronous I/O is appropriate for your architecture.

          Será que posso alterar esse parâmetro?

          #85738
          Avatar de David SiqueiraDavid Siqueira
          Participante

            Fala MP…cara tu até pode incrementar teu DB_WRITE_PROCESSES, mais uma dúvida minha , esse banco é produção?..Porque tu escolheu RAID 1? Quando em quase 100% é recomendado RAID10 para Servers com Oracle Database. Você chegou a olhar no alert se tinha a mensagem de Checkpoint imcomplete antes de tu aumentar os REDO’s?…

            Abcs.

            David

            #85740
            Avatar de mpvargasmpvargas
            Participante

              Fala Drbs,
              Esse banco é de produção sim.
              O servidor tem 6 discos e a minha idéia era colocar RAID 10 mas na verdade eu gostaria de colocar os logs num grupo de discos separados…
              Para tentar aliar segurança e velocidade, optei em dividir os discos em 3 grupos de 2 discos com RAID 1 e coloquei dados, indices e logs cada um num grupo de discos… Não sei se de repente seria melhor optar pelo RAID 10 com 4 discos e deixar os outros 2 para logs, tb é uma opção…
              Com relação aos redo’s, essa msg de não completar o checkpoint estava no EM… na opção desempenho, o configuration estava alto e observei que o processo era do checkpoint…
              E também em Sessões Bloqueadoras estava mostrando que o checkpoint estava demorando.

              #85742
              Avatar de David SiqueiraDavid Siqueira
              Participante

                Entendi a sua preocupação em separar o RAID por grupos de opções de acordo com o que você iria armazenar em determinados discos, porém cara eu acredito que tudo em RAID 10 já resolveria seu problema, e também tem uma maior cobertura em termos de segurança a nível de Hardware, quanto ao alerta de checkpoint gerado no seu Database, acredito que se tu conseguir fazer uma medição mais precisa pra identificar se o problema é tamanho pequeno de Redo ou se é poucos membros em um mesmo grupo, você conseguirá sanar seu problema sem ter que superdimensionar seus log members, e tambem consequentemente gastar disco colocando grupos enormes de redos, gerando mais sobrecarga nos background processes de gravação, se estiver em archive mode então nem se fala a quantidade de disco que vai queimar esse seu bd, mais enfim, eu tive esse problema aqui e analisando bem consegui entender melhor que minha necessidade era adequar a quantidade de log members a necessidade do database e tambem o tamanho de meus Redo Log files, isso ajudaou bastante, não tive mais a mensagem de erro logada no meu Alert log, e tamb´me mantive a performce estabilizada dos backgroud processes, digo isso porque percebi que logo após vc ter alterado o tamanho dos teus Redos o Database já reclamou dos DBWR, ou seja o que tinha sido setado anteriormente já não servia mais para o novo cenário e consequentemente seu processo de DBWR deveria estar trabalhando mais.
                Bom essa é minha contribuição, espero que lhe ajude em algo.

                Abração.

                David

                #85747
                Avatar de mpvargasmpvargas
                Participante

                  David,
                  Muito Obrigado pela ajuda.
                  Optei pela distribuição dos discos porque sempre vejo nos comentários que é importante separar os processos, não sei se fiz da forma correta, … pela sua experiência, você acha que seria interessante eu reconstruir o servidor e colocar tudo no RAID 10?
                  Quanto aos logs, vou diminuir para uns 500Mb e colocar mais grupos… e vou observando conforme a demanda… A Oracle recomenda que seja feito um checkpoint a cada 20 minutos, mas isso é um pouco complicado porque depende muito dos processos que estão sendo executados…
                  Aqui no trabalho por exemplo, tem período que é super tranquilo, mas no começo do mês tem fechamento de folha, processos contábeis, processos no contas à pagar… fica sobrecarregado.
                  Quanto ao DBWR é melhor deixar como está?
                  Obrigado.

                  #85751
                  Avatar de vierivieri
                  Participante

                    verifique como está o parâmetro db_writer_processes se estiver como
                    1(deve está) aumente para 3,
                    sou a favor de testar sempre,
                    se ficar ruim volta como estava e parte para outras estratégias,
                    tunning tem que mecher mesmo, se ficar mto teórico não irá sair do lugar!!

                    #85752
                    Avatar de vierivieri
                    Participante

                      sempre salvando seu pfile com datas tipo.

                      createp pfile from spfile;

                      e dps de um mv nele para data tipo mv init.ora init13032008.ora

                      ai vc poderá acompanhar os parâmetro e voltar a uma situação anterior
                      sem problemas…

                      #85753
                      Avatar de David SiqueiraDavid Siqueira
                      Participante

                        Então brother a questão é a seguinte, se você puder faça um teste simples , em servidores com arquitetura RAID diferente de RAID 10 você sempre tem um processo faltando, como assim?, digo isso porque o RAID é a parte da Arquitetura ainda a nivel de disco onde vocÊ determina como trabalhará, maxima performance, maxima segurança, ou oi dois?..Portanto escolher um determinado tipo implica em deixar um lado sempre descoberto, eu utilizo o RAID 10 pelo fato dele oferecer maior segurança a minha arquiteura de infra em caso de possiveis danos e possiveis problemas com Hardware etc e tal, não sei quais são seus servidores nem tão pouco a configração deles, mais é sempre bom nos prevenirmos e termos de segurança e o RAID é a tecnologia que garante essa segurança, é claro que há uma série de fatores externos também, mais para nós que lidamos com banco Oracle acredito que o mais pertinente seja ter o máximo possivel de disponibilidade com a máxima segurança também. Quanto ao seu parametro DBWR se tiver como 1 incremente mais alguns , a Oracle tem uma receitinha de bolo para incrementar esse paramtro caso vocÊ queira ler antes de alterar, e já que é do seu conhecimento que todo determinado periodo do mês seu Database sofre um aceso diferenciado e executa processos mais longos e mais demorados que geram demandas maiores, sugiro a vocÊ criar uma espécie de configuração de periodo, o que seria isso? Mude alguns parametros do seu Database afim de otimizar melhor tudo que for gerado nele nesse periodo critico, basta você criar um spfile ou pfile (se voce utilizar pfile) com alguns dimensionamentos de SGA diferenciados, e antes do periodo de execuções criticas vocÊ efetua um Shutdown em seu Database , faz um startup com esses parametros otimizados e acompanhe , com isso você vai disponibilizar maior flexibilidade ao seu Database para realizar as tarefas que ele teria um pouco mais de trabalho se fosse mantido a configuração original do cotidiano , onde não há tanta demanda assim.

                        Abração meu velho, e vamo que vamo!!!
                        Espero ter ajudado, qualquer coisa ..estamos ai!!!!

                        #85757
                        Avatar de David SiqueiraDavid Siqueira
                        Participante

                          Se voce tiver um tempinho e um pouco de paciencia, dê uma lida neste artigo, acredito que você ja deva ter visto algo sobre :

                          http://www.conectiva.com/doc/livros/online/9.0/servidor/raid.html

                          Abração.

                          David

                          #85759
                          Avatar de vierivieri
                          Participante

                            exelente explanação drbs,

                            vargas,
                            quando se sentir seguro e alterar o parâmetro poste oque ouve com a instância, oque melhorou e oque piorou…

                            []s

                            #85764
                            Avatar de mpvargasmpvargas
                            Participante

                              Obrigado pela ajuda de todos.
                              Ainda tenho tempo para fazer alguns testes pois colocarei esse servidor em produção somente na 2ª feira.
                              Alguns detalhes para esclarecer:
                              Com relação ao RAID, de acordo com a documentação, o RAID 1 e 10 são equivalentes, certo? Não é mais recomendável eu usar 3 grupos de RAID 1 do que somente um filesystem com RAID 10? Não sei se estou certo, mas não é melhor ter os processos distribuidos do que em 1 filesystem somente?
                              Com relação ao DBWR, existe alguma recomendação da Oracle… Em que implica o aumento do parâmetro? Influencia em alguma outra coisa?

                              Com relação ao servidor, a configuração é:
                              Intel QuadCore XEON 2.66GHZ 64Bits
                              14GB RAM
                              S.O. Linux RedHat 4
                              HD 6 x 140GB

                              #85765
                              Avatar de David SiqueiraDavid Siqueira
                              Participante

                                Na verdade meu chapa o que você esta com dúvida é sobre o comportamento do STRIP disk de acordo com o nível de RAID que você usa, pois o RAID 1 é um dos niveis que compõem o RAID 0, então ao invés de equivalencia eu usaria o termo composição seu RAID é : RAID 1 + RAID 0, onde um proporciona espelhamento e o outro multiplexação.

                                E quanto ao DB_WRITER só pra não ser mais chato do que já sou ..heheheh..ai vai uma nota que li a algum tempo já, mais que é muito esclarecedora :

                                [i][b]The DB_WRITER_PROCESSES parameter supported on Windows NT/Windows 2000?
                                The Oracle8i documentation and [BUG:925955] incorrectly state that this parameter is not supported on Windows NT/2000.
                                Multiple DBWR processes are mainly used to simulate asynchronous I/O when the operating system does not support it. Since Windows NT and Windows 2000 use asynchronous I/O by default, using multiple DBWR processes may not necessarily improve performance. Increasing this parameter is also likely to have minimal effect on single-CPU systems. Increasing this parameter could, in fact, reduce performance on systems where the CPU’s are already over burdened. In cases where the main performance bottleneck is that a single DBWR process cannot keep up with the work load, then increasing the value for DB_WRITER_PROCESSES may improve performance.
                                When increasing DB_WRITER_PROCESSES it may also be necessary to increase the DB_BLOCK_LRU_LATCHES parameter, as each DBWR process requires an LRU latch[/b].[/i]

                                Segue abaixo o link caso queira ler na integra meu brother :

                                http://www.pafumi.net/Tuning.htm

                                Abração!!!

                                #85784
                                Avatar de mpvargasmpvargas
                                Participante

                                  OK
                                  Obrigado pela ajuda.

                                Visualizando 15 posts - 1 até 15 (de 15 do total)
                                • Você deve fazer login para responder a este tópico.
                                plugins premium WordPress