Importa utilizzando modelli

Dataplex fornisce modelli (basati su Dataflow) di eseguire attività comuni di elaborazione dati come l'importazione dati, l'elaborazione per gestire il ciclo di vita dei dati. Questa guida descrive come configurare ed eseguire un che importa dati utilizzando una connessione JDBC.

Prima di iniziare

I modelli di attività Dataplex si basano su Dataflow. Prima di utilizzare i modelli, abilita le API Dataflow.

Abilita le API Dataflow

Modello: importare dati in Dataplex utilizzando una connessione JDBC

Il modello di importazione JDBC di Dataplex copia i dati da un modello in una destinazione di un asset Dataplex. Dataplex può essere un asset Cloud Storage o BigQuery.

Questa pipeline usa JDBC per connettersi al database relazionale. A un prezzo extra di protezione, puoi anche passare una chiave Cloud KMS insieme a Parametri della stringa di connessione, password e nome utente con codifica Base64 criptati con la chiave Cloud KMS.

Il modello gestisce in modo trasparente i diversi tipi di asset. I dati archiviati sul L'asset Cloud Storage è partizionato in stile Hive e Dataplex Discovery la rende automaticamente disponibile come in Data Catalog, BigQuery (tabella esterna), o un'istanza Dataproc Metastore collegata.

Parametri del modello

Parametro Descrizione
driverJars Utilizzando virgole, separa i percorsi Cloud Storage per i driver JDBC.
Ad esempio: gs://your-bucket/driver_jar1.jar, gs://your-bucket/driver_jar2.jar.
connectionURL La stringa di connessione dell'URL per la connessione all'origine JDBC.
Ad esempio: jdbc:mysql://some-host:3306/sampledb.
Puoi trasmettere l'URL di connessione come testo normale o con codifica Base64. stringa criptata da Cloud KMS.
driverClassName Il nome della classe del driver JDBC.
Ad esempio: com.mysql.jdbc.Driver.
connectionProperties La stringa delle proprietà da utilizzare per la connessione JDBC.
Ad esempio: unicode=true&characterEncoding=UTF-8.
query La query da eseguire sull'origine per estrarre i dati.
Ad esempio: select * from sampledb.sample_table.
outputAsset L'ID risorsa di output Dataplex in cui vengono visualizzati i risultati archiviati. Per l'ID, utilizza il formato projects/your-project/locations/<loc>/lakes/<lake-name>/zones/<zone-name>/assets/<asset-name></code>. Puoi trovare outputAsset nella console Google Cloud, nella Scheda Dettagli asset Dataplex.
username Il nome utente da utilizzare per la connessione JDBC. Puoi passare il parametro il nome utente come testo normale o come stringa con codifica Base64 e criptata da di Cloud KMS.
password La password da utilizzare per la connessione JDBC. Puoi passare il parametro la password come testo normale o come stringa con codifica Base64 e criptata da di Cloud KMS.
outputTable La posizione della tabella BigQuery o Cloud Storage in alto il nome della cartella in cui scrivere l'output. Se si tratta di un cluster BigQuery, posizione della tabella, lo schema della tabella deve corrispondere a quello di origine della query e deve essere nel formato some-project-id:somedataset.sometable. Se si tratta di una cartella principale di Cloud Storage, specifica il nome della cartella principale.
KMSEncryptionKey (Facoltativo) Se fornisci il parametro KMSEncryptionKey, assicurati che i tuoi password, username e I file connectionURL sono criptati da Cloud KMS. Cripta utilizzando l'endpoint di crittografia dell'API Cloud KMS. Per ad esempio projects/your-project/locations/global/keyRings/test/cryptoKeys/quickstart.
writeDisposition (Facoltativo) La strategia da utilizzare se è presente il file/la tabella di destinazione. Supportato formati sono WRITE_APPEND (le righe verranno aggiunte alla tabella if esiste), WRITE_TRUNCATE (la tabella/il file verrà sovrascritto), WRITE_EMPTY (la tabella di output deve essere vuota/il file di output non dovrebbe esiste) e SKIP (salta la scrittura sul file, se esistente). Per BigQuery, i formati consentiti sono: WRITE_APPEND, WRITE_TRUNCATE e WRITE_EMPTY. Per Cloud Storage, i formati consentiti sono: SKIP, WRITE_TRUNCATE, WRITE_EMPTY. Valore predefinito: WRITE_EMPTY.
partitioningScheme (Facoltativo) Lo schema di partizione durante la scrittura del file. Il valore predefinito per questo parametro è DAILY. Altri valori per il parametro può essere MONTHLY o HOURLY.
partitionColumn (Facoltativo) La colonna di partizione su cui si basa la partizione. La il tipo di colonna deve essere nel formato timestamp/date. Se Parametro partitionColumn non fornito, i dati non verranno partizionate.
fileFormat (Facoltativo) Il formato del file di output in Cloud Storage. I file sono è compresso con l'impostazione predefinita Compressione rapida. Il valore predefinito per questo parametro è PARQUET. Un altro valore per è AVRO.
updateDataplexMetadata

