Package DBMS_CLOUD_PIPELINE

Le package DBMS_CLOUD_PIPELINE vous permet de créer des pipelines de données pour le chargement et l'export de données dans le cloud. Ce package prend en charge le chargement incrémentiel continu des données des fichiers de la banque d'objets dans la base de données. DBMS_CLOUD_PIPELINE prend également en charge l'export incrémentiel continu des données de table ou des résultats de requête de la base de données vers la banque d'objets en fonction d'une colonne d'horodatage.

Récapitulatif des sous-programmes DBMS_CLOUD_PIPELINE

Ce tableau récapitule les sous-programmes inclus dans le package DBMS_CLOUD_PIPELINE.

Sous-programme Description

CREATE_PIPELINE Procédure

Crée un pipeline de données.

DROP_PIPELINE Procédure

Supprime un pipeline de données existant.

RESET_PIPELINE Procédure

Réinitialise l'état de suivi d'un pipeline de données. Utilisez le pipeline de réinitialisation pour redémarrer le pipeline à partir de l'état initial du chargement ou de l'export de données. La réinitialisation du pipeline peut éventuellement purger les données de la base de données ou de la banque d'objets, selon le type de pipeline.

RUN_PIPELINE_ONCE Procédure

Exécute une exécution à la demande du pipeline dans la session de premier plan en cours, au lieu d'un travail programmé.

SET_ATTRIBUTE Procédure

Définit les attributs de pipeline. Il existe deux procédures surchargées, l'une pour définir un seul attribut et l'autre pour définir plusieurs attributs à l'aide d'un document JSON de paires nom/valeur d'attribut

START_PIPELINE Procédure

Démarre le pipeline de données. Lorsqu'un pipeline est démarré, l'opération de pipeline est exécutée en permanence dans un travail programmé en fonction de l'intervalle configuré dans les attributs de pipeline.

STOP_PIPELINE Procédure

Arrête le pipeline de données. Lorsqu'un pipeline est arrêté, aucun travail futur n'est programmé pour le pipeline.

CREATE_PIPELINE Procédure

La procédure crée un pipeline de données.

Syntaxe

DBMS_CLOUD_PIPELINE.CREATE_PIPELINE(
      pipeline_name        IN   VARCHAR2,
      pipeline_type        IN   VARCHAR2,
      attributes           IN   CLOB        DEFAULT NULL,
      description          IN   VARCHAR2    DEFAULT NULL
);

Paramètres

Paramètre Description

pipeline_name

Spécifie le nom du pipeline. Le nom du pipeline doit respecter les règles de dénomination des identificateurs SQL Oracle. Pour plus d'informations, reportez-vous à Identificateurs.

Ce paramètre est obligatoire.

pipeline_type

Indique le type de pipeline.

Valeurs valides : LOAD, EXPORT

Ce paramètre est obligatoire.

attributes

Attributs de pipeline au format JSON.

Valeur par défaut : NULL

Pour plus d'informations, reportez-vous à DBMS_CLOUD_PIPELINE Attributs.

description

Description du pipeline.

Valeur par défaut : NULL

DROP_PIPELINE Procédure

La procédure supprime un pipeline de données existant. Si un pipeline a été démarré, il doit être arrêté avant de pouvoir être supprimé.

Syntaxe

DBMS_CLOUD_PIPELINE.DROP_PIPELINE(
       pipeline_name        IN   VARCHAR2,
       force                IN   BOOLEAN DEFAULT FALSE
 );

Paramètres

Paramètre Description

pipeline_name

Spécifie un nom de pipeline.

Ce paramètre est obligatoire.

force

Suppression forcée d'un pipeline, même s'il est à l'état démarré.

Valeurs valides : TRUE, FALSE

Valeur par défaut : FALSE

Remarque sur l'utilisation

  • Pour supprimer un pipeline à l'état Démarré, définissez le paramètre force sur TRUE.

RESET_PIPELINE Procédure

