Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Connessioni Vertica
È possibile utilizzare AWS Glue per Spark per leggere e scrivere su tabelle in Vertica in AWS Glue 4.0 e versioni successive. È possibile definire cosa leggere da Vertica con una query SQL. Connettiti a Vertica utilizzando le credenziali di nome utente e password memorizzate in Gestione dei segreti AWS tramite una connessione AWS Glue.
Per ulteriori informazioni su Vertica, consulta la documentazione di Vertica
Configurazione delle connessioni Vertica
Per connetterti a Vertica da AWS Glue, dovrai creare e archiviare le tue credenziali Vertica in un segreto Gestione dei segreti AWS, quindi associare tale segreto a una connessione Vertica AWS Glue. Se la tua istanza Vertica si trova in un Amazon VPC, dovrai anche fornire opzioni di rete alla tua connessione AWS Glue Vertica. Ti servirà un bucket o una cartella Amazon S3 da utilizzare per l'archiviazione temporanea durante la lettura e la scrittura sul database.
Per connettersi a Vertica da AWS Glue, potrebbero essere necessari alcuni prerequisiti:
-
Un bucket o una cartella Amazon S3 da utilizzare per l'archiviazione temporanea durante la lettura e la scrittura sul database, a cui fa riferimento
tempS3Path.Nota
Quando utilizzi Vertica nelle anteprime dei dati del processo di AWS Glue, i file temporanei potrebbero non essere rimossi automaticamente da
tempS3Path. Per garantire la rimozione dei file temporanei, interrompi direttamente la sessione di anteprima dei dati scegliendo Termina sessione nel riquadro Anteprima dei dati.Se non sei in grado di terminare direttamente la sessione di anteprima dei dati, valuta la possibilità di impostare la configurazione del ciclo di vita di Amazon S3 per rimuovere i dati obsoleti. Consigliamo di rimuovere i dati più vecchi di 49 ore, in base al runtime massimo del processo in aggiunta a un margine. Per ulteriori informazioni sulla configurazione del ciclo di vita di Amazon S3, consulta Gestione del ciclo di vita dello storage nella documentazione di Amazon S3.
-
Una policy IAM con autorizzazioni appropriate per il percorso Amazon S3 che puoi associare al ruolo di processo AWS Glue.
-
Se la tua istanza VPC si trova in un Amazon VPC, configura Amazon VPC per consentire al processo AWS Glue di comunicare con l'istanza Vertica senza che il traffico attraversi la rete Internet pubblica.
In Amazon VPC, identifica o crea un VPC, una sottorete e un gruppo di sicurezza che AWS Glue utilizzerà durante l'esecuzione del processo. Inoltre, assicurati che Amazon VPC sia configurato per consentire il traffico di rete tra l'istanza Vertica e questa posizione. Il tuo processo dovrà stabilire una connessione TCP con la tua porta del client Vertica, (per impostazione predefinita, 5433). In base al layout di rete, potrebbe richiedere modifiche alle regole dei gruppi di sicurezza, alle liste di controllo accessi di rete, ai gateway NAT e alle connessioni peering.
È quindi possibile procedere alla configurazione di AWS Glue per l'uso con Vertica.
Per configurare una connessione a Vertica:
-
In Gestione dei segreti AWS, crea un segreto utilizzando le tue credenziali Vertica,
verticaUsernameeverticaPassword. Per creare un segreto in Secrets Manager, segui il tutorial disponibile in Create an Gestione dei segreti AWS secret nella documentazione di Gestione dei segreti AWS. Dopo aver creato il segreto, prendi nota del nome,secretName, per il passaggio successivo.-
Quando selezioni le coppie chiave/valore, crea una coppia per la chiave
usercon il valoreverticaUsername. -
Quando selezioni le coppie chiave/valore, crea una coppia per la chiave
passwordcon il valoreverticaPassword.
-
Nella console AWS Glue, crea una connessione seguendo i passaggi riportati in Aggiunta di una connessione AWS Glue. Dopo aver creato la connessione, prendi nota del nome,
connectionName, per il passaggio successivo.In Tipo di connessione, seleziona Vertica.
In Host Vertica, fornisci il nome host dell'installazione Vertica.
In Porta Vertica, indica la porta tramite cui è disponibile l'installazione di Vertica.
Quando selezioni il Segreto AWS, fornisci
secretName.
-
Nelle seguenti situazioni, potresti aver bisogno di una configurazione aggiuntiva:
-
Per le istanze Vertica ospitate su AWS in un Amazon VPC
-
Fornisci le informazioni di connessione Amazon VPC alla connessione AWS Glue che definisce le credenziali di sicurezza Vertica. Durante la creazione o l'aggiornamento della connessione, imposta VPC, sottorete e Gruppi di sicurezza nelle opzioni di rete.
-
-
Dopo aver creato una connessione AWS Glue Vertica, dovrai eseguire i seguenti passaggi prima di chiamare il metodo di connessione.
Concedi al ruolo IAM associato al tuo processo AWS Glue il permesso per
tempS3Path.Concedi al ruolo IAM associato al tuo processo AWS Glue il permesso di leggere
secretName.Nella configurazione del processo AWS Glue, fornisci
connectionNamecome Connessione di rete aggiuntiva.
Lettura da Vertica
Prerequisiti:
-
Una tabella Vertica da cui si desidera leggere. Avrai bisogno del nome del database Vertica,
dbName, e della tabella,tableName. -
Una connessione AWS Glue Vertica configurata per fornire informazioni di autenticazione. Completa i passaggi della procedura precedente, Per configurare una connessione a Vertica per configurare le informazioni di autenticazione. Sarà necessario il nome della connessione AWS Glue,
connectionName. -
Un bucket o una cartella Amazon S3 da utilizzare per lo storage temporaneo, menzionato in precedenza. Avrai bisogno del nome,
tempS3Path. Dovrai connetterti a questa posizione utilizzando il protocollos3a.
Per esempio:
dynamicFrame = glueContext.create_dynamic_frame.from_options( connection_type="vertica", connection_options={ "connectionName": "connectionName", "staging_fs_url": "s3a://tempS3Path", "db": "dbName", "table": "tableName", } )
È possibile anche fornire una query SELECT SQL per filtrare i risultati restituiti al DynamicFrame o accedere a un set di dati da più tabelle.
Per esempio:
dynamicFrame = glueContext.create_dynamic_frame.from_options( connection_type="vertica", connection_options={ "connectionName": "connectionName", "staging_fs_url": "s3a://tempS3Path", "db": "dbName", "query": "select * FROMtableName", }, )
Scrittura su tabelle Vertica
Questo esempio scrive informazioni a partire da un DynamicFrame esistente, dynamicFrame a Vertica. Se la tabella contiene già informazioni, AWS Glue aggiungerà i dati da DynamicFrame.
Prerequisiti:
-
Un nome di tabella corrente o desiderato,
tableName, su cui scrivere. Avrai anche bisogno del nome del database Vertica corrispondente,dbName. -
Una connessione AWS Glue Vertica configurata per fornire informazioni di autenticazione. Completa i passaggi della procedura precedente, Per configurare una connessione a Vertica per configurare le informazioni di autenticazione. Sarà necessario il nome della connessione AWS Glue,
connectionName. -
Un bucket o una cartella Amazon S3 da utilizzare per lo storage temporaneo, menzionato in precedenza. Avrai bisogno del nome,
tempS3Path. Dovrai connetterti a questa posizione utilizzando il protocollos3a.
Per esempio:
glueContext.write_dynamic_frame.from_options( frame=dynamicFrame, connection_type="vertica", connection_options={ "connectionName": "connectionName", "staging_fs_url": "s3a://tempS3Path", "db": "dbName", "table": "tableName", } )
Indicazioni di riferimento alle opzioni di connessione a Vertica
-
connectionName: obbligatorio. Utilizzato per la lettura/scrittura. Il nome di una connessione a Vertica AWS Glue configurata per fornire informazioni di autenticazione e sulla rete al metodo di connessione. -
db: obbligatorio. Utilizzato per la lettura/scrittura. Il nome dell'indice in Vertica con cui interagirà il metodo di connessione. -
dbSchema— Obbligatorio se necessario per identificare la tabella. Utilizzato per la lettura/scrittura. Default:public. Il nome di uno schema con cui interagirà il metodo di connessione. -
table— Richiesto per la scrittura, richiesto per la lettura a meno che nonquerysia fornito. Utilizzato per la lettura/scrittura. Il nome di una tabella con cui interagirà il metodo di connessione. -
query: utilizzato per la lettura. Una query SELECT SQL che definisce cosa recuperare durante la lettura da Teradata. -
staging_fs_url: obbligatorio. Utilizzato per la lettura/scrittura. Valori validi: URLs3a. L'URL di un bucket o di una cartella Amazon S3 da utilizzare per l'archiviazione temporanea.