(Facoltativo) Indica se aggiornare i metadati Dataplex per nuove entità create. Il valore predefinito di questo parametro è false.

Se abilitata, la pipeline copierà automaticamente lo schema dall'origine alle entità Dataplex di destinazione e l'automazione Dataplex Discovery non verrà eseguito. Usa questo flag nei casi in cui hai gestito lo schema all'origine.

Supportata solo per la destinazione Cloud Storage.

Esegui il modello

Console

  1. Nella console Google Cloud, vai alla pagina Dataplex:

    Vai a Dataplex

  2. Vai alla vista Process.

  3. Fai clic su Crea attività.

  4. In Importa JDBC su Dataplex, fai clic su Crea attività.

  5. Scegli un lake Dataplex.

  6. Specifica un nome per l'attività.

  7. Scegli una regione per l'esecuzione dell'attività.

  8. Inserisci i parametri richiesti.

  9. Fai clic su Continua.

gcloud

Sostituisci quanto segue:

JOB_NAME: a job name of your choice
PROJECT_ID: your template project ID
DRIVER_JARS: path to your JDBC drivers
CONNECTION_URL: your JDBC connection URL string
DRIVER_CLASS_NAME: your JDBC driver class name
CONNECTION_PROPERTIES: your JDBC connection property string
QUERY: your JDBC source SQL query
OUTPUT_ASSET: your Dataplex output asset ID

Nella shell o nel terminale, esegui il modello:

gcloud beta dataflow flex-template run JOB_NAME \
--project=PROJECT_ID \
--region=REGION_NAME \
--template-file-gcs-location=gs://dataflow-templates-REGION_NAME/latest/flex/Dataplex_JDBC_Ingestion_Preview \
--parameters \
driverJars=DRIVER_JARS,\
connectionUrl=CONNECTION_URL,\
driverClassName=DRIVER_CLASS_NAME,\
connectionProperties=CONNECTION_PROPERTIES,\
query=QUERY\
outputAsset=OUTPUT_ASSET\

API REST

Sostituisci quanto segue:

PROJECT_ID: your template project ID
REGION_NAME: region in which to run the job
JOB_NAME: a job name of your choice
DRIVER_JARS: path to your JDBC drivers
CONNECTION_URL: your JDBC connection URL string
DRIVER_CLASS_NAME: your JDBC driver class name
CONNECTION_PROPERTIES: your JDBC connection property string
QUERY: your JDBC source SQL query
OUTPUT_ASSET: your Dataplex output asset ID

Invia una richiesta POST HTTP:

POST https://dataflow.googleapis.com/v1b3/projects/PROJECT_ID/locations/REGION_NAME/flexTemplates:launch
{
   "launch_parameter": {
      "jobName": "JOB_NAME",
      "parameters": {
          "driverJars": "DRIVER_JARS",
          "connectionUrl": "CONNECTION_URL",
          "driverClassName": "DRIVER_CLASS_NAME",
          "connectionProperties": "CONNECTION_PROPERTIES",
          "query": "QUERY"
          "outputAsset": "OUTPUT_ASSET"
      },
      "containerSpecGcsPath": "gs://dataflow-templates-REGION_NAME/latest/flex/Dataplex_JDBC_Ingestion_Preview",
   }
}

Passaggi successivi