Réinitialise l'état de suivi d'un pipeline de données. Utilisez le pipeline de réinitialisation pour redémarrer le pipeline à partir de l'état initial du chargement ou de l'export de données. La réinitialisation du pipeline peut éventuellement purger les données de la base de données ou de la banque d'objets, selon le type de pipeline. Un pipeline de données doit être à l'état Arrêté pour pouvoir être réinitialisé.

Syntaxe

DBMS_CLOUD_PIPELINE.RESET_PIPELINE(
       pipeline_name        IN   VARCHAR2,
       purge_data           IN   BOOLEAN DEFAULT FALSE
 );

Paramètres

Paramètre Description

pipeline_name

Spécifie le nom du pipeline.

Ce paramètre est obligatoire.

purge_data

Les données de purge s'appliquent à un pipeline de chargement ou à un pipeline d'export :

  • Pour un pipeline de chargement, lorsque TRUE est défini, tronquez les données de la table de base de données.

  • Pour un pipeline d'export, lorsque TRUE est défini, supprimez les fichiers à l'emplacement de la banque d'objets.

Valeurs valides : TRUE, FALSE

Valeur par défaut : FALSE

Notes d'utilisation

  • Un pipeline de données doit être à l'état Arrêté pour pouvoir être réinitialisé. Pour plus d'informations, reportez-vous à STOP_PIPELINE Procédure.

  • Pour un pipeline de chargement, la réinitialisation du pipeline efface l'enregistrement des fichiers chargés par le pipeline. Lorsque vous appelez START_PIPELINE ou RUN_PIPELINE_ONCE après la réinitialisation d'un pipeline de chargement, le pipeline répète le chargement de données et inclut tous les fichiers présents dans l'emplacement de la banque d'objets.

    Lorsque purge_data est défini sur TRUE, DBMS_CLOUD_PIPELINE.RESET_PIPELINE effectue les opérations suivantes :

    • Vide les données de la table de base de données du pipeline que vous indiquez avec l'attribut table_name.

    • Supprime la table de statut du pipeline, ainsi que la table de fichiers incorrects et la table d'erreurs du pipeline (le cas échéant).

  • Pour un pipeline d'export, la réinitialisation du pipeline efface les dernières données suivies dans la table de base de données. Lorsque vous appelez START_PIPELINE ou RUN_PIPELINE_ONCE après la réinitialisation d'un pipeline d'export, le pipeline répète l'export de données à partir de la table ou de la requête.

    Lorsque purge_data est défini sur TRUE, DBMS_CLOUD_PIPELINE.RESET_PIPELINE supprime les fichiers existants dans l'emplacement de banque d'objets indiqué avec l'attribut location.

RUN_PIPELINE_ONCE Procédure

Cette procédure effectue une exécution à la demande du pipeline dans la session de premier plan en cours, au lieu d'une exécution dans un travail programmé. Utilisez DBMS_CLOUD_PIPELINE.RUN_PIPELINE_ONCE pour tester un pipeline avant de le démarrer en tant que travail continu.

Syntaxe

DBMS_CLOUD_PIPELINE.RUN_PIPELINE_ONCE(
       pipeline_name  IN  VARCHAR2
);

Paramètres

Paramètre Description

pipeline_name

Spécifie le nom du pipeline à exécuter.

Ce paramètre est obligatoire.

Notes d'utilisation

  • Après avoir exécuté un test d'un pipeline, vous pouvez réinitialiser l'état du pipeline à l'aide de DBMS_CLOUD_PIPELINE.RESET_PIPELINE. Vous pouvez ainsi réinitialiser l'état du pipeline avant de le démarrer dans un travail programmé.

  • Si un pipeline est à l'état démarré, il ne peut pas être exécuté dans la session de premier plan.

SET_ATTRIBUTE Procédure

Cette procédure définit les attributs de pipeline. Il existe deux procédures surchargées, l'une pour définir un seul attribut et l'autre pour définir plusieurs attributs à l'aide d'un document JSON de paires nom/valeur d'attribut.

