Redo Log Buffer Estimated Size

Dúvidas, dicas e atualizações sobre o Treinamento Oracle Performance Diagnostics & Tuning.
Post Reply
gcomenale

Redo Log Buffer Estimated Size

Post by gcomenale » Wed May 25, 2016 5:55 pm

Portilho,

Existe alguma view ou indício de melhoria para o redo log buffer?
Algo como a v$db_buffer_cache_advice? Existe alguma fórmula para calcular um tamanho mais adequado para o redo log buffer?

portilho
Site Admin
Posts: 482
Joined: Wed May 29, 2013 8:51 am

Re: Redo Log Buffer Estimated Size

Post by portilho » Thu May 26, 2016 11:02 am

Sim, é a View V$INSTANCE_RECOVERY, mais precisamente a coluna OPTIMAL_LOGFILE_SIZE.
Para que ela funcione, o parâmetro fast_start_mttr_target deve ser habilitado.

Configuring a Database for Performance - Redo Log Files.
http://docs.oracle.com/database/121/TGD ... TGDBA94147

gcomenale

Re: Redo Log Buffer Estimated Size

Post by gcomenale » Thu Jun 02, 2016 9:06 am

Esse link seria para os tamanhos do Redo Logs, certo?
Nesse caso eu preciso do FAST_START_MTTR_TARGET habilitado, certo?
O meu atual está como 0, meu medo é setar para um valor X e começar a forçar muitos checkpoints e ter perda de performance.

Eu queria saber sobre o redo log buffer (memória) porque não lembro de nenhuma advisor de memória para ele e, pensando nos conceitos de memória, não lembro da consequência de ter um rego log buffer muito grande... Se ele for muito grande 3gb, por exemplo, O LGWRn só irá escrever caso ocorra um commit, a cada 3 segundos e se estiver 1/3 cheio (1gb). Se minhas transações não chegarem até 1gb ele ainda assim irá escrever em caso de um commit ou 3 segundos... Nesse caso fico imaginando se um log buffer desse tamanho é mesmo necessário.

Obs: Meu log buffer atual está com 50mb em uma sga_target de 9gb e sga_max_size de 12gb.
Não tenho eventos de log file sync altos e nenhum de log buffer space. Mas tenho eventos de log file parallel write pequenos...
Sei que não é o foco do tuning conforme você ensinou, o meu maior problema é db file sequential read (tenho um disco de 1.2tb no ASM e outros 6 de 100gb, já vou solicitar a troca disso para discos menores para melhorar o I/O), mas o pessoal vai aumentar 20% da carga na aplicação e queria entender se existe algum método para calcular o redo log buffer, e o tamanho dos redo logs sem habilitar o FAST_START_MTTR_TARGET.


Lembro que o FAST_START_MTTR_TARGET é o "freio de mão do DBWn", se não me engano.

portilho
Site Admin
Posts: 482
Joined: Wed May 29, 2013 8:51 am

Re: Redo Log Buffer Estimated Size

Post by portilho » Fri Jun 03, 2016 7:56 am

Nossa, eu passei completamente batido pela palavra "Buffer", desculpe.

Sim, eu estava falando do tamanho dos Redo Logs.
Sim, precisa estar com o MTTR habilitado. Ele é um freio de mão, mas deixa-lo em digamos, 30 minutos ou mais, é saudável. Imagine um banco que, se sofrer ABORT, levará mais que 30 minutos para subir. É muita coisa. É uma escolha entre desempenho e disponibilidade.

Não conheço um Advisor para o Log Buffer, e o pior dele é que continha sendo um parâmetro OFFLINE, ou seja, não dá para ficar testando toda hora.

O Log Buffer pequeno não causaria log file parallel write, só log buffer space mesmo.

Existe sim um ponto certo para o Log Buffer, mais causaria lentidão, e menos também, mas depois de certo ponto, não influenciaria mais.

No OPDT, lo Lab de MBRC em Trace, fazemos o mesmo teste com Log Buffer de vários tamanhos (512k, 10M, 100M). Se a máquina já está sob pressão com a carga, o Log Buffer menor (512k, que acaba com o padrão de 1.6M nas nossas máquinas) traz um melhor desempenho para a operação. O de 10M é pior, mas o de 100M continua com o mesmo desempenho do de 10M.

gcomenale

Re: Redo Log Buffer Estimated Size

Post by gcomenale » Fri Jun 03, 2016 1:01 pm

Sem problemas :)

Acha viável deixar o MTTR ligado por uma hora em um dia comum (sem ser dia de fechamento) por 1 hora e ver o que ele fala, efetuar as alterações e depois desabilita-lo ou prefere ele em um dia de carga (dia de fechamento)?

Vou dar uma olhada nesse LAB!!

portilho
Site Admin
Posts: 482
Joined: Wed May 29, 2013 8:51 am

Re: Redo Log Buffer Estimated Size

Post by portilho » Mon Jun 06, 2016 10:22 am

Eu colocaria o MTTR em alta carga, e ir acompanhando o V$INSTANCE_RECOVERY.

gcomenale

Re: Redo Log Buffer Estimated Size

Post by gcomenale » Tue Jun 07, 2016 12:45 pm

Legal, vou planejar e posto o resultado aqui.

portilho
Site Admin
Posts: 482
Joined: Wed May 29, 2013 8:51 am

Re: Redo Log Buffer Estimated Size

Post by portilho » Wed Jun 08, 2016 4:39 am

Ok ! :-)

Post Reply