Desfragmentação de Tabelas

Dúvidas, dicas e atualizações sobre o Treinamento Oracle Performance Diagnostics & Tuning.
Post Reply
portilho
Site Admin
Posts: 482
Joined: Wed May 29, 2013 8:51 am

Desfragmentação de Tabelas

Post by portilho » Thu Dec 26, 2013 7:37 am

Dúvida enviada por Pedro Carvalho.

A respeito de tabelas desfragmentadas, como fazemos um calculo para poder aplicar a desfragmentação ? Em todas que aparecer nos alertas?

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

Re: Desfragmentação de Tabelas

Post by portilho » Thu Dec 26, 2013 7:41 am

Você está falando a respeito dos Alertas do Enterprise Manager?
Se sim, estes alertas referem-se a espaço livre localizado pelo Segment Manager. Eu não gosto de chamar isso de fragmentação, mas sim de espaço libre em objetos.

A decisão de executar a correção deste problema deve então ser embasada pela sua necessidade de espaço livre, e possibilidade de downtime.

O fato de um segmento (uma tabela, um índice) não ser contíguo logicamente não significa que ele não está lozalizado de forma contígua fisicamente, e isto sim seria uma possível causa de lentidão durante leituras no objeto.

Mas espaço livre livre no segmento significa que a marca dágua está mais alta do que a soma dos dados propriamente ditos, e em uma leitura completa do objeto (Full Table Scan), o Oracle Database irá ler todos os blocos até a marca dágua. Ou seja, se sua tabela tiver 10% de espaço livre, um Full Table Scan terá que ler 10% a mais de blocos, desnecessariamente.

mtorres

Re: Desfragmentação de Tabelas

Post by mtorres » Wed Jan 04, 2017 12:13 pm

Portilho,

O Segment Advisor "aponta" estes segmentos que estão com espaço não utilizado, como no caso de tabelas com linhas deletadas que ainda ocupam espaço, a dúvida é: O uso do segment advisor (DBMS_ADVISOR) requer licenciamento específico?

Abraço.

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

Re: Desfragmentação de Tabelas

Post by portilho » Thu Jan 12, 2017 7:54 am

Olá.
Certos usos da Package DBMS_ADVISOR e das Views DBA_ADVISOR_* requerem as Licenças de Diagnostics e Tunign Pack. O Segment Advisor utiliza estes dois recursos (DBMS_ADVISOR.CREATE_TASK, DBA_ADVISOR_FINDINGS, etc) mas pela documentação este uso não viola estas Licenças.

Veja sobre o Diagnostics Pack:
Oracle Diagnostics Pack features can also be accessed by way of database server APIs and command-line interfaces:
...
- The DBMS_ADVISOR package is part of this pack if you specify ADDM as the value of the advisor_name parameter, or if you specify for the value of the task_name parameter any value starting with the ADDM prefix.
...
- All data dictionary views with the prefix DBA_ADVISOR_ are part of this pack if queries to these views return rows with the value ADDM in the ADVISOR_NAME column or a value of ADDM* in the TASK_NAME column or the corresponding TASK_ID.
...


Veja sobre o Tuning Pack:
Oracle Tuning Pack features can also be accessed by way of database server APIs and command-line interfaces:
...
DBMS_ADVISOR, when the value of the advisor_name parameter is either SQL Tuning Advisor or SQL Access Advisor.


Fonte: https://docs.oracle.com/cd/E11882_01/li ... #DBLIC2235

Post Reply