Fundamentos da área global do sistema em 12c oráculo

o Sistema Global Area

(SGA) é um grupo de estruturas de memória compartilhada do Oracle 12c. Ele contém coisas como dados e SQL. Ele é compartilhado entre a Oracle processos em segundo plano e processos do servidor.

O SGA é composto de várias partes chamado componentes do SGA:

  • piscina colectiva

  • cache de buffer do banco de dados

  • Refazer tampão log

  • Grande piscina

  • piscina Java

  • streams piscina

As áreas de memória são alterados com parâmetros de inicialização.

  • Você pode modificar individualmente cada parâmetro para o ajuste ideal (apenas para os especialistas).

  • Você pode dizer a Oracle quanto de memória você deseja que o SGA para usar (para todos os outros).

Digamos que você queira Oracle para usar 1GB de memória. O banco de dados realmente leva que 1GB, analisa como tudo está funcionando, e sintoniza cada componente para o dimensionamento ideal. Ele ainda diz-lhe quando ele anseia por mais.

Redo tampão log no Oracle 12c

o refazer tampão log é outro componente de memória que o protege de si mesmo, má sorte, ea Mãe Natureza. Este buffer registra cada instrução SQL que altera os dados. A declaração em si e qualquer informação necessária para reconstruir é chamado de refazer entrada. Refazer entradas ficar aqui temporariamente antes de serem gravadas no disco. Esse tampão protege contra a perda de blocos sujos.

blocos de sujos não são gravados em disco constantemente.

Imagine que você tem um cache de buffer de 1.000 blocos e 100 deles estão sujos. Então, imagine uma fonte de alimentação vai de barriga para cima em seu servidor, e todo o sistema desmorona sem buffers sujos sendo escrito. Que os dados tudo está perdido, certo? Não tão rápido. . . .

O buffer de redo log é liberado quando essas coisas ocorrem:

  • Toda vez que há uma submissão aos dados no banco de dados

  • A cada três segundos



  • Quando o buffer de redo é 1/3 completo

  • Pouco antes de cada bloco de sujo é gravada no disco

Por que a Oracle se preocupar manter toda esta redo tampão coisinha quando em vez disso, ele poderia apenas escrever os buffers sujos no disco para cada cometer? Parece redundante.

  • O arquivo que registra essas informações é seqüencial. A Oracle sempre escreve para o final do arquivo. Ele não tem que olhar para cima onde colocar os dados. Ele apenas registra a entrada refazer. Um bloco existe em algum lugar em um arquivo. Oracle tem de descobrir onde, ir para aquele local, e gravá-lo. Refazer as gravações de buffer são muito rápidos em termos de I / O.

  • Uma instrução SQL pequena poderia modificar milhares ou mais blocos de banco de dados. É muito mais rápido para gravar essa afirmação do que esperar para o I / O de milhares de blocos. A entrada refazer leva uma fração de segundo para escrever, o que reduz a janela de oportunidade para o fracasso.

  • Ele também retorna a sua cometer apenas se a gravação for bem sucedida. Você sabe imediatamente que as alterações são seguros. Em caso de fracasso, a entrada refazer pode ter de voltar a ser executado durante a recuperação, mas pelo menos ele não está perdida.

Video: Tanks 101 - Chieftain Talks - World of Tanks

Grande piscina no Oracle 12c

Nós não estamos referindo-se ao tamanho da piscina do seu vizinho. Nem todo mundo usa o opcional grande piscina componente. A grande piscina alivia a piscina comum de requisitos de memória, por vezes,-transitórios.

Esses recursos utilizar a grande piscina:

  • Oracle Recovery Manager

  • A Oracle Servidor Compartilhado

  • Processamento paralelo

  • I / processos do servidor O-relacionados

Porque muitas dessas atividades não são constantes e alocar a memória somente quando eles estão funcionando, é mais eficiente para que eles executar em seu próprio espaço.

Sem uma grande piscina configurado, estes processos roubar memória da área SQL do pool compartilhado. Isso pode resultar em mau processamento SQL e redimensionamento constante da área de SQL do pool compartilhado. Nota: A grande piscina não tem LRU. Uma vez que se enche-se (se você dimensionar-lo muito pequeno) os processos reverter para seu antigo comportamento de roubar a memória do pool compartilhado.

piscina Java no Oracle 12c

A piscina Java não é uma piscina cheia de café (Ok, nós estamos cortando as referências da piscina.) O piscina Java é um componente de memória opcional.

Video: VOLEIBOL HISTÓRIA REGRAS E FUNDAMENTOS

A partir de Oracle 8i, os navios de banco de dados com o seu próprio Máquina Virtual JAVA (JVM), que pode executar código Java fora do SGA. Em nossa experiência, esta configuração é relativamente rara. Na verdade, você verá esta onde as ferramentas do Oracle específicos-são instalados.

No entanto, não deixe que isso desanimá-lo de desenvolver seus próprios aplicativos Oracle baseados em Java. O fato é que, mesmo que a Oracle tem seu próprio recipiente Java, muitas outras alternativas concorrentes de valor estão lá fora.

Streams Piscina no Oracle 12c

A piscina córregos é usado somente se você estiver usando a funcionalidade do Oracle Streams. Oracle Streams é uma tecnologia de replicação de dados opcional onde você replicar (reproduzir) as mesmas operações, alterações de dados ou eventos de um banco para outro (por vezes remoto) do banco de dados. Você faria isso se quisesse os mesmos dados de existir em duas bases de dados diferentes.

As lojas fluxos piscina tamponada mensagens de fila e fornece a memória usada para capturar e aplicar processos. Por padrão, o valor desta piscina é zero e aumenta dinamicamente se Oracle Streams está em uso.


Publicações relacionadas