- Este tópico contém 24 respostas, 3 vozes e foi atualizado pela última vez 16 anos, 11 meses atrás por
vieri.
-
AutorPosts
-
3 de abril de 2009 às 7:25 pm #86069
vieri
Participante*”backupear”
3 de abril de 2009 às 9:11 pm #86072David Siqueira
ParticipanteNa verdade os canais são alocados para o processo como um todo, não é um canal por Piece, senão demoraria uma vida, usa essa query aqui pra monitorar quando tu estiver rodando teu backup via RMAN você vai ver como é interessante :
select operation as “OPERACAO”, object_type as “TIPO”, status, output_device_type as “MEDIA”, to_char(end_time,’DD-MM-RRRR HH24:MI:SS’) as “DATA”, round(MBYTES_PROCESSED/1024,2) as “TAMANHO(MB)”
from v$rman_status
where operation ‘CATALOG’ and trunc(end_time)>=trunc(sysdate-1)
order by end_time
/
Abração Vieri
3 de abril de 2009 às 9:12 pm #86073David Siqueira
ParticipanteTem esse aqui também :
select sid, serial#, context, sofar, totalwork,
round(sofar/totalwork*100,2) "%_complete"
from v$session_longops
where opname like 'RMAN%'
and opname not like '%aggregate%'
and totalwork != 0
and sofar totalwork;Abração!!!
3 de abril de 2009 às 9:19 pm #86075Rodrigo Almeida
ParticipanteVieri,
Como o David disse, 5 é apenas uma sugestão, pelo menos a maneira de pensar está certo, vai depender muito de cada ambiente e o tempo de cada um, a quantidade de canais seria para limitar o paralelismo, sobre o limite máximo de RMAN é proporcionalmente igual ao do banco de dados, até onde o server aguentar.
Agora que está conhecendo mais o RMAN, vai ser dificil ficar longe dele.
Abraços,
Rodrigo Almeida
3 de abril de 2009 às 9:26 pm #86078David Siqueira
ParticipanteCorrigindo, é sim um canal por Piece, e se no caso seu tamanho de backup piece for limitado você tem que fazer uma conta que é mais ou menos assim : [b]LIMITE / QTDE DE CANAIS = Numero de backpieces
[/b].Desculpe o equivoco!!!
Abcs.
David[/b]
6 de abril de 2009 às 7:40 pm #86094vieri
ParticipanteValeu David,
teve humildade de rever seu post,
eu também pensava assim, mas eu vi funcionando e analisando o log
ao mesmo tempo deu para verificar que ele aloca um channel para cada backup piece. 1° ele verifica quais datafiles vão fazer parte de cada backup piece, e qual canal vai ser alocado para cada backup piece,
após isso ele utiliza um canal , para cada backup piece,
me parece que não precisa fazer está conta, ele mesmo já faz qdo está escolhendo os datafiles que iram compor o backup piece .
pelso meus teste o funcionamento interno é assim. O Rodrigo pode confirmar ou retificar.Qto ao paralelismo aumentei para cinco e piorou rodou em 7:30 ao invês de 6hrs. : /
Realmente é o tipo de coisa que só testando, e conhecendo a infra de rede,stotarge, horário de utilização da banda na empresa,
“Chutei” 3 com embasamento nestes fatores e me parece que é o número ideal.Mas é impossível prever qual ficará + rápido sem conhecer o ambiente.
[]s
6 de abril de 2009 às 9:26 pm #86095Rodrigo Almeida
ParticipanteE ae pessoal,
O algoritmo do RMAN, internamente, trabalha com uma distribuição dos datafiles entre os canais alocados de forma distribuida, resumidamente, de forma bem simplista, se você tem um banco de dados com 20 datafiles, e alocar somente 1 canal, será gerado somente 1 backup piece, porém, se aloco 2 canais, será gerado 2 backup pieces, se alocar 4 canais, será gerado 4 backup pieces com 5 datafiles!! Bem simplista.
Porém, internamento no RMAN ainda existe um algortimo de calculo internamente no buffer do RMAN (Large_pool se preferir) que faz uma contagem dos blocos que foram copiados e podem ser envidos para o backup piece, porém, nesse cálculo, pode envolver o tamanho de cada datafile e a quantidade de blocos que deve ser copiado (Lembrando que o RMAN não cópia EMPTY BLOCKS) e faz o calculo de quantos datafiles serão alocados para cada canal.
É complicado explicar assim rapidamente, mas é mais ou menos assim, porém, no primeiro exemplo, se tu tem um banco de dados, e todos os 20 datafiles tem o tamanho de 2GB, aí sim é uma regrinha besta, se alocar por exemplo apenas 2 canais, então será feito a cópia de 10 datafiles por canal!
Abraços,
Rodrigo Almeida6 de abril de 2009 às 10:17 pm #86096vieri
ParticipanteEu acho que o rman aloca mum canal com um conjunto de datafiles que o seu somatorio, seja “próximo” ao maxsize que vc setou no script.
a partir dai vem a compactação e o algoritimo de null compression e o backup piece acaba ficando sempre com tamanho
menor do que foi setado.Outra coisa que observei é que se os 3 canais por exemplo não forem sucifientes para backupear todo banco.
exemplo: um canal, acabou de realizar todo seu trabalho, ele aloca outro
que começa a trabalhar em paralelo dentro do seu escopo que são o conjuto de datafiles que ele escolheu. Ai nisso outro canal acabou seu trabalho, mas todos datafiles já foram escolhidos no input então ficaremos com apenas 2 trabalhandos e depois apenas 1.
Isso é uma coisa a se ficar atento qdo se trabalha em paralelo.Ficou confuso mas é por ai…
6 de abril de 2009 às 11:47 pm #86097Rodrigo Almeida
ParticipanteE mais ou menos isso, porém, quando tu fala para o RMAN trabalhar somente com 3 canais, ele trabalha somente com esse limite, o que pode ocorrer, é que um canal pode terminar mais cedo que outro e depois se realocado novamente.
Abraços,
Rodrigo Almeida8 de abril de 2009 às 9:22 pm #86184vieri
ParticipantePerfeito Rodrigo!
Esse post foi Alá ASKTOM, que possui foruns enormes.
8)
mto bom isso! -
AutorPosts
- Você deve fazer login para responder a este tópico.