Capture-Replay Workloads entre bases de données autonomes et non autonomes

Vous pouvez capturer et réexécuter à partir d'une instance de base de données d'IA non autonome vers une base de données d'IA autonome.

Vous pouvez ainsi comparer les charges de travail entre une base de données sur site ou une autre base de données de service cloud et une instance de base de données d'IA autonome.

Sujets

Capture d'une charge globale

La première étape dans l'utilisation de la réexécution de la base de données consiste à capturer la charge globale de production.

Lorsque vous commencez la capture de la charge globale sur le système de production, toutes les demandes provenant de clients externes dirigées vers Oracle Database sont suivies et stockées dans des fichiers binaires appelés fichiers de capture.

Une capture de charge globale entraîne la création de deux sous-répertoires, cap et capfiles, qui contiennent les fichiers de capture.

Les fichiers de capture fournissent toutes les informations pertinentes sur la demande client, notamment les détails de la transaction, les valeurs attachées et le texte SQL.

Les fichiers de capture sont indépendants de la plate-forme et peuvent donc être transférés sur un autre système.

Reportez-vous à Capture de charge globale pour capturer une charge globale sur une base de données sur site.

Réexécution d'une charge globale sur une instance de base de données Autonomous AI

Une fois la capture de charge globale terminée, vous pouvez la réexécuter sur un système de test. Oracle réexécute sur le système de test les actions enregistrées lors de la capture de la charge globale, avec les mêmes dates, simultanéités et dépendances de transaction du système de production.

Exécutez DBMS_CLOUD_ADMIN.REPLAY_WORKLOAD pour lancer la réexécution de la charge globale sur la base de données. Vous devez être connecté en tant qu'utilisateur ADMIN ou disposer du privilège EXECUTE sur DBMS_CLOUD_ADMIN pour exécuter REPLAY_WORKLOAD.

Exemple de réexécution d'une charge globale capturée à partir d'une base de données sur site sur une instance Autonomous Database :

BEGIN 
   DBMS_CLOUD_ADMIN.REPLAY_WORKLOAD(
      location_uri    => 'https://objectstorage.us-phoenix-1.oraclecloud.com/n/namespace-string/b/bucketname/o',
      credential_name => 'CRED_TEST',   
      synchronization => TRUE,
      process_capture => TRUE);    
END;
/

Les fichiers de capture contenus dans l'emplacement Object Storage indiqué dans le paramètre location_uri sont téléchargés et la capture de charge globale est réexécutée à partir des fichiers de capture. La réexécution génère et télécharge les rapports de réexécution et de référentiel AWR vers l'emplacement Object Storage indiqué dans le paramètre location_uri.

Dans cet exemple, namespace-string est l'espace de noms d'objet Oracle Cloud Infrastructure et bucketname est le nom du bucket. Pour plus d'informations, reportez-vous à Présentation des espaces de noms Object Storage.

Pour plus d'informations sur le téléchargement de fichiers vers Object Storage, reportez-vous à Téléchargement de fichiers vers le bucket de banque d'objets Oracle Cloud Infrastructure.

Pour plus d'informations sur Object Storage, reportez-vous à Accès à Oracle Cloud Infrastructure Object Storage et création d'un bucket.

Le paramètre credential_name indique les informations d'identification permettant d'accéder au bucket de stockage d'objet. Les informations d'identification que vous fournissez doivent disposer des privilèges d'écriture pour écrire dans le bucket Object Storage. Les privilèges d'écriture sont requis pour télécharger le rapport de réexécution vers le bucket.

Si vous n'indiquez pas de valeur credential_name, DEFAULT_CREDENTIAL est utilisé.

Vous n'avez pas besoin de créer d'informations d'identification pour accéder à la banque d'objets Oracle Cloud Infrastructure si vous activez les informations d'identification de principal de ressource. Pour plus d'informations, reportez-vous à Utilisation du principal de ressource pour accéder à des ressources Oracle Cloud Infrastructure.

Le paramètre synchronization indique la méthode de synchronisation utilisée lors de la réexécution de la charge globale. Une valeur TRUE indique que la synchronisation est basée sur un numéro SCN.

La valeur process_capture indique si vous devez indiquer la valeur process_capture. Une valeur TRUE indique que la réexécution inclut process_capture.

Remarque

Vous devez conserver le même état logique des bases de données de capture et de réexécution au début de la capture.

Pour plus d'informations, reportez-vous à Procédure REPLAY_WORKLOAD.

Evénements de réexécution de charge globale

Vous pouvez vous abonner à l'événement d'information com.oraclecloud.databaseservice.autonomous.database.information pour être informé des événements WorkloadReplayBegin et WorkloadReplayEnd. Ces événements fournissent des informations sur :

  • Début et réalisation de REPLAY_WORKLOAD.

  • Champ replayDownloadURL contenant l'URL de demande pré-authentifiée permettant d'accéder aux rapports dans la banque d'objets. L'URL de demande pré-authentifiée est valide pendant 7 jours à compter de la date de génération.

Pour plus d'informations, reportez-vous à Evénements d'information sur Autonomous AI Database.

Vues Capture et réexécution de charge globale

Vous pouvez interroger les vues DBA_CAPTURE_REPLAY_STATUS et DBA_CAPTURE_REPLAY_HISTORY pour vérifier le statut de réexécution de la charge globale.

Pour plus d'informations, reportez-vous à DBA_CAPTURE_REPLAY_STATUS View et à DBA_CAPTURE_REPLAY_HISTORY View.