Gérer le partitionnement automatique sur la base de données Autonomous AI Database

Le partitionnement automatique analyse et automatise la création de partitions pour les tables et les index d'un schéma spécifié afin d'améliorer les performances et la facilité de gestion dans Autonomous AI Database.

Le partitionnement automatique, lorsqu'il est appliqué, est transparent et ne nécessite aucune interaction ou maintenance de la part de l'utilisateur.

Note

Le partitionnement automatique n'interfère pas avec les stratégies de partitionnement existantes et est complémentaire au partitionnement manuel dans Autonomous AI Database. Les tables partitionnées manuellement sont exclues en tant que candidats au partitionnement automatique.

À propos du partitionnement automatique

Le partitionnement automatique dans Autonomous AI Database analyse la charge de travail de l'application et applique automatiquement le partitionnement aux tables et à leurs index pour améliorer les performances ou permettre une meilleure gestion des tables volumineuses.

La recherche de stratégies de partitionnement appropriées nécessite une connaissance approfondie de la charge globale de l'application et de la répartition des données. Lorsque vous effectuez un partitionnement manuel, vous devez analyser votre charge globale et faire des choix sur la façon d'appliquer le partitionnement aux tables et aux index pour améliorer les performances des applications. Le partitionnement automatique permet aux utilisateurs de Autonomous AI Database de bénéficier du partitionnement sans effectuer d'analyse manuelle des schémas et des charges de travail.

Le partitionnement automatique utilise une clé de partition à une colonne combinée au partitionnement à un seul niveau. Le partitionnement automatique ne prend pas en charge les stratégies de partitionnement plus complexes, telles que les tables partitionnées multicolonnes ou le partitionnement composite.

Le partitionnement automatique sélectionne les méthodes de partition suivantes :

  • INTERVALLE AUTOMATIQUE : Ce choix convient le mieux aux plages de valeurs de clé de partition.
  • LIST AUTOMATIC : Cette méthode de partitionnement s'applique à des valeurs de clé de partition distinctes.
  • HASH : Applique le partitionnement sur les valeurs de hachage de la clé de partition.

Pour plus d'informations, voir Concepts relatifs au partitionnement.

Le partitionnement automatique offre les fonctionnalités suivantes :

  • Analyse la charge globale de l'application et trouve la stratégie de partitionnement optimale pour améliorer les performances des requêtes pour les tables éligibles au partitionnement automatique.
  • Fournit des API PL/SQL permettant de configurer le partitionnement automatique dans une base de données, de générer des rapports sur les résultats du partitionnement et de générer et d'appliquer une stratégie de partitionnement identifiée pour une charge globale donnée.
Note

Le partitionnement automatique nécessite des appels explicites aux API PL/SQL DBMS_AUTO_PARTITION pour recommander et appliquer le partitionnement automatique à une base de données d'intelligence artificielle autonome.

Fonctionnement du partitionnement automatique

Contrairement à l'indexation automatique, le partitionnement automatique n'est pas exécuté périodiquement en tant que tâche d'arrière-plan. Le partitionnement automatique ne s'exécute que lorsque vous l'appelez à l'aide de la fonction DBMS_AUTO_PARTITION.RECOMMEND_PARTITION_METHOD.

Lorsqu'il est appelé, le partitionnement automatique identifie les tables candidates pour le partitionnement automatique, évalue les schémas de partitionnement et implémente une stratégie de partitionnement.

Lorsque vous appelez le partitionnement automatique, il effectue les tâches suivantes :

  1. Identifie les tables candidates pour le partitionnement automatique en analysant la charge globale des tables candidates sélectionnées.

    Par défaut, le partitionnement automatique utilise les informations de charge de travail collectées dans une base de données d'IA autonome à des fins d'analyse. Selon la taille de la charge globale, un échantillon d'interrogations peut être pris en compte.

  2. Évalue les systèmes de partition en fonction de l'analyse de la charge globale, de la quantification et de la vérification des avantages en matière de performances :

    1. Les schémas de partition vides candidats avec des statistiques synthétisées sont créés en interne et analysés pour la performance.

    2. Le schéma candidat avec la réduction d'E/S estimée la plus élevée est choisi comme stratégie de partitionnement optimale et est implémenté en interne pour tester et vérifier les performances.

    3. Si un schéma de partitionnement candidat n'améliore pas les performances au-delà des critères de performance et de régression spécifiés, le partitionnement automatique n'est pas recommandé.

  3. Implémente la stratégie de partitionnement optimale, si elle est configurée pour ce faire, pour les tables analysées par les procédures de partitionnement automatique.

