-automatic DOP: skipped because of IO calibrate statistics

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

-automatic DOP: skipped because of IO calibrate statistics

Post by Róli »

Boa noite,

Ao gerar um plano de execução de um SQL, na leitura do plano, tem a seguinte informação:

- automatic DOP: skipped because of IO calibrate statistics are missing

-- Banco de dados versão 11.0.2.3
-- Banco novo, recém migrado de 10G.

No Metalink temos uma nota referente:
Automatic Degree of Parallelism in 11.2.0.2 (Doc ID 1269321.1)

Conforme o Metalink: "When PARALLEL_DEGREE_POLICY is set to AUTO, Oracle Database determines whether a statement should run in parallel based on the cost of the operations in the execution plan and the hardware characteristics."

Dessa forma, alterando PARALLEL_DEGREE_POLICY para MANUAL ou LIMITED, não resolveria essa necessidade de calibração com DBMS_RESOURCE_MANAGER.CALIBRATE_IO?

O Metalink recomenda realizar a "calibração" conforme a seguir:

SET SERVEROUTPUT ON
DECLARE
lat INTEGER;
iops INTEGER;
mbps INTEGER;
BEGIN
-- DBMS_RESOURCE_MANAGER.CALIBRATE_IO (<DISKS>, <MAX_LATENCY>, iops, mbps, lat);
DBMS_RESOURCE_MANAGER.CALIBRATE_IO (2, 10, iops, mbps, lat);
DBMS_OUTPUT.PUT_LINE ('max_iops = ' || iops);
DBMS_OUTPUT.PUT_LINE ('latency = ' || lat);
dbms_output.put_line('max_mbps = ' || mbps);
end;

Além disso, há uma demora de 3 a 4x mais no tempo de execução do export full via expdp. Essa calibração teria alguma inferência?

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

Re: -automatic DOP: skipped because of IO calibrate statistics

Post by portilho »

Se você está com PARALLEL_DEGREE_POLICY em AUTO, o Oracle Database que vai decidir quando utilizar paralelismo.
Para isto, o Oracle precisa conhecer melhor o I/O, daí a necessidade do DBMS_RESOURCE_MANAGER.CALIBRATE_IO.

Alterando o PARALLEL_DEGREE_POLICY para MANUAL, esta mensagem não irá mais aparecer, mas o paralelismo automático também não será utilizado. você terá que utilizar o paralelismo com HINT PARALLEL, ou com ALTER TABLE ... PARALLEL, indicando o grau de paralelismo.

Não encontrei referência se o expdp utiliza o paralelismo automático, esta seria uma das explicações para ele demorar mais sem o CALIBRATE_IO.
Fora o Automatic DOP, o CALIBRATE_IO é utilizado pelo Resource Manager. Se ele não está ativado por I/O, não irá interferir em mais nada.

Róli

Re: -automatic DOP: skipped because of IO calibrate statistics

Post by Róli »

Obrigada pelo retorno.

Dúvida: Porque somente em algumas migração de 10g para 11g é solicitado calibração de IO com DBMS_RESOURCE_MANAGER.CALIBRATE_IO? seria pela mudança de configuração d hardware?


Sobre o expdp, abri um chamado no Metalink onde estou interagindo com eles.


Mais uma vez, Obrigada ;)

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

Re: -automatic DOP: skipped because of IO calibrate statistics

Post by portilho »

Esqueci de mencionar um detalhe do CALIBRATE_IO.

No comando abaixo...
DBMS_RESOURCE_MANAGER.CALIBRATE_IO (2, 10, iops, mbps, lat);
... você está solicitando ao Oracle para verificar a velocidade, latência e vazão de seu I/O, e o informando que você possui 2 discos (1o parâmetro), e que o tempo máximo tolerado de latência é de 10 segundos (2o parâmetro). Os últimos 3 parâmetros do comando são de retorno, informando o número máximo de requisições de I/O que o sistema suporta, o número máximo de Megabytes por segundo suportado, e real latência média detectada.

Post Reply