Pacchetto DBMS_CLOUD_PIPELINE

Il pacchetto DBMS_CLOUD_PIPELINE consente di creare pipeline di dati per il caricamento e l'esportazione dei dati nel cloud. Questo package supporta il caricamento incrementale continuo dei dati dei file nell'area di memorizzazione degli oggetti nel database. DBMS_CLOUD_PIPELINE supporta inoltre l'esportazione incrementale continua dei dati delle tabelle o dei risultati delle query dal database all'area di memorizzazione degli oggetti in base a una colonna indicatore orario.

Riepilogo dei sottoprogrammi DBMS_CLOUD_PIPELINE

La tabella seguente contiene un riepilogo dei sottoprogrammi inclusi nel pacchetto DBMS_CLOUD_PIPELINE.

Programma secondario descrizione;

CREATE_PIPELINE Procedura

Crea una nuova pipeline di dati.

DROP_PIPELINE Procedura

Elimina una pipeline di dati esistente.

RESET_PIPELINE Procedura

Reimposta lo stato di tracciamento di una pipeline di dati. Utilizzare Reimposta pipeline per riavviare la pipeline dallo stato iniziale di caricamento o esportazione dei dati. Se si desidera, è possibile reimpostare la pipeline per rimuovere i dati nel database o nell'area di memorizzazione degli oggetti, a seconda del tipo di pipeline.

RUN_PIPELINE_ONCE Procedura

Esegue un'esecuzione su richiesta della pipeline nella sessione in primo piano corrente, anziché un job pianificato.

SET_ATTRIBUTE Procedura

Imposta gli attributi della pipeline. Esistono due procedure sovraccaricate, una per impostare un singolo attributo e l'altra per impostare più attributi utilizzando un documento JSON con coppie nome/valore attributo

START_PIPELINE Procedura

Avvia la pipeline dati. Quando viene avviata una pipeline, l'operazione della pipeline viene eseguita in modo continuo in un job pianificato in base all'"intervallo" configurato negli attributi della pipeline.

STOP_PIPELINE Procedura

Arresta la pipeline dati. Quando una pipeline viene arrestata, non viene pianificato alcun job futuro per la pipeline.

CREATE_PIPELINE Procedura

La procedura crea una nuova pipeline di dati.

Sintassi

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

Parametri

Parametro descrizione;

pipeline_name

Specifica un nome per la pipeline. Il nome della pipeline deve seguire le regole di denominazione degli identificativi Oracle SQL. Vedere Identificativi per ulteriori informazioni.

Questo parametro è obbligatorio.

pipeline_type

Specifica il tipo di pipeline.

Valori validi: LOAD, EXPORT

Questo parametro è obbligatorio.

attributes

Attributi della pipeline in formato JSON.

Valore predefinito: NULL

Per ulteriori informazioni, vedere DBMS_CLOUD_PIPELINE Attributi.

description

Descrizione della pipeline.

Valore predefinito: NULL

DROP_PIPELINE Procedura

La procedura elimina una pipeline di dati esistente. Se una pipeline è stata avviata, è necessario arrestarla prima di poterla eliminare.

Sintassi

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

Parametri

Parametro descrizione;

pipeline_name

Specifica un nome di pipeline.

Questo parametro è obbligatorio.

force

Eliminazione forzata di una pipeline, anche se è in stato avviato.

Valori validi: TRUE, FALSE

Valore predefinito: FALSE

Nota per l'uso

  • Per eliminare una pipeline in stato avviato, impostare il parametro force su TRUE.

RESET_PIPELINE Procedura

Reimposta lo stato di tracciamento di una pipeline di dati. Utilizzare Reimposta pipeline per riavviare la pipeline dallo stato iniziale di caricamento o esportazione dei dati. Se si desidera, è possibile reimpostare la pipeline per rimuovere i dati nel database o nell'area di memorizzazione degli oggetti, a seconda del tipo di pipeline. Per reimpostarla, è necessario che una pipeline dati sia in stato arrestato.

Sintassi

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

Parametri

Parametro descrizione;

pipeline_name

Specifica un nome per la pipeline.

Questo parametro è obbligatorio.

purge_data

I dati di rimozione sono validi per una pipeline di caricamento o di esportazione.

  • Per una pipeline di caricamento, quando TRUE tronca i dati nella tabella del database.

  • Per una pipeline di esportazione, quando TRUE, eliminare i file nella posizione dell'area di memorizzazione degli oggetti.

Valori validi: TRUE, FALSE

Valore predefinito: FALSE