Configurer le partitionnement automatique

Utilisez la procédure DBMS_AUTO_PARTITION.CONFIGURE pour configurer les options de partitionnement automatique.

Activer et mettre en œuvre les recommandations

EXEC DBMS_AUTO_PARTITION.CONFIGURE('AUTO_PARTITION_MODE','IMPLEMENT');

Activer les recommandations, mais ne pas les mettre en oeuvre

EXEC DBMS_AUTO_PARTITION.CONFIGURE('AUTO_PARTITION_MODE','REPORT ONLY');

Désactiver les nouvelles recommandations et leur mise en œuvre

EXEC DBMS_AUTO_PARTITION.CONFIGURE('AUTO_PARTITION_MODE','OFF');
Note

Ce mode ne désactive pas les tables partitionnées automatiquement existantes.

Gérer les schémas et les tables pour le partitionnement automatique

Utilisez les paramètres AUTO_PARTITION_SCHEMA et AUTO_PARTITION_TABLE pour spécifier les schémas et les tables pris en compte pour le partitionnement automatique.
Note

Lorsque le partitionnement automatique est appelé, tous les schémas et tables des schémas gérés par l'utilisateur sont pris en compte pour le partitionnement automatique si les listes d'inclusion et d'exclusion sont vides.
  • Si la liste d'inclusion et la liste d'exclusion sont vides, ajoutez le schéma HR et la table SH.SALES à la liste d'exclusion, empêchant uniquement ces objets d'effectuer une analyse de partitionnement automatique.

    BEGIN
        DBMS_AUTO_PARTITION.CONFIGURE(
             PARAMETER_NAME  => 'AUTO_PARTITION_SCHEMA', 
             PARAMETER_VALUE => 'HR',
             ALLOW           => FALSE);
    
        DBMS_AUTO_PARTITION.CONFIGURE(
             PARAMETER_NAME  => 'AUTO_PARTITION_TABLE', 
             PARAMETER_VALUE => 'SH.SALES',
             ALLOW           => FALSE);
    END;
    /
  • Après l'exécution de l'exemple précédent, utilisez les éléments suivants pour supprimer le schéma HR de la liste d'exclusion.

    BEGIN
        DBMS_AUTO_PARTITION.CONFIGURE(
             PARAMETER_NAME  => 'AUTO_PARTITION_SCHEMA', 
             PARAMETER_VALUE => 'HR',
             ALLOW           => NULL);
    END;
    /
  • Utilisez la commande suivante pour supprimer tous les schémas de la liste d'exclusion.

    BEGIN
        DBMS_AUTO_PARTITION.CONFIGURE(
             PARAMETER_NAME  => 'AUTO_PARTITION_SCHEMA', 
             PARAMETER_VALUE => NULL,
             ALLOW           => TRUE);
    END;
    /
  • Si les listes d'inclusion et d'exclusion sont vides, l'exemple suivant ajoute le schéma HR à la liste d'inclusion. Dès que la liste d'inclusion n'est plus vide, seuls les schémas de la liste d'inclusion sont pris en compte.

    Dans cet exemple, seul le schéma HR est candidat au partitionnement automatique.

    BEGIN
        DBMS_AUTO_PARTITION.CONFIGURE(
             PARAMETER_NAME  => 'AUTO_PARTITION_SCHEMA', 
             PARAMETER_VALUE => 'HR',
             ALLOW           => TRUE);
    END;
    /

Gérer la période de conservation du rapport de partitionnement automatique

Définissez la période de conservation des rapports de partitionnement automatique sur 365 jours.

BEGIN
    DBMS_AUTO_PARTITION.CONFIGURE(
         PARAMETER_NAME  => 'AUTO_PARTITION_REPORT_RETENTION', 
         PARAMETER_VALUE => '365');
END;
/
Pour plus d'informations, voir Procédure de configuration.

Utiliser le partitionnement automatique

