Pular para o conteúdo
  • Este tópico contém 3 respostas, 2 vozes e foi atualizado pela última vez 17 anos, 7 meses atrás por CleitonHanzen.
Visualizando 4 posts - 1 até 4 (de 4 do total)
  • Autor
    Posts
  • #82475
    LoadingXp
    Participante

      Pessoal to estudando para certificação e me pintou as seguintes duvidas:

      Voce configura os seguintes parametros:
      SGA_MAX_SIZE=800M
      SGA_TARGET=1000M
      DB_KEEP_CACHE_SIZE=400M

      E deixa os outros parametros de dimensionamento da SGA com os seus padroes. Quanta memoria o Oracle poderá atribuir os componentes auto-ajustáveis?

      Resposta do Livro: O SGA_TARGET inclui tanto componentes gerenciados automáticamente quanto gerenciados manualmente, entao os 400MB atribuidos aos pools de retencao precisam ser subtraidos do total de 1000MB. Assim a melhor resposta é 600M. É a melhor resposta, mas possivelmente não está completamente precisa – será preciso um granulo para, entre outras, o buffer log. Ou seja 600MB

      ===========DUVIDA================

      1 – Esse instancia irá funcionar com esse parametro de SGA_MAX_SIZE para 800MB? SGA_MAX nao seria o valor total para ser alocado na SGA?

      2 – Esse parametro vai vir alocando em cada buffer ou alocado entre os buffers, e esse valor vai removido da TARGET?

      Obs. Na documentação da Oracle ele apenas cita que os parametros sao distintos e terão de ser marcados manualmente.

      😯

      Obrigado.

      Luciano Alvarenga Maciel Pires
      http://fulloracle.blogspot.com

      #82484
      CleitonHanzen
      Participante

        Opá..

        Fiz a minha certificação OCP há uns 6 meses e lembro destas perguntas… 🙂

        Bom, respondendo às suas perguntas:
        1. Quando você seta o parâmetro SGA_TARGET com um valor maior que o SGA_MAX_SIZE, o próprio banco vai igualar os parâmetros, ou seja:

        Antes de baixar a instance com os parâmetros no spfile:
        SGA_MAX_SIZE=800M
        SGA_TARGET=1000M
        Depois de subir a Instance:
        SGA_MAX_SIZE=1000M
        SGA_TARGET=1000M

        2. O que sobrar do SGA_TARGET dos parâmetros estáticos (log_buffer, db keep e recyle, etc….) será “espalhado” entre os demais pools da SGA. Caso você queira que um pool tenha um valor mínimo você pode setar no init/spfile, por exemplo, a shared pool, inicializar com 200M.

        Espero ter ajudado.

        Flw.

        #82486
        LoadingXp
        Participante

          Primeiramente muito obrigado pela resposta.

          Quanto a segunda me surgiu mais duvidas:

          O SGA_TARGET nao distribui memoria para o LOG_BUFFER neh? Pelo que eu sei essa memoria deverá ser determinada manualmente, será que eu estou errado?

          E o KEEP eu ainda nao entendi, se esse parametro é alocado já com a SGA_TARGET ou alocado **se necessário?

          KEEP = 400M

          Por exemplo:

          tenho lá o JAVA_POOL com 20M, quando o usuário Luciano entra ele executa algo que necessita-se mais JAVA_POOL, portanto o KEEP empresta para ele um espaço, para ele nao dar erros de memorias, após a transação do Luciano, ele disconecta-se e devolve a área novamente para o KEEP.

          Está certo? Poxa memoria eu acho um barato bem legal, mas bem complicadinho.

          Vlw mais uma vez!! 😉

          Att.
          Luciano Alvarenga M. Pires
          http://fulloracle.blogspot.com

          #82496
          CleitonHanzen
          Participante

            Opá…

            Bom, os parâmetros fixos de memória (log buffer, db pool keep/recyle, db_N_cache_size, etc..) contam como desconto da memória do SGA_TARGET.

            A respeito da alocação do JAVA_POOL e DB_KEEP, não vai funcionar pois o DB_KEEP é fixo e não é ajustado automaticamente pelo gerenciamento automático da SGA. Os parâmetros que “sofrem” o tunning automático são:

            DB_CACHE_SIZE, SHARED_POOL_SIZE, LARGE_POOL_SIZE, JAVA_POOL_SIZE e STREAMS_POOL_SIZE.

            Os demais, sem excessão, são fixos…. 😉

            E outra coisa, esse negócio de gerenciamento automático de SGA, é rázoalvemente bom, mas não ocorre com essa “rapidez”, tipo de uma sessão precisar de mais memória pra executar determinada coisa….e pra ambientes grandes, já peguei casos do banco ficar mais lento (com quantidade excessiva de latches e waits) por causa do SGA_TARGET. Portanto, utillize com moderação….

            Flw.

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