Note per uso

  • Per reimpostarla, è necessario che una pipeline dati sia in stato arrestato. Per ulteriori informazioni, vedere STOP_PIPELINE Procedura.

  • Per una pipeline di caricamento, la reimpostazione della pipeline cancella il record dei file caricati dalla pipeline. Quando si chiama START_PIPELINE o RUN_PIPELINE_ONCE dopo aver reimpostato una pipeline di caricamento, la pipeline ripete il caricamento dei dati e include tutti i file presenti nella posizione dell'area di memorizzazione degli oggetti.

    Quando purge_data è impostato su TRUE, DBMS_CLOUD_PIPELINE.RESET_PIPELINE esegue le operazioni riportate di seguito.

    • Tronca i dati nella tabella di database della pipeline specificata con l'attributo table_name.

    • Elimina la tabella degli stati della pipeline, la tabella dei file errati della pipeline e la tabella degli errori (se esistenti).

  • Per una pipeline di esportazione, la reimpostazione della pipeline cancella gli ultimi dati registrati nella tabella del database. Quando si chiama START_PIPELINE o RUN_PIPELINE_ONCE dopo aver reimpostato una pipeline di esportazione, la pipeline ripete l'esportazione dei dati dalla tabella o dalla query.

    Quando purge_data è impostato su TRUE, DBMS_CLOUD_PIPELINE.RESET_PIPELINE elimina i file esistenti nella posizione dell'area di memorizzazione degli oggetti specificata con l'attributo location.

RUN_PIPELINE_ONCE Procedura

Questa procedura esegue un'esecuzione su richiesta della pipeline nella sessione in primo piano corrente, anziché un'esecuzione in un job pianificato. Utilizzare DBMS_CLOUD_PIPELINE.RUN_PIPELINE_ONCE per eseguire il test di una pipeline prima di avviarla come job continuo.

Sintassi

DBMS_CLOUD_PIPELINE.RUN_PIPELINE_ONCE(
       pipeline_name  IN  VARCHAR2
);

Parametri

Parametro descrizione;

pipeline_name

Specifica un nome per la pipeline da eseguire.

Questo parametro è obbligatorio.

Note per uso

  • Dopo aver eseguito un test di una pipeline, è possibile reimpostare lo stato della pipeline utilizzando DBMS_CLOUD_PIPELINE.RESET_PIPELINE. Ciò consente di reimpostare lo stato della pipeline prima di avviare la pipeline in un job pianificato.

  • Se una pipeline si trova nello stato avviato, non può essere eseguita nella sessione in primo piano.

SET_ATTRIBUTE Procedura

Questa procedura imposta gli attributi della pipeline. Esistono due procedure sovraccaricate, una per impostare un singolo attributo e l'altra per impostare più attributi utilizzando un documento JSON con coppie nome/valore attributo.

Sintassi

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
);

Parametri

Parametro descrizione;

pipeline_name

Specifica un nome per la pipeline per l'impostazione degli attributi.

Questo parametro è obbligatorio.

attribute_name

Specifica il nome attributo per l'attributo da impostare.

Per ulteriori informazioni, vedere DBMS_CLOUD_PIPELINE Attributi.

attribute_value

Specifica il valore per l'attributo pipeline da impostare.

Per ulteriori informazioni, vedere DBMS_CLOUD_PIPELINE Attributi.

attributes

Specifica un documento JSON contenente i nomi e i valori degli attributi.

Per ulteriori informazioni, vedere DBMS_CLOUD_PIPELINE Attributi.

Nota per l'uso

  • Quando si utilizza DBMS_CLOUD_PIPELINE.SET_ATTRIBUTE per impostare più attributi con il parametro attributes, tutti gli attributi esistenti vengono eliminati e sovrascritti con gli attributi specificati dal documento JSON.

START_PIPELINE Procedura

La procedura avvia la pipeline di dati. Quando viene avviata una pipeline, l'operazione di pipeline viene eseguita in modo continuo in un job pianificato in base all'elemento interval configurato con gli attributi della pipeline.

Sintassi

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

Parametri

Parametro descrizione;

pipeline_name

Specifica un nome per la pipeline.

Questo parametro è obbligatorio.

start_date

Specifica la data di inizio per il job pipeline.

Valore predefinito: NULL

Note per uso

  • Per impostazione predefinita, un job della pipeline viene avviato immediatamente non appena la pipeline viene avviata. Per avviare un job pipeline in un secondo momento, specificare una data o un indicatore orario validi utilizzando il parametro start_date.

  • Per informazioni sulla pipeline interval e sugli altri attributi della pipeline, vedere DBMS_CLOUD_PIPELINE Attributi.

STOP_PIPELINE Procedura

La procedura arresta la pipeline di dati. Quando una pipeline viene arrestata, non viene pianificato alcun job futuro per la pipeline.

Sintassi

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

Parametri

Parametro descrizione;

pipeline_name

Specifica un nome per la pipeline.

Questo parametro è obbligatorio.

force