Décrit le flux et les processus généraux d'utilisation et de gestion du partitionnement automatique dans Autonomous AI Database.

  1. Sélectionnez la base de données pour le partitionnement automatique.

    En général, Oracle recommande d'utiliser le partitionnement automatique dans les bases de données clonées ou créées manuellement plutôt que dans les bases de production. L'analyse et la vérification du partitionnement automatique à l'aide de RECOMMEND_PARTITION_METHOD est potentiellement une opération longue et gourmande en ressources qui peut ajouter un traitement indésirable à votre base de données.

    Pour utiliser une base de données secondaire pour l'analyse du partitionnement automatique, la base de données doit disposer d'informations sur la charge globale dans un référentiel de charge globale SQL géré en interne.

    1. Utilisez une base de données clonée pour le partitionnement automatique.

      La base de données autonome d'IA collecte automatiquement les informations de charge de travail au fil du temps dans un référentiel de charge de travail SQL géré en interne tenu à jour dans l'ensemble de réglages SQL (SYS_AUTO_STS). Si vous clonez votre base de données de production après avoir exécuté la charge de travail pendant un certain temps, le clone contiendra les informations nécessaires sur la charge de travail. Vous pouvez utiliser le partitionnement automatique avec de tels clones sans aucune action supplémentaire.

      Voir Cloner une instance Autonomous AI Database

    2. Utilisez d'autres bases de données pour le partitionnement automatique.

      Vous pouvez exécuter manuellement la charge globale pour collecter les informations nécessaires. Si vous exécutez manuellement votre charge de travail avant d'utiliser le partitionnement automatique, toute base de données d'IA autonome qui contient les schémas et les données souhaités peut être utilisée pour le partitionnement automatique après l'exécution de votre charge de travail, qu'elle soit clonée ou créée manuellement.

  2. Recommander le partitionnement automatique.

    Utilisez RECOMMEND_PARTITION_METHOD pour analyser votre base de données, des schémas spécifiques ou des tables spécifiques afin d'identifier la stratégie de partitionnement optimale, le cas échéant. La recommandation analyse la charge globale et les schémas afin de vérifier les avantages en termes de performances en exécutant la charge globale sur une table auxiliaire créée en interne. Il peut s'agir d'une opération longue et gourmande en ressources, qui nécessite que la CPU et les E/S créent la table auxiliaire et vérifient les performances. Vous aurez également besoin temporairement d'espace supplémentaire, de 1 à 1,5 fois, votre plus grande table de candidats.

  3. Appliquez la recommandation.

    Toute recommandation peut être mise en oeuvre à l'aide de la procédure APPLY_RECOMMENDATION dans la base de données où l'analyse des recommandations a eu lieu. Alternativement, toute recommandation peut être extraite de la base de données utilisée pour l'analyse et appliquée à n'importe quelle base de données, telle qu'un système de production. Le script nécessaire à la modification manuelle est stocké dans la colonne MODIFY_TABLE_DDL de la vue DBA_AUTO_PARTITION_RECOMMENDATION.

    Oracle recommande d'appliquer le partitionnement automatique à votre base de données en période creuse. Alors que vos tables seront modifiées en tables partitionnées automatiquement, la conversion ajoute des ressources supplémentaires à votre système, telles que des CPU et des E/S supplémentaires. Le partitionnement automatique nécessite jusqu'à 1,5 fois la taille de la table à modifier en tant qu'espace libre supplémentaire, en fonction des opérations LMD en cours simultanées sur ces tables.

Générer des rapports de partitionnement automatique

Générez des rapports de partitionnement automatique à l'aide des fonctions REPORT_ACTIVITY et REPORT_LAST_ACTIVITY de l'ensemble DBMS_AUTO_PARTITION.

Générer un rapport en texte brut sur les opérations de partitionnement automatique pour une période spécifique

Cet exemple génère un rapport contenant des informations types sur les opérations de partitionnement automatique au cours des 24 dernières heures. Le rapport est généré en texte brut par défaut.

DECLARE
  Report clob := NULL
BEGIN
    Report := DBMS_AUTO_PARTITION.REPORT_ACTIVITY();
END;
/

Générer un rapport, au format HTML, sur les opérations de partitionnement automatique pour MAI 2021

Cet exemple génère un rapport contenant des informations de base sur les opérations de partitionnement automatique pour le mois de mai 2021. Le rapport est généré au format HTML et ne comprend qu'un sommaire des opérations de partitionnement automatique.

DECLARE
  Report clob := NULL
BEGIN
    Report := DBMS_AUTO_PARTITION.REPORT_ACTIVITY(
                       ACTIVITY_START => TO_TIMESTAMP('2021-05-01', 'YYYY-MM-DD'),
                       ACTIVITY_END   => TO_TIMESTAMP('2021-06-01', 'YYYY-MM-DD'),
                       TYPE           => 'HTML',
                       SECTION        => 'SUMMARY',
                       LEVEL          => 'BASIC' );
END;
/

Générer un rapport, en texte brut, de la dernière opération de partitionnement automatique

Cet exemple génère un rapport contenant des informations types sur la dernière opération de partitionnement automatique. Le rapport est généré au format texte brut par défaut.

DECLARE
  Report clob := NULL
BEGIN
    Report := DBMS_AUTO_PARTITION.REPORT_LAST_ACTIVITY();
END;
/

Pour plus d'informations, voir Fonction REPORT_ACTIVITY.

Pour plus d'informations, voir Fonction REPORT_LAST_ACTIVITY.

Exemples de scénarios de partitionnement automatique

Exemples de scénarios pour le partitionnement automatique à l'aide des procédures et fonctions de l'API DBMS_AUTO_PARTITION.

Générer une recommandation pour une seule table et appliquer manuellement la recommandation

  1. Réglez le paramètre AUTO_PARTITION_MODE à REPORT ONLY pour activer une recommandation de partitionnement automatique à établir et à vérifier. La recommandation n'est pas appliquée à la table.
    BEGIN
        DBMS_AUTO_PARTITION.CONFIGURE(
            PARAMETER_NAME  => 'AUTO_PARTITION_MODE', 
            PARAMETER_VALUE => 'REPORT ONLY');
    END;
    /
  2. Vérifiez que la table TPCH.LINEITEM est candidate au partitionnement automatique. Cette étape est facultative et recommandée lorsque vous ciblez sélectivement des tables uniques.
    SELECT DBMS_AUTO_PARTITION.VALIDATE_CANDIDATE_TABLE(
               TABLE_OWNER => 'TPCH',
               TABLE_NAME  => 'LINEITEM')
    FROM DUAL;

    Si la table est un candidat valide, lorsque vous appelez le partitionnement automatique pour une analyse de recommandation, elle retourne VALID. Sinon, les critères de violation sont affichés.

    Voir Fonction VALIDATE_CANDIDATE_TABLE pour une liste de critères pour les tables de candidats admissibles.

  3. Appelez l'API DBMS_AUTO_PARTITION pour générer une recommandation pour la table TPCH.LINEITEM.
    -- DEFINE SQLPLUS BIND VARIABLE FOR RECOMMENDATION ID
    VARIABLE RECOMMENDATION_ID VARCHAR2(32);
    BEGIN
      :RECOMMENDATION_ID := DBMS_AUTO_PARTITION.RECOMMEND_PARTITION_METHOD(
                                 TABLE_OWNER => 'TPCH',
                                 TABLE_NAME  => 'LINEITEM');
    END;
    /

    L'analyse et la vérification des recommandations que vous effectuez avec DBMS_AUTO_PARTITION.RECOMMEND_PARTITION_METHOD peuvent être une opération longue et gourmande en ressources et peut prendre beaucoup de temps. Vous devez effectuer cette étape sur une base de données qui n'est pas votre système de production principal. Oracle recommande d'affecter à l'opération de vérification des ressources suffisantes en choisissant le service HAUT.

  4. Vérifiez la recommandation. La vue DBA_AUTO_PARTITION_RECOMMENDATIONS contient les informations sur la recommandation. Dans cet exemple, vérifiez la clé de partition et la méthode de partition recommandées.
    SELECT PARTITION_METHOD, PARTITION_KEY
      FROM DBA_AUTO_PARTITION_RECOMMENDATIONS
      WHERE RECOMMENDATION_ID = :RECOMMENDATION_ID;
    

    En outre, interrogez la même vue pour obtenir le rapport d'analyse de performance généré pour la charge globale après le partitionnement de la table conformément à la recommandation.

    SELECT REPORT
        FROM DBA_AUTO_PARTITION_RECOMMENDATIONS
        WHERE RECOMMENDATION_ID = :RECOMMENDATION_ID;
    
  5. Après validation manuelle de la recommandation, appliquez-la. Si vous appliquez la recommandation dans la base de données où l'analyse des recommandations a eu lieu, appliquez-la en exécutant la procédure APPLY_RECOMMENDATION.
    BEGIN
        DBMS_AUTO_PARTITION.APPLY_RECOMMENDATION(
             RECOMMENDATION_ID => :RECOMMENDATION_ID);
    END;
    /

    Si vous souhaitez appliquer la recommandation à une autre base de données, telle que votre environnement de production, extrayez l'énoncé LDD de modification. Exécutez ensuite le code LDD de modification extrait dans la base de données cible. L'interrogation pour extraire l'énoncé LDD de modification est la suivante :

    SELECT MODIFY_TABLE_DDL
        FROM DBA_AUTO_PARTITION_RECOMMENDATIONS
        WHERE RECOMMENDATION_ID = :RECOMMENDATION_ID;
    

    Exemple de sortie LDD de modification :

    BEGIN
        -- DBMS_AUTO_PARTITION RECOMMENDATION_ID C3F7A59E085C2F25E05333885A0A55EA
        --   FOR TABLE "TPCH"."LINEITEM"
        --   GENERATED AT 06/04/2021 20:52:29
        DBMS_AUTO_PARTITION.BEGIN_APPLY(EXPECTED_NUMBER_OF_PARTITIONS => 10);
    
        EXECUTE IMMEDIATE
        'ALTER TABLE "TPCH"."LINEITEM"
        MODIFY PARTITION BYLIST(SYS_OP_INTERVAL_HIGH_BOUND
            ("L_SHIPDATE", INTERVAL ''10'' MONTH, TIMESTAMP ''1992-01-01 00:00:00''))
        AUTOMATIC /* SCORE=23533.11;  */
        (PARTITION P_NULL VALUES(NULL))
        AUTO ONLINE PARALLEL';
    
        DBMS_AUTO_PARTITION.END_APPLY;
    EXCEPTION WHEN OTHERS THEN
        DBMS_AUTO_PARTITION.END_APPLY;
        RAISE;
    END;
    
  6. Vérifiez que la table a été partitionnée automatiquement, interrogez les vues du catalogue.
    SELECT T.AUTO, T.PARTITIONING_TYPE, C.COLUMN_NAME
        FROM DBA_PART_TABLES T, DBA_PART_KEY_COLUMNS C
        WHERE T.OWNER = 'TPCH' AND T.TABLE_NAME = 'LINEITEM'
            AND T.OWNER = C.OWNER AND T.TABLE_NAME = C.NAME;
    

    Utilisez cette interrogation pour identifier le moment où le partitionnement automatique a été appliqué à une table donnée.

    SELECT APPLY_TIMESTAMP_START, APPLY_TIMESTAMP_END
        FROM DBA_AUTO_PARTITION_RECOMMENDATIONS
        WHERE TABLE_OWNER = 'TPCH' AND TABLE_NAME = 'LINEITEM';
    

Pour plus d'informations, voir Procédure de configuration.

Pour plus d'informations, voir Fonction VALIDATE_CANDIDATE_TABLE.

Pour plus d'informations, voir Fonction RECOMMEND_PARTITION_METHOD.

Pour plus d'informations, voir ProcédureAPPLY_RECOMMENDATION.

Générer une recommandation pour les tables admissibles et appliquer manuellement la recommandation

  1. Réglez le paramètre AUTO_PARTITION_MODE à REPORT ONLY pour activer une recommandation de partitionnement automatique à établir et à vérifier. La recommandation n'est pas appliquée aux tables existantes.
    BEGIN
        DBMS_AUTO_PARTITION.CONFIGURE(
            PARAMETER_NAME  => 'AUTO_PARTITION_MODE', 
            PARAMETER_VALUE => 'REPORT ONLY');
    END;
    /
  2. Appelez l'API DBMS_AUTO_PARTITION pour générer une table de recommandation.
    -- DEFINE SQLPLUS BIND VARIABLE FOR RECOMMENDATION ID
    VARIABLE RECOMMENDATION_ID VARCHAR2(32);
    BEGIN
      :RECOMMENDATION_ID := DBMS_AUTO_PARTITION.RECOMMEND_PARTITION_METHOD();
    END;
    /

    L'analyse et la vérification des recommandations sont une opération longue et gourmande en ressources et peuvent prendre beaucoup de temps. Sur les bases de données secondaires hors production, Oracle recommande d'affecter suffisamment de ressources à la vérification en choisissant le service ÉLEVÉ.

  3. Interrogez la vue DBA_AUTO_PARTITION_RECOMMENDATIONS pour voir quelles tables ont été analysées.
    SELECT TABLE_OWNER, TABLE_NAME, PARTITION_METHOD, PARTITION_KEY
        FROM DBA_AUTO_PARTITION_RECOMMENDATIONS
        WHERE RECOMMENDATION_ID = :RECOMMENDATION_ID
        ORDER BY RECOMMENDATION_SEQ;
    
  4. Utilisez cette interrogation pour forer dans le rapport pour une table spécifique qui a été analysée lors de l'exécution, la table TPCH.LINEITEM dans cet exemple.
    SELECT REPORT
        FROM DBA_AUTO_PARTITION_RECOMMENDATIONS
        WHERE RECOMMENDATION_ID = :RECOMMENDATION_ID
            AND TABLE_OWNER = 'TPCH'
            AND TABLE_NAME  = 'LINEITEM';
    
  5. Appliquez la recommandation en exécutant la procédure APPLY_RECOMMENDATION.
    BEGIN
        DBMS_AUTO_PARTITION.APPLY_RECOMMENDATION(
             RECOMMENDATION_ID => :RECOMMENDATION_ID);
    END;
    /

    Vous pouvez également appliquer des recommandations pour une table spécifique qui a été analysée, la table TPCH.LINEITEM dans cet exemple.

    BEGIN
        DBMS_AUTO_PARTITION.APPLY_RECOMMENDATION(
            RECOMMENDATION_ID => :RECOMMENDATION_ID,
            TABLE_OWNER       => 'TPCH',
            TABLE_NAME        => 'LINEITEM');
    END;
    /

Pour plus d'informations, voir Procédure de configuration.

Pour plus d'informations, voir Fonction RECOMMEND_PARTITION_METHOD.

Pour plus d'informations, voir ProcédureAPPLY_RECOMMENDATION.

Note

Les recommandations de partitionnement automatique générées par la fonction RECOMMEND_PARTITION_METHOD ont une limite de temps, spécifiée par le paramètre TIME_LIMIT, avec une valeur par défaut de 1 jour. Si vous analysez un système volumineux avec de nombreuses tables candidates, un seul appel peut ne pas générer de recommandation pour toutes les tables pouvant être partitionnées. Vous pouvez appeler en toute sécurité la recommandation de partitionnement automatique plusieurs fois pour générer des recommandations pour des tables supplémentaires. Lorsque la fonction est appelée et que zéro rangée se trouve dans DBA_AUTO_PARTITION_RECOMMENDATIONS pour RECOMMENDATION_ID, la fonction n'a trouvé aucune table candidate supplémentaire pour le partitionnement automatique.

Générer et appliquer automatiquement des recommandations pour les tables admissibles

  1. Réglez le paramètre AUTO_PARTITION_MODE à REPORT ONLY pour activer une recommandation de partitionnement automatique à établir et à vérifier. La recommandation n'est pas appliquée aux tables existantes.
    BEGIN
        DBMS_AUTO_PARTITION.CONFIGURE(
            PARAMETER_NAME  => 'AUTO_PARTITION_MODE', 
            PARAMETER_VALUE => 'IMPLEMENT');
    END;
    /
  2. Appelez l'API DBMS_AUTO_PARTITION pour générer une table de recommandation.
    -- DEFINE SQLPLUS BIND VARIABLE FOR RECOMMENDATION ID
    VARIABLE RECOMMENDATION_ID VARCHAR2(32);
    BEGIN
      :RECOMMENDATION_ID := DBMS_AUTO_PARTITION.RECOMMEND_PARTITION_METHOD();
    END;
    /

    L'analyse et la vérification des recommandations sont une opération longue et gourmande en ressources et peuvent prendre beaucoup de temps. Sur les bases de données secondaires hors production, Oracle recommande d'affecter suffisamment de ressources à la vérification en choisissant le service ÉLEVÉ.

  3. Interrogez la vue DBA_AUTO_PARTITION_RECOMMENDATIONS pour voir quelles tables ont été analysées.
    SELECT TABLE_OWNER, TABLE_NAME, PARTITION_METHOD, PARTITION_KEY
        FROM DBA_AUTO_PARTITION_RECOMMENDATIONS
        WHERE RECOMMENDATION_ID = :RECOMMENDATION_ID
        ORDER BY RECOMMENDATION_SEQ;
    
  4. Utilisez la fonction REPORT_LAST_ACTIVITY pour extraire le rapport sur les actions effectuées lors de la dernière exécution.
    SELECT DBMS_AUTO_PARTITION.REPORT_LAST_ACTIVITY() FROM DUAL;
    

Pour plus d'informations, voir Procédure de configuration.

Pour plus d'informations, voir Fonction RECOMMEND_PARTITION_METHOD.

Pour plus d'informations, voir Fonction REPORT_LAST_ACTIVITY.

Vues du dictionnaire de données pour le partitionnement automatique

Il existe deux nouvelles vues et une vue mise à jour dans le dictionnaire de données pour obtenir des informations sur la configuration et les recommandations du partitionnement automatique dans votre base de données.

DBMS_AUTO_PARTITION DBA_AUTO_PARTITION_CONFIG Voir

Affiche les paramètres de configuration courants pour le partitionnement automatique.

Colonne Description
PARAMETER_NAME Nom du paramètre de configuration
PARAMETER_VALUE Valeur du paramètre de configuration
LAST_MODIFIED Heure, en UTC, à laquelle la valeur du paramètre a été modifiée pour la dernière fois.
MODIFIED_BY Utilisateur ayant modifié la valeur du paramètre pour la dernière fois

DBMS_AUTO_PARTITION DBA_AUTO_PARTITION_RECOMMENDATIONS Voir

Lorsque vous exécutez CONFIGURE ou RECOMMEND_PARTITION, les résultats de ces procédures sont stockés dans cette vue. Le fichier RECOMMENDATION_ID est utilisé dans plusieurs procédures et fonctions.

Colonne Description
TABLE_OWNER Responsable de la table
TABLE_NAME Responsable de la table
PARTITION_METHOD Méthode de partition recommandée. Voir Procédure de configuration
PARTITION_KEY Clé de partition recommandée. NULL signifie que l'analyse est terminée et que la recommandation n'est pas de partitionner la table.
GENERATE_TIMESTAMP Heure, en UTC, à laquelle cette recommandation a été générée.
RECOMMENDATION_ID ID utilisé avec les API DBMS_AUTO_PARTITION pour obtenir des informations supplémentaires sur cette recommandation.
RECOMMENDATION_SEQ Lorsqu'un code de recommandation contient des recommandations pour plusieurs tables, indique l'ordre dans lequel les recommandations ont été générées. Les rapports de performance sont générés en supposant que des recommandations antérieures ont été appliquées. Par exemple, le rapport pour RECOMMENDATION_SEQ = 2 suppose que des recommandations ont été appliquées pour RECOMMENDATION_SEQ = 1 et RECOMMENDATION_SEQ = 2.
MODIFY_TABLE_DDL LDD qui serait ou a été utilisé pour appliquer la recommandation.
APPLY_TIMESTAMP_START Heure, en UTC, à laquelle l'application de cette recommandation a commencé. NULL si la recommandation n'a pas été appliquée.
APPLY_TIMESTAMP_END Heure, en UTC, à laquelle l'application de cette recommandation a été terminée. NULL si la recommandation n'a pas été appliquée ou si l'application n'est pas terminée.
REPORT Rapport SQL Performance Analyzer à partir de l'exécution SQL sur la base de données après l'application de la recommandation.

DBMS_AUTO_PARTITION Mises à jour des vues existantes

Présente les modifications apportées aux vues existantes suite à l'implémentation du partitionnement automatique.

Dans *_PART_TABLES, la colonne AUTO (VARCHAR2(3)) a été ajoutée. Ses valeurs sont les suivantes :
  • YES - Si la table a été partitionnée par DBMS_AUTO_PARTITION.
  • NO - Si la table n'a pas été partitionnée par DBMS_AUTO_PARTITION.