Pacote DBMS_AUTO_PARTITION
O pacote DBMS_AUTO_PARTITION
fornece rotinas administrativas para gerenciar o particionamento automático de esquemas e tabelas.
- Procedimento CONFIGURAR
Este procedimento configura definições para particionamento automático no Autonomous Database. - Função VALIDATE_CANDIDATE_TABLE
Esta função verifica se a tabela fornecida é um candidato válido para particionamento automático no Autonomous Database. - Função RECOMMEND_PARTITION_METHOD
Essa função retorna um ID de recomendação que pode ser usado com o procedimentoAPPLY_RECOMMENDATION
para aplicar a recomendação ou pode ser usado com a viewDBA_AUTO_PARTITION_RECOMMENDATIONS
para recuperar detalhes das recomendações para particionamento automático no Autonomous Database. - Procedimento APPLY_RECOMMENDATION
Este procedimento aplica a recomendação fornecida em um Autonomous Database. - Função REPORT_ACTIVITY
Essa função retorna um relatório das operações de particionamento automático executadas durante um período específico em um Autonomous Database. - Função REPORT_LAST_ACTIVITY
Esta função retorna um relatório da operação de particionamento automático mais recente executada em um Autonomous Database.
Tópico principal: Referência de Pacote Fornecido pelo Autonomous Database
Procedimento CONFIGURE
Este procedimento configura definições para particionamento automático no Autonomous Database.
Sintaxe
DBMS_AUTO_PARTITION.CONFIGURE (
PARAMETER_NAME IN VARCHAR2,
PARAMETER_VALUE IN VARCHAR2,
ALLOW IN BOOLEAN DEFAULT TRUE);
Parâmetros
Parâmetro | Descrição |
---|---|
|
Nome do parâmetro de configuração de particionamento automático a ser atualizado. Ele pode ter um dos seguintes valores:
AUTO_PARTITION_MODE define o modo de operação de particionamento automático e tem um dos seguintes valores:
AUTO_PARTITION_SCHEMA define esquemas para incluir ou excluir do uso do particionamento automático. Seu comportamento é controlado pelo parâmetro allow. O processo de particionamento automático gerencia duas listas de esquemas.
Inicialmente, ambas as listas estão vazias e todos os esquemas do banco de dados podem usar o particionamento automático. Se a lista de inclusão contiver um ou mais esquemas, somente os esquemas listados na lista de inclusão poderão usar o particionamento automático. Se a lista de inclusão estiver vazia e a lista de exclusão contiver um ou mais esquemas, todos os esquemas usarão o particionamento automático, exceto os esquemas listados na lista de exclusão. Se ambas as listas contiverem um ou mais esquemas, todos eles usarão o particionamento automático, exceto os esquemas listados na lista de exclusão.
Inicialmente, ambas as listas estão vazias e todas as tabelas do banco de dados podem usar o particionamento automático. Se a lista de inclusão contiver uma ou mais tabelas, somente as tabelas listadas na lista de inclusão poderão usar o particionamento automático. Se a lista de inclusão estiver vazia e a lista de exclusão contiver uma ou mais tabelas, todas usarão o particionamento automático, exceto as tabelas listadas na lista de exclusão. Se ambas as listas contiverem uma ou mais tabelas, todas elas usarão o particionamento automático, exceto as tabelas listadas na lista de exclusão. Se uma tabela não estiver em nenhuma das listas, as listas de inclusão e exclusão do esquema decidirão se uma tabela é candidata para particionamento automático. Se houver um conflito entre as listas de nível de esquema e as listas de nível de tabela, as listas de nível de tabela terão precedência. Para remover todas as tabelas da execução das listas de inclusão e exclusão:
|
|
Valor para a definição de configuração especificada em |
|
Aplicável somente para as definições de configuração
AUTO_PARTITION_SCHEMA ou AUTO_PARTITION_TABLE com um dos seguintes valores:
AUTO_PARTITION_SCHEMA e AUTO_PARTITION_TABLE .
|
Observações de Uso
-
Você pode verificar a configuração atual para configuração de particionamento automático usando o seguinte SQL:
SELECT * FROM DBA_AUTO_PARTITION_CONFIG;
-
Ao contrário da indexação automática, o particionamento automático não é executado periodicamente como uma tarefa em segundo plano. O particionamento automático só é executado quando você o chama usando a função
DBMS_AUTO_PARTITION.RECOMMEND_PARTITION_METHOD
.
Tópico principal: Pacote DBMS_AUTO_PARTITION
Função VALIDATE_CANDIDATE_TABLE
Essa função verifica se a tabela fornecida é válida para o particionamento automático no Autonomous Database.
Candidato Válido
- A tabela passa nos testes de inclusão e exclusão especificados pelos parâmetros de configuração
AUTO_PARTITION_SCHEMA
eAUTO_PARTITION_TABLE
. - A tabela existe e tem estatísticas atualizadas.
- A tabela tem pelo menos 64 GB.
- A tabela tem 5 ou mais consultas no SQL Tuning Set que verificaram a tabela.
- A tabela não contém uma coluna de tipo de dados
LONG
. - A tabela não é particionada manualmente.
- Tabela não é uma tabela externa, uma tabela híbrida interna/externa, uma tabela temporária, uma tabela organizada por índice ou uma tabela agrupada.
- A tabela não tem um índice de domínio ou um índice de junção de bitmap.
- A tabela não é uma fila avançada, uma view materializada ou uma tabela de armazenamento de arquivos compactados de flashback.
- A tabela não tem tabelas aninhadas ou determinados outros recursos de objeto.
VALID
se a tabela for uma candidata válida para particionamento autônomoINVALID: <reason>
se a tabela não for válida para particionamento autônomo, e <reason> for uma string que descreve por que a tabela não é válida.
Sintaxe
DBMS_AUTO_PARTITION.VALIDATE_CANDIDATE_TABLE
( SQLSET_OWNER IN VARCHAR2 DEFAULT 'SYS',
SQLSET_NAME IN VARCHAR2 DEFAULT 'SYS_AUTO_STS',
TABLE_OWNER IN VARCHAR2,
TABLE_NAME IN VARCHAR2)
RETURN VARCHAR2;
Parâmetros
Parâmetro | Descrição |
---|---|
|
Nome do SQL Tuning Set que representa a carga de trabalho a ser avaliada. |
|
Nome de uma tabela a ser validada como candidata ao particionamento automático. |
Observações de Uso
- Como exemplo, você pode verificar a validade de uma tabela de amostra,
LINEORDER
no esquemaTEST
, com a seguinte SQL:SELECT DBMS_AUTO_PARTITION.VALIDATE_CANDIDATE_TABLE ( TABLE_OWNER => 'TEST', TABLE_NAME => 'LINEORDER') FROM DUAL;
Tópico principal: Pacote DBMS_AUTO_PARTITION
Função RECOMMEND_PARTITION_METHOD
Essa função retorna um ID de recomendação que pode ser usado com o procedimento APPLY_RECOMMENDATION
para aplicar a recomendação ou pode ser usado com a view DBA_AUTO_PARTITION_RECOMMENDATIONS
para recuperar detalhes das recomendações para particionamento automático no Autonomous Database.
Sintaxe
DBMS_AUTO_PARTITION.RECOMMEND_PARTITION_METHOD
( SQLSET_OWNER IN VARCHAR2 DEFAULT 'SYS',
SQLSET_NAME IN VARCHAR2 DEFAULT 'SYS_AUTO_STS',
TABLE_OWNER IN VARCHAR2 DEFAULT NULL,
TABLE_NAME IN VARCHAR2 DEFAULT NULL,
TIME_LIMIT IN INTERVAL DAY TO SECOND DEFAULT INTERVAL '1' DAY,
REPORT_TYPE IN VARCHAR2 DEFAULT 'TEXT',
REPORT_SECTION IN VARCHAR2 DEFAULT 'SUMMARY',
REPORT_LEVEL IN VARCHAR2 DEFAULT 'TYPICAL')
RETURN RAW;
Parâmetros
Parâmetro | Descrição |
---|---|
|
Nome do SQL Tuning Set que representa a carga de trabalho a ser avaliada. |
|
Nome de uma tabela a ser validada como candidata ao particionamento automático. |
|
Quando a função escolhe as tabelas para as quais gerar recomendações, |
|
Usado para gerar relatório para o método de partição recomendado. Consulte Função REPORT_ACTIVITY para obter detalhes. |
|
Usado para gerar relatório persistente para o método de partição recomendado. Consulte Função REPORT_ACTIVITY para obter detalhes. |
|
Usado para gerar relatório para o método de partição recomendado. Consulte Função REPORT_ACTIVITY para obter detalhes. |
Observações de Uso
-
O
AUTO_PARTITION_MODE
controla as ações executadas por esta função:IMPLEMENT
: Neste modo, o particionamento automático gera um relatório e modifica a tabela existente usando o método de partição recomendado.REPORT ONLY
: Neste modo, o particionamento automático gera um relatório gerado, mas as tabelas existentes não são modificadas. Esse é o valor padrão.OFF
: Neste modo, o particionamento automático impediu a produção, a consideração ou a aplicação de novas recomendações. Não desativa as tabelas particionadas automáticas existentes.
-
Ao contrário da indexação automática, o particionamento automático não é executado periodicamente como uma tarefa em segundo plano. O particionamento automático só é executado quando você o chama usando a função
DBMS_AUTO_PARTITION.RECOMMEND_PARTITION_METHOD
.
Valores de Retorno
Esta função retorna um ID de recomendação que pode ser usado da seguinte forma: DBMS_AUTO_PARTITION.APPLY_RECOMMENDATION
para aplicar a recomendação,
- Use com
DBMS_AUTO_PARTITION.APPLY_RECOMMENDATION
para aplicar a recomendação. - Use com a view
DBA_AUTO_PARTITION_RECOMMENDATIONS
para recuperar detalhes das recomendações. Por exemplo:SELECT PARTITION_METHOD, PARTITION_KEY FROM DBA_AUTO_PARTITION_RECOMMENDATIONS WHERE RECOMMENDATION_ID = :RECOMMENDATION_ID;
Tópico principal: Pacote DBMS_AUTO_PARTITION
APPLY_RECOMMENDATION Procedimento
Este procedimento aplica a recomendação fornecida em um Autonomous Database.
Sintaxe
DBMS_AUTO_PARTITION.APPLY_RECOMMENDATION
( RECOMMENDATION_ID IN RAW,
TABLE_OWNER IN VARCHAR2 DEFAULT NULL,
TABLE_NAME IN VARCHAR2 DEFAULT NULL);
Parâmetros
Parâmetro | Descrição |
---|---|
|
ID da Recomendação retornado da função |
|
Quando um único ID de recomendação tem recomendações para várias tabelas, esse parâmetro opcional permite controlar quais tabelas são particionadas.
|
Observação do Uso:
Independentemente do AUTO_PARTITION_MODE
, este procedimento gera um ORA-20000: recommendation_id was not found
se não houver recomendações aceitas associadas ao RECOMMENDATION_ID
ou se todas as recomendações aceitas associadas ao RECOMMENDATION_ID
já tiverem sido aplicadas. O primeiro caso será aplicado se RECOMMENDATION_ID
tiver sido gerado com AUTO_PARTITION_MODE = OFF
. O segundo caso será aplicado se RECOMMENDATION_ID
tiver sido gerado com AUTO_PARTITION_MODE = IMPLEMENT
.
Tópico principal: Pacote DBMS_AUTO_PARTITION
Função REPORT_ACTIVITY
Essa função retorna um relatório das operações de particionamento automático executadas durante um período específico em um Autonomous Database.
Sintaxe
DBMS_AUTO_PARTITION.REPORT_ACTIVITY
( ACTIVITY_START IN TIMESTAMP WITH TIME ZONE DEFAULT NULL,
ACTIVITY_END IN TIMESTAMP WITH TIME ZONE DEFAULT NULL,
TYPE IN VARCHAR2 DEFAULT 'TEXT',
SECTION IN VARCHAR2 DEFAULT 'ALL',
LEVEL IN VARCHAR2 DEFAULT 'TYPICAL')
RETURN CLOB;
Parâmetros
Parâmetro | Descrição |
---|---|
|
As operações de particionamento automático no horário inicial são usadas para o relatório. Se nenhum valor for especificado ou |
|
As operações de particionamento automático no horário final são usadas para o relatório. Se nenhum valor for especificado ou |
|
Formato do relatório que tem um dos seguintes valores:
|
|
Seções a serem incluídas no relatório que tem um dos seguintes valores:
|
|
Nível de informação a ser incluído no relatório que tem um dos seguintes valores:
|
Observações de Uso
Retornos: Um relatório de análise de desempenho para carga de trabalho executada no banco de dados após a aplicação da recomendação. Este relatório não é armazenado persistentemente com a recomendação.
Tópico principal: Pacote DBMS_AUTO_PARTITION
Função REPORT_LAST_ACTIVITY
Esta função retorna um relatório da operação de particionamento automático mais recente executada em um Autonomous Database.
Sintaxe
DBMS_AUTO_PARTITION.REPORT_LAST_ACTIVITY
( TYPE IN VARCHAR2 DEFAULT 'TEXT',
SECTION IN VARCHAR2 DEFAULT 'ALL',
LEVEL IN VARCHAR2 DEFAULT 'TYPICAL')
RETURN CLOB;
Parâmetros
Parâmetro | Descrição |
---|---|
|
O formato de saída do relatório. Consulte a Função REPORT_ACTIVITY para obter informações. |
|
As seções incluídas no relatório, consulte a Função REPORT_ACTIVITY para obter informações. |
|
O nível de informações incluídas no relatório. Consulte a Função REPORT_ACTIVITY para obter informações. |
Observações de Uso
Retornos: Um relatório de análise de desempenho para carga de trabalho executada no banco de dados após a última recomendação ser aplicada. Este relatório não é armazenado persistentemente com a recomendação.
Tópico principal: Pacote DBMS_AUTO_PARTITION