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.
Prérequis
En tant que développeur, vous pouvez utiliser des procédures DBMS_CLOUD avec des instances Autonomous Database déployées sur Oracle Public Cloud, Multicloud ou Exadata Cloud@Customer.
Selon le choix de déploiement, les prérequis suivants doivent être respectés pour utiliser les procédures DBMS_CLOUD avec les fournisseurs de services Amazon S3, Azure Blob Storage et Google Cloud Storage.
- Créez une passerelle NAT dans le réseau cloud virtuel (VCN) où résident vos ressources Autonomous Database en suivant les instructions fournies dans Création d'une passerelle NAT dans la documentation Oracle Cloud Infrastructure.
- Après avoir créé la passerelle NAT, ajoutez une règle de routage et une règle de sécurité sortante à chaque sous-réseau (dans le VCN) dans lesquelles résident les ressources Autonomous Database afin que ces ressources puissent utiliser la passerelle pour obtenir une clé publique à partir de votre instance Azure AD :
- Accédez à la page Détails du sous-réseau.
- Dans l'onglet Informations sur le sous-réseau, cliquez sur le nom de la table de routage du sous-réseau pour afficher la page Détails de la table de routage correspondante.
- Dans la table des règles de routage existantes, vérifiez s'il existe déjà une règle avec les caractéristiques suivantes :
- Destination : 0.0.0.0/0
- Type de cible : passerelle NAT
- Cible : nom de la passerelle NAT que vous venez de créer dans le VCN
Si une telle règle n'existe pas, cliquez sur Ajouter des règles de routage et ajoutez une règle possédant ces caractéristiques.
- Revenez à la page Détails du sous-réseau.
- Dans la table Listes de sécurité du sous-réseau, cliquez sur le nom de la liste de sécurité du sous-réseau pour afficher la page Détails de la liste de sécurité correspondante.
- Dans le menu latéral, sous Resources, cliquez sur Egress Rules.
- Dans la table des règles sortantes existantes, vérifiez s'il existe déjà une règle avec les caractéristiques suivantes :
- Type de destination : CIDR
- Destination : 0.0.0.0/0
- Protocole IP : TCP
- Plage de ports source: 443
- Plage de ports de destination : Tout
Si une telle règle n'existe pas, cliquez sur Ajouter des règles sortantes et ajoutez une règle présentant ces caractéristiques.
Les paramètres de proxy HTTP de votre environnement doivent permettre à la base de données d'accéder au fournisseur de services cloud.
Remarques :
La configuration réseau, y compris le proxy HTTP, ne peut être modifiée que jusqu'à ce que l'infrastructure Exadata présente l'état Activation requise. Une fois activé, vous ne pouvez plus modifier ces paramètres.La configuration d'un proxy HTTP pour une infrastructure Exadata déjà provisionnée nécessite une demande de service (SR) dans My Oracle Support. Pour plus d'informations, reportez-vous à Création d'une demande d'assistance dans My Oracle Support.
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 |
---|---|
Crée un pipeline de données. |
|
Supprime un pipeline de données existant. |
|
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 des 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. |
|
Effectue une exécution à la demande du pipeline dans la session de premier plan en cours, au lieu d'un travail programmé. |
|
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 |
|
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 l'intervalle configuré dans les attributs de pipeline. |
|
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 |
---|---|
|
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 dans Référence du langage PL/SQL Oracle Database Database ou Référence du langage PL/SQL Oracle Database 23ai Database. Ce paramètre est obligatoire. |
|
Indique le type de pipeline. Valeurs valides : Ce paramètre est obligatoire. |
|
Attributs de pipeline au format JSON. Valeur par défaut : Pour plus d'informations, reportez-vous à la section DBMS_CLOUD_PIPELINE Attributes. |
|
Description du pipeline. Valeur par défaut : |
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é pour pouvoir être supprimé.
Syntaxe
DBMS_CLOUD_PIPELINE.DROP_PIPELINE
(
pipeline_name IN VARCHAR2,
force IN BOOLEAN DEFAULT FALSE
);
Paramètres
Paramètre | Description |
---|---|
|
Spécifie un nom de pipeline. Ce paramètre est obligatoire. |
|
Supprimez de force un pipeline, même s'il est à l'état démarré. Valeurs valides : Valeur par défaut : |
Remarque sur l'utilisation
-
Pour supprimer un pipeline à l'état démarré, définissez le paramètre
force
surTRUE
.
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 des 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 |
---|---|
|
Indique le nom du pipeline. Ce paramètre est obligatoire. |
|
Les données de purge s'appliquent à un pipeline de chargement ou à un pipeline d'export :
Valeurs valides : Valeur par défaut : |
Remarques sur l'utilisation
-
Un pipeline de données doit être à l'état Arrêté pour pouvoir être réinitialisé. Pour plus d'informations, reportez-vous à Procédure STOP_PIPELINE.
-
Pour un pipeline de chargement, la réinitialisation du pipeline efface l'enregistrement des fichiers en cours de chargement par le pipeline. Lorsque vous appelez
START_PIPELINE
ouRUN_PIPELINE_ONCE
après la réinitialisation d'un pipeline de chargement, le pipeline répète le chargement des données et inclut tous les fichiers présents dans l'emplacement de banque d'objets.Lorsque
purge_data
est défini surTRUE
,DBMS_CLOUD_PIPELINE.RESET_PIPELINE
effectue les opérations suivantes :-
Tronque 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 (si elles existent).
-
-
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
ouRUN_PIPELINE_ONCE
après la réinitialisation d'un pipeline d'export, le pipeline répète l'export des données de la table ou de la requête.Lorsque
purge_data
est défini surTRUE
,DBMS_CLOUD_PIPELINE.RESET_PIPELINE
supprime les fichiers existants dans l'emplacement de banque d'objets indiqué avec l'attributlocation
.
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 |
---|---|
|
Indique le nom du pipeline à exécuter. Ce paramètre est obligatoire. |
Remarques sur l'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 a 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 |
---|---|
|
Spécifie le nom du pipeline qui définit les attributs. Ce paramètre est obligatoire. |
|
Indique le nom de l'attribut à définir. Pour plus d'informations, reportez-vous à la section DBMS_CLOUD_PIPELINE Attributes. |
attribute_value |
Indique la valeur de l'attribut de pipeline à définir. Pour plus d'informations, reportez-vous à la section DBMS_CLOUD_PIPELINE Attributes. |
|
Spécifie un document JSON contenant des noms et des valeurs d'attribut. Pour plus d'informations, reportez-vous à la section DBMS_CLOUD_PIPELINE Attributes. |
Remarque sur l'utilisation
-
Lorsque vous utilisez
DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE
pour définir plusieurs attributs avec le paramètreattributes
, tous les attributs existants sont supprimés et remplacés par les attributs indiqués dans le document JSON.
START_PIPELINE Procédure
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 |
---|---|
|
Indique le nom du pipeline. Ce paramètre est obligatoire. |
|
Indique la date de début du travail de pipeline. Valeur par défaut : |
Remarques sur l'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 d'autres attributs de pipeline, reportez-vous à DBMS_CLOUD_PIPELINE Attributes.
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 DEFAULTFALSE
);
Paramètres
Paramètre | Description |
---|---|
|
Indique le nom du pipeline. Ce paramètre est obligatoire. |
|
Si le paramètre force est transmis en tant que Valeurs valides : Valeur par défaut : |
DBMS_CLOUD_PIPELINE Attributs
Les attributs permettent de contrôler et de configurer le comportement d'un pipeline de données.
Attributs
Remarques :
Comme indiqué dans la colonne Type de pipeline, selon le type de pipelineLOAD
ou EXPORT
, un pipeline prend en charge un ensemble différent d'attributs.
Nom d'attribut | Description | Type de pipeline | Modifiable après le démarrage du pipeline |
---|---|---|---|
credential_name |
Nom des informations d'identification permettant d'accéder au stockage d'objet cloud source. Valeur par défaut : Si vous n'indiquez pas de |
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 Valeur par défaut : 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 |
LOAD |
Oui |
format |
Options décrivant le format du type de pipeline.
Datapump Cet attribut est obligatoire pour les pipelines |
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 Valeur par défaut : NULL Si |
EXPORT |
No |
location |
Indique un URI qui pointe 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 de stockage d'objet cloud. Cet attribut est obligatoire pour les pipelines |
LOAD , EXPORT |
No |
priority |
Spécifie une valeur de chaîne qui détermine le nombre d'opérations parallèles effectuées pour le pipeline.
Une opération avec une priorité plus élevée consomme plus de ressources de base de données et est terminée plus tôt. Valeurs valides :
Valeur par défaut : Le nombre maximal d'opérations de fichier simultanées est limité à 64. |
LOAD , EXPORT |
Oui |
query |
Spécifie une instruction Exemple :
Valeur par défaut : Pour un pipeline d'export, |
EXPORT |
No |
table_name |
Indique le nom de la table cible pour le chargement ou l'exportation des données. Pour un pipeline de chargement, Pour un pipeline d'export, |
LOAD , EXPORT |
No |
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 : Avec une valeur |
LOAD , EXPORT |
No |