sábado, 23 de novembro de 2013

ORACLE DB PERFORMANCE TUNING EXTENSÕES

Extensões

- Uma tabela com muitas extensões pode trazer problemas de performance.
- Existe uma certa queda de desempenho quando um segmento precisa alocar uma nova extensão.
- Podemos determinar quais são os segmentos prestes a efetuar uma alocação de extensão.


Prática 1/4

Note que mesmo com a tabela truncada ainda há alocação de blocos porque um segmento exige que exista, no mínimo, uma extensão. 

select owner, table_name, blocks, empty_blocks, num_rows, to_char(last_analyzed,'DD-MM-RRRR HH24:MI:SS') as "ANALYZE" from dba_tables where table_name = 'TESTE';

Prática 2/4

Vamos examinar os segmentos da tabela “TESTE” 

select extent_id num_extensao,segment_name nome_segmento, segment_type tipo_segmento, tablespace_name nome_tablespace, blocks total_blocos_alocados from dba_extents where segment_name = 'TESTE';


Prática 3/4

Eventualmente podemos aumentar a quantidade de extensões do segmento para evitar a extensão automática. O comando para essa ação é: 

ALTER TABLE scott.teste ALLOCATE EXTENT;

Prática 4/4

O resultado desta operação pode ser verificado pela consulta abaixo 

select segment_name nome_segmento, count(*) qtde from dba_extents 
where segment_name='TESTE' group by segment_name order by 1; 


select extent_id num_extensao, segment_name nome_segmento,
segment_type tipo_segmento, tablespace_name nome_tablespace,
blocks total_blocos_alocados from
dba_extents where segment_name='TESTE';



Nenhum comentário:

Postar um comentário