Gérer les énoncés SQL bloqués sur une base de données autonome avec intelligence artificielle

Spécifie comment configurer la base de données autonome d'intelligence artificielle pour mettre fin automatiquement aux énoncés SQL en fonction de leur exécution d'interrogation ou de leur utilisation des E/S.

Vous pouvez définir des règles d'exécution pour l'exécution des interrogations et l'utilisation des E/S dans Database Actions ou à l'aide de l'ensemble PL/SQL CS_RESOURCE_MANAGER.

Pour définir des règles d'utilisation d'exécution, procédez comme suit :

  1. Accédez à Database Actions en tant qu'utilisateur ADMIN.
  2. Dans le panneau de lancement de Database Actions, sous Administration, cliquez sur Définir les règles de Resource Management.
  3. Sélectionnez l'onglet Critères d'exécution de mise en stock pour définir les règles d'utilisation d'un groupe de consommateurs.
  4. Sélectionnez le groupe de consommateurs.
  5. Définissez les valeurs des critères de mise en attente :
    • Délai d'exécution de l'interrogation (en secondes)

    • Quantité d'E/S (Mo)

  6. Cliquez sur Enregistrer les modifications.
  7. Cliquez sur OK.

Lorsqu'une instruction SQL du groupe de consommateurs de ressources indiqué exécute plus que la limite d'exécution spécifiée ou effectue plus d'E/S que la quantité spécifiée, l'instruction SQL prend fin.

Cliquez sur Charger les valeurs par défaut pour charger les valeurs par défaut; puis cliquez sur Enregistrer les modifications pour appliquer les valeurs alimentées.

Vous pouvez également utiliser la procédure CS_RESOURCE_MANAGER.UPDATE_PLAN_DIRECTIVE pour définir ces règles.

Note

L'exemple ci-dessous ne peut être utilisé que pour mettre à jour les plans prédéfinis par défaut fournis avec Base de données d'IA autonome, c'est-à-dire DWCS_PLAN et OLTP_PLAN. Vous ne pouvez pas utiliser UPDATE_PLAN_DIRECTIVE pour mettre à jour les paramètres des plans personnalisés. Pour mettre à jour des attributs de plan personnalisés définis par l'utilisateur, utilisez la procédure UPDATE_PLAN_DIRECTIVE_ADV. Pour plus de détails, voir ProcédureUPDATE_PLAN_DIRECTIVE_ADV.

Par exemple, pour définir une limite d'exécution de 120 secondes et une limite d'E/S de 1000 Mo pour le groupe de consommateurs de ressources HIGH, exécutez la commande suivante lorsqu'il est connecté à la base de données en tant qu'utilisateur ADMIN :

BEGIN
     CS_RESOURCE_MANAGER.UPDATE_PLAN_DIRECTIVE(consumer_group => 'HIGH', io_megabytes_limit => 1000, elapsed_time_limit => 120);
END;
/	

Pour réinitialiser les valeurs et lever les limites, vous pouvez régler les valeurs à NULL :

BEGIN
     CS_RESOURCE_MANAGER.UPDATE_PLAN_DIRECTIVE(consumer_group => 'HIGH', io_megabytes_limit => null, elapsed_time_limit => null);
END;
/	

Pour plus d'informations, voir Ensemble CS_RESOURCE_MANAGER.