Se il parametro force viene passato come TRUE, interromperà tutti i job in esecuzione per la pipeline.

Valori validi: TRUE, FALSE

Valore predefinito: FALSE

DBMS_CLOUD_PIPELINE Attributi

Gli attributi consentono di controllare e configurare il funzionamento di una pipeline di dati.

Attributi

Nota

Come indicato nella colonna Tipo di pipeline, a seconda del tipo di pipeline LOAD o EXPORT, una pipeline supporta un set di attributi diverso.
Nome attributo descrizione; Tipo di pipeline Modificabile dopo l'avvio della pipeline
credential_name

Nome della credenziale per accedere allo storage degli oggetti cloud di origine.

È possibile utilizzare 'OCI$RESOURCE_PRINCIPAL' come credential_name quando il principal risorsa è abilitato. Sono supportate anche le credenziali specificate con le seguenti opzioni: Amazon Resource Names, Azure Service Principal o Google Service Account. Per ulteriori informazioni, vedere Configura criteri e ruoli per accedere alle risorse.

Valore predefinito: NULL.

Se non si specifica un valore credential_name, credential_name viene impostato su NULL.

LOAD, EXPORT
field_list

Identifica i campi nei file di origine e i relativi tipi di dati. La sintassi di questo argomento è la stessa della clausola field_list nelle normali tabelle esterne Oracle. Per ulteriori informazioni su field_list, vedere Oracle® Database Utilities.

Valore predefinito: NULL

Il valore predefinito specifica che i campi e i relativi tipi di dati sono determinati dalle colonne della tabella specificata nell'attributo table_name.

LOAD
format

Opzioni che descrivono il formato per il tipo di pipeline.

Data Pump format non supportato per una pipeline di esportazione.

Questo attributo è obbligatorio sia per le pipeline LOAD che per quelle EXPORT.

LOAD, EXPORT
interval

Intervallo di tempo in minuti tra le esecuzioni consecutive del job pipeline pianificato.

Valore predefinito: 15 minuti

LOAD, EXPORT
key_column

Colonna data o indicatore orario nell'table o query specificato per l'esportazione continua di dati più recenti nell'area di memorizzazione degli oggetti. La data o l'indicatore orario dell'ultima esecuzione viene tracciato dalla pipeline di esportazione e confrontato con il valore in key_column per identificare i nuovi dati da esportare nell'area di memorizzazione degli oggetti.

Valore predefinito: NULL

Se key_column non viene specificato per una pipeline di esportazione, l'intero contenuto di table o query viene caricato nell'area di memorizzazione degli oggetti in ogni esecuzione del job della pipeline.

EXPORT No
location

Specifica un URI che punta a una posizione di storage degli oggetti.

Il formato dell'URI dipende dal servizio di storage degli oggetti cloud. Vedere DBMS_CLOUD Formati URI per ulteriori informazioni.

Questo attributo è obbligatorio sia per le pipeline LOAD che per quelle EXPORT.

LOAD, EXPORT No
priority

Specifica un valore stringa che determina il numero di operazioni parallele eseguite per la pipeline.

  • In una pipeline di caricamento, determina il numero di file caricati in parallelo.

  • In una pipeline di esportazione, determina il grado di parallelismo per il recupero dei dati dal database.

Un'operazione con una priorità più alta consuma più risorse di database e viene completata prima.

Valori validi:

  • HIGH: determina il numero di file paralleli gestiti utilizzando il conteggio ECPU del database (conteggio OCPU se il database utilizza OCPU).
  • MEDIUM: determina il numero di processi simultanei utilizzando il limite di concorrenza per il servizio di medie dimensioni. Il valore predefinito è 4.
  • LOW: esegue il job pipeline in ordine seriale.

Valore predefinito: MEDIUM

Il numero massimo di operazioni file concorrenti è limitato a 64.

LOAD, EXPORT
query

Specifica un'istruzione SELECT in modo che vengano esportati solo i dati richiesti. La query determina il contenuto dei file esportati come file di testo (CSV, JSON, Parquet o XML) o file di dump.

Ad esempio:

SELECT warehouse_id, quantity FROM inventories

Valore predefinito: NULL

Per una pipeline di esportazione, è obbligatorio specificare table_name o query.

EXPORT No
table_name

Specifica il nome della tabella di destinazione per il caricamento o l'esportazione dei dati.

Per una pipeline di caricamento table_name è obbligatorio.

Per una pipeline di esportazione, è obbligatorio specificare table_name o query.

LOAD, EXPORT No
table_owner

Nome dello schema in cui risiede la tabella di destinazione per il caricamento o l'esportazione dei dati.

Valore predefinito: NULL

Con un valore NULL la tabella di destinazione si trova nello stesso schema dell'utente che esegue la procedura.

LOAD, EXPORT No