Syntaxe

PROCEDURE DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE(
      pipeline_name        IN   VARCHAR2,
      attribute_name       IN   VARCHAR2,
      attribute_value      IN   CLOB
);
 
PROCEDURE DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE(
      pipeline_name        IN   VARCHAR2,
      attributes           IN   CLOB
);

Paramètres

Paramètre Description

pipeline_name

Spécifie le nom du pipeline pour lequel définir des attributs.

Ce paramètre est obligatoire.

attribute_name

Indique le nom de l'attribut à définir.

Pour plus d'informations, reportez-vous à DBMS_CLOUD_PIPELINE Attributs.

attribute_value

Indique la valeur de l'attribut de pipeline à définir.

Pour plus d'informations, reportez-vous à DBMS_CLOUD_PIPELINE Attributs.

attributes

Indique un document JSON contenant des noms et des valeurs d'attribut.

Pour plus d'informations, reportez-vous à DBMS_CLOUD_PIPELINE Attributs.

Remarque sur l'utilisation

  • Lorsque vous utilisez DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE pour définir plusieurs attributs avec le paramètre attributes, tous les attributs existants sont supprimés et remplacés par les attributs indiqués dans le document JSON.

START_PIPELINE Procédure

La procédure démarre le pipeline de données. Lorsqu'un pipeline est démarré, l'opération de pipeline est exécutée en continu dans un travail programmé en fonction de la valeur interval configurée avec les attributs de pipeline.

Syntaxe

DBMS_CLOUD_PIPELINE.START_PIPELINE(
      pipeline_name        IN   VARCHAR2,
      start_date           IN   TIMESTAMP WITH TIME ZONE DEFAULT NULL
);

Paramètres

Paramètre Description

pipeline_name

Spécifie le nom du pipeline.

Ce paramètre est obligatoire.

start_date

Indique la date de début du travail de pipeline.

Valeur par défaut : NULL

Notes d'utilisation

  • Par défaut, un travail de pipeline commence immédiatement, dès que le pipeline est démarré. Pour démarrer un travail de pipeline ultérieurement, indiquez une date ou un horodatage valide à l'aide du paramètre start_date.

  • Pour plus d'informations sur le pipeline interval et les autres attributs de pipeline, reportez-vous à Attributs DBMS_CLOUD_PIPELINE.

STOP_PIPELINE Procédure

La procédure arrête le pipeline de données. Lorsqu'un pipeline est arrêté, aucun travail futur n'est programmé pour le pipeline.

Syntaxe

DBMS_CLOUD_PIPELINE.STOP_PIPELINE(
      pipeline_name        IN   VARCHAR2,
      force                IN   BOOLEAN  DEFAULT  FALSE
);

Paramètres

Paramètre Description

pipeline_name

Spécifie le nom du pipeline.

Ce paramètre est obligatoire.

force

Si le paramètre de force est transmis en tant que TRUE, il met fin à tous les travaux en cours d'exécution pour le pipeline.

Valeurs valides : TRUE, FALSE

Valeur par défaut : FALSE

DBMS_CLOUD_PIPELINE Attributs

Les attributs permettent de contrôler et de configurer le comportement d'un pipeline de données.

Attributs

Remarque

Comme indiqué dans la colonne Type de pipeline, en fonction du type de pipeline LOAD ou EXPORT, un pipeline prend en charge un autre ensemble d'attributs.
Nom d'attribut Description Type de pipeline Modifiable après le début du pipeline
credential_name

Nom des informations d'identification permettant d'accéder au stockage d'objet cloud source.

Vous pouvez utiliser 'OCI$RESOURCE_PRINCIPAL' en tant que credential_name lorsque le principal de ressource est activé. Les informations d'identification indiquées avec les éléments suivants sont également prises en charge : Noms de ressource Amazon, Principal de service Azure ou Compte de service Google. Pour plus d'informations, reportez-vous à Configuration de stratégies et de rôles pour accéder aux ressources.

Valeur par défaut : NULL.

Si vous n'indiquez pas de credential_name, credential_name est défini sur NULL.

LOAD, EXPORT Oui
field_list

Identifie les champs dans les fichiers source et leurs types de données. La syntaxe de cet argument est identique à la clause field_list dans les tables externes Oracle standard. Pour plus d'informations sur field_list, reportez-vous à Utilitaires Oracle® Database.

Valeur par défaut : NULL

La valeur par défaut indique que les champs et leurs types de données sont déterminés par les colonnes de la table indiquée dans l'attribut table_name.

LOAD Oui
format

Options décrivant le format du type de pipeline.

La pompe de données format n'est pas prise en charge pour un pipeline d'export.

Cet attribut est obligatoire pour les pipelines LOAD et EXPORT.

LOAD, EXPORT Oui
interval

Intervalle en minutes entre les exécutions consécutives du travail de pipeline programmé.

Valeur par défaut : 15 minutes

LOAD, EXPORT Oui
key_column

Colonne d'horodatage ou de date dans le fichier table ou query spécifié pour l'export de données plus récentes en continu vers la banque d'objets. L'horodatage ou la date de la dernière exécution est suivi par le pipeline d'export et comparé à la valeur dans key_column afin d'identifier les nouvelles données à exporter vers la banque d'objets.

Valeur par défaut : NULL.

Si key_column n'est pas indiqué pour un pipeline d'export, l'intégralité du contenu de table ou query est téléchargée vers la banque d'objets dans chaque exécution de travail de pipeline.

EXPORT Non
location

Indique un URI pointant vers un emplacement Object Storage.

Le format de l'URI dépend du service Cloud Object Storage. Pour plus d'informations, reportez-vous à Formats d'URI DBMS_CLOUD.

Cet attribut est obligatoire pour les pipelines LOAD et EXPORT.

LOAD, EXPORT Non
priority

Spécifie une valeur de chaîne qui détermine le nombre d'opérations parallèles effectuées pour le pipeline.

  • Dans un pipeline de chargement, il détermine le nombre de fichiers chargés en parallèle.

  • Dans un pipeline d'export, il détermine le degré de parallélisme pour l'extraction des données de la base.

Une opération avec une priorité plus élevée consomme plus de ressources de base de données et se termine plus tôt.

Valeurs valides :

  • HIGH : détermine le nombre de fichiers parallèles gérés à l'aide du nombre d'ECPU de la base de données (nombre d'OCPU si la base de données utilise des OCPU).
  • MEDIUM : détermine le nombre de processus simultanés utilisant la limite d'accès simultané pour le service de taille moyenne. La valeur par défaut est 4.
  • LOW : exécutez le travail de pipeline dans l'ordre de série.

Valeur par défaut : MEDIUM

Le nombre maximal d'opérations de fichiers simultanées est limité à 64.

LOAD, EXPORT Oui
query

Spécifie une instruction SELECT afin que seules les données requises soient exportées. La requête détermine le contenu des fichiers exportés en tant que fichiers texte (CSV, JSON, Parquet ou XML) ou fichiers dump.

Par exemple :

SELECT warehouse_id, quantity FROM inventories

Valeur par défaut : NULL

Pour un pipeline d'export, table_name ou query est obligatoire.

EXPORT Non
table_name

Spécifie le nom de la table cible pour le chargement ou l'export de données.

Pour un pipeline de chargement, table_name est obligatoire.

Pour un pipeline d'export, table_name ou query est obligatoire.

LOAD, EXPORT Non
table_owner

Nom du schéma dans lequel réside la table cible pour le chargement ou l'export de données.

Valeur par défaut : NULL

Avec une valeur NULL, la table cible se trouve dans le même schéma que l'utilisateur qui exécute la procédure.

LOAD, EXPORT Non