Crea AWS Glue connessioni (per amministratori) - Amazon SageMaker AI

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à.

Crea AWS Glue connessioni (per amministratori)

Per utilizzare le sorgenti dati con l'estensione SQL, gli amministratori possono configurare AWS Glue connessioni per ogni origine dati. Queste connessioni archiviano i dettagli di configurazione necessari per accedere e interagire con le origini dati. Una volta create le connessioni e concesse le autorizzazioni appropriate, le connessioni diventano visibili a tutti gli utenti degli Spazi Amazon SageMaker Studio che condividono lo stesso ruolo di esecuzione.

Per creare queste connessioni:

  • Innanzitutto, crea un file JSON che definisca le proprietà di connessione per ogni origine dati. Il file JSON include dettagli come l'identificatore dell'origine dati, le credenziali di accesso e altri parametri di configurazione pertinenti per accedere alle fonti di dati tramite le connessioni. AWS Glue

  • Quindi utilizzate AWS Command Line Interface (AWS CLI) per creare la AWS Glue connessione, passando il file JSON come parametro. Il AWS CLI comando legge i dettagli della connessione dal file JSON e stabilisce la connessione appropriata.

    Nota

    L’estensione SQL supporta la creazione di connessioni solo tramite la AWS CLI.

Prima di creare AWS Glue connessioni, assicurati di completare i seguenti passaggi:

  • Installa e configura AWS Command Line Interface (AWS CLI). Per ulteriori informazioni su come installare e configurareAWS CLI, vedere Informazioni sulla AWS CLI versione 2. Assicurati che le chiavi di accesso e i token dell'utente o del ruolo IAM utilizzato per la configurazione AWS CLI dispongano delle autorizzazioni necessarie per creare AWS Glue connessioni. In caso contrario, aggiungi una policy che autorizzi l’azione glue:CreateConnection.

  • Scopri come usare. Gestione dei segreti AWS Consigliamo di utilizzare Secrets Manager per fornire le credenziali di connessione e qualsiasi altra informazione sensibile per il tuo datastore. Per ulteriori informazioni sull'utilizzo di Secrets Manager per memorizzare le credenziali, vedere Memorizzazione delle credenziali di connessione in AWS Secrets Manager.

Creazione di un file JSON di definizione della connessione

Per creare un file di definizione della AWS Glue connessione, crea un file JSON per definire i dettagli di connessione sulla macchina su cui hai installato e configurato il. AWS CLI Per questo esempio, assegna al file il nome sagemaker-sql-connection.json.

Il file di definizione della connessione deve avere il formato generale seguente:

  • Nome: nome della connessione.

  • Descrizione: descrizione testuale della connessione.

  • ConnectionTypeè il tipo di connessione. Scegli REDSHIFT, ATHENA o SNOWFLAKE.

  • ConnectionPropertiesè una mappa di coppie chiave-valore per le proprietà di connessione, come l'ARN del tuo AWS segreto o il nome del tuo database.

{ "ConnectionInput": { "Name": <GLUE_CONNECTION_NAME>, "Description": <GLUE_CONNECTION_DESCRIPTION>, "ConnectionType": "REDSHIFT | ATHENA | SNOWFLAKE", "ConnectionProperties": { "PythonProperties": "{\"aws_secret_arn\": <SECRET_ARN>, \"database\": <...>}" } } }
Nota
  • Le proprietà all’interno della chiave ConnectionProperties sono costituite da coppie chiave-valore in formato stringa. Evita di utilizzare le virgolette doppie nelle chiavi o i valori con un carattere backslash (\).

  • Tutte le proprietà disponibili in Secrets Manager possono essere fornite direttamente anche da PythonProperties. Tuttavia, non è consigliabile includere campi sensibili come le password in PythonProperties. L’approccio consigliato, invece, è l’utilizzo di Secrets Manager.

I file di definizione della connessione specifici per i diversi datastore sono disponibili nelle sezioni seguenti.

I file di definizione della connessione per ogni origine dati contengono le proprietà e la configurazione specifiche necessarie per connettersi ai datastore dall’estensione SQL. Consulta la sezione appropriata per dettagli sulla definizione delle connessioni a tale origine.

Questa sezione fornisce dettagli sulle proprietà del segreto e della connessione nei file di definizione JSON specifici di Amazon Redshift. Prima di creare il file di configurazione della connessione, ti consigliamo di archiviare le credenziali di accesso Amazon Redshift come segreto in Secrets Manager. In alternativa, puoi generare credenziali temporanee del database in base alle autorizzazioni concesse tramite una policy di autorizzazione AWS Identity and Access Management (IAM) per gestire l'accesso degli utenti al tuo database Amazon Redshift. Per ulteriori informazioni, consultare Utilizzo dell'autenticazione IAM per generare credenziali utente di database.

Creazione di un segreto per le credenziali di accesso di Amazon Redshift

Per archiviare le informazioni di Amazon Redshift in AWS Secrets Manager
  1. Dalla AWS console, accedi a Secrets Manager.

  2. Scegli Archivia un nuovo segreto.

  3. In Tipo di segreto, scegli Credenziali per Amazon Redshift.

  4. Inserisci il nome utente e la password dell’amministratore configurati all’avvio del cluster Amazon Redshift.

  5. Seleziona il cluster Amazon Redshift associato ai segreti.

  6. Assegna un nome al tuo segreto.

  7. Le impostazioni rimanenti possono essere lasciate sui valori predefiniti per la creazione iniziale del segreto o personalizzate se necessario.

  8. Crea il segreto e recuperane l’ARN.

Configurare una AWS Glue connessione per Amazon Redshift

L'estensione SQL si connette alle fonti di dati utilizzando AWS Glue connessioni personalizzate. Per informazioni generali sulla creazione di AWS Glue connessioni per connettere un'origine dati, consultaCrea AWS Glue connessioni (per amministratori). L'esempio seguente è una definizione di AWS Glue connessione di esempio per la connessione ad Amazon Redshift.

Prima di creare una nuova connessione, ricorda questi suggerimenti:

  • Le proprietà all’interno della chiave PythonProperties sono costituite da coppie chiave-valore in formato stringa. Evita di utilizzare le virgolette doppie nelle chiavi o i valori con un carattere backslash (\).

  • Nel file di definizione della connessione, inserisci il nome e la descrizione della connessione e sostituisci l’ARN del segreto in aws_secret_arn con l’ARN del segreto creato in precedenza.

  • Assicurati che il database dichiarato con il suo nome nella definizione di connessione precedente corrisponda al database del cluster. Per verificarlo, accedi alla pagina dei dettagli del cluster nella console di Amazon Redshift e controlla il nome del database in Configurazioni del database nella sezione Proprietà.

  • Per parametri aggiuntivi, consulta l’elenco delle proprietà di connessione supportate da Amazon Redshift in Parametri di connessione per Amazon Redshift.

    Nota
    • Per impostazione predefinita, il connettore dell’estensione SQL per Python esegue tutte le query in una transazione, a meno che auto_commit nelle proprietà di connessione non sia impostato su true.

    • Puoi aggiungere tutti i parametri di connessione, incluso il nome di database, a un segreto.

{ "ConnectionInput": { "Name": "Redshift connection name", "Description": "Redshift connection description", "ConnectionType": "REDSHIFT", "ConnectionProperties": { "PythonProperties":"{\"aws_secret_arn\": \"arn:aws:secretsmanager:region:account_id:secret:secret_name\", \"database\":\"database_name\", \"database_metadata_current_db_only\": false}" } } }

Una volta aggiornato il file di definizione, segui i passaggi indicati Creazione di connessioni AWS Glue per creare la AWS Glue connessione.

Questa sezione fornisce dettagli sulle proprietà di connessione nei file di definizione JSON specifici di Athena.

Configurazione di una connessione AWS Glue per Athena

L'estensione SQL si connette alle fonti di dati utilizzando AWS Glue connessioni personalizzate. Per informazioni generali sulla creazione di AWS Glue connessioni per connettere un'origine dati, consultaCrea AWS Glue connessioni (per amministratori). L'esempio seguente è una definizione di AWS Glue connessione di esempio per la connessione ad Athena.

Prima di creare una nuova connessione, ricorda questi suggerimenti:

  • Le proprietà all’interno della chiave ConnectionProperties sono costituite da coppie chiave-valore in formato stringa. Evita di utilizzare le virgolette doppie nelle chiavi o i valori con un carattere backslash (\).

  • Nel file di definizione della connessione, inserisci il nome e la descrizione della connessione, quindi sostituisci catalog_name con il nome del tuo catalogo, s3_staging_dir con l’URI (Uniform Resource Identifier) di Amazon S3 della directory di output nel bucket Amazon S3 e region_name con la Regione del tuo bucket Amazon S3.

  • Per parametri aggiuntivi, consulta l’elenco delle proprietà di connessione supportate da Athena in Parametri di connessione per Athena.

    Nota
    • Puoi aggiungere tutti i parametri di connessione, incluso catalog_name o s3_staging_dir, a un segreto.

    • Se specifichi workgroup, non è necessario specificare s3_staging_dir.

{ "ConnectionInput": { "Name": "Athena connection name", "Description": "Athena connection description", "ConnectionType": "ATHENA", "ConnectionProperties": { "PythonProperties": "{\"catalog_name\": \"catalog_name\",\"s3_staging_dir\": \"s3://amzn-s3-demo-bucket_in_same_region/output_query_results_dir/\", \"region_name\": \"region\"}" } } }

Una volta aggiornato il file di definizione, segui i passaggi indicati Creazione di connessioni AWS Glue per creare la AWS Glue connessione.

Questa sezione fornisce dettagli sulle proprietà del segreto e della connessione nei file di definizione JSON specifici di Snowflake. Prima di creare il file di configurazione della connessione, ti consigliamo di archiviare le credenziali di accesso Snowflake come segreto in Secrets Manager.

Creazione di un segreto per le credenziali di accesso Snowflake

Per archiviare le informazioni di Amazon Redshift in Secrets Manager
  1. Dalla AWS console, accedi a. Gestione dei segreti AWS

  2. Scegli Archivia un nuovo segreto.

  3. In Tipo di segreto, scegli Altro tipo di segreto.

  4. Nella coppia chiave-valore, scegli Testo normale, quindi copia il contenuto JSON seguente. Sostituisci user, password e account con i valori effettivi.

    { "user":"snowflake_user", "password":"snowflake_password", "account":"account_id" }
  5. Assegna un nome al segreto.

  6. Le impostazioni rimanenti possono essere lasciate sui valori predefiniti per la creazione iniziale del segreto o personalizzate se necessario.

  7. Crea il segreto e recuperane l’ARN.

Configura una AWS Glue connessione per Snowflake

L'estensione SQL si connette alle fonti di dati utilizzando connessioni personalizzateAWS Glue. Per informazioni generali sulla creazione di AWS Glue connessioni per connettere un'origine dati, consultaCrea AWS Glue connessioni (per amministratori). L'esempio seguente è un esempio di definizione di AWS Glue connessione per la connessione a Snowflake.

Prima di creare una nuova connessione, ricorda questi suggerimenti:

  • Le proprietà all’interno della chiave ConnectionProperties sono costituite da coppie chiave-valore in formato stringa. Evita di utilizzare le virgolette doppie nelle chiavi o i valori con un carattere backslash (\).

  • Nel file di definizione della connessione, inserisci il nome e la descrizione della connessione, sostituisci l’ARN del segreto in aws_secret_arn con l’ARN del segreto creato in precedenza, quindi immetti l’ID dell’account in account.

  • Per parametri aggiuntivi, consulta l’elenco delle proprietà di connessione supportate da Snowflake in Parametri di connessione per Snowflake.

    Nota

    Puoi aggiungere tutti i parametri di connessione, incluso account, a un segreto.

{ "ConnectionInput": { "Name": "Snowflake connection name", "Description": "Snowflake connection description", "ConnectionType": "SNOWFLAKE", "ConnectionProperties": { "PythonProperties": "{\"aws_secret_arn\": \"arn:aws:secretsmanager:region:account_id:secret:secret_name\", \"account\":\"account_id\"}"}" } } }

Una volta aggiornato il file di definizione, segui i passaggi indicati Creazione di connessioni AWS Glue per creare la AWS Glue connessione.

Creazione di connessioni AWS Glue

Per creare una AWS Glue connessione tramiteAWS CLI, utilizza il file di definizione della connessione ed esegui questo AWS CLI comando. Sostituite il region segnaposto con il nome AWS della regione e fornite il percorso locale del file di definizione.

Nota

Il percorso del file di definizione della configurazione deve essere preceduto da file://.

aws --region region glue create-connection --cli-input-json file://path_to_file/sagemaker-sql-connection.json

Verifica che la AWS Glue connessione sia stata creata eseguendo il comando seguente e controlla il nome della connessione.

aws --region region glue get-connections

In alternativa, puoi aggiornare una AWS Glue connessione esistente come segue:

  • Modificate il file di definizione della AWS Glue connessione come richiesto.

  • Utilizza il comando seguente per aggiornare la connessione.

    aws --region region glue update-connection --name glue_connection_name --cli-input-json file://path_to_file/sagemaker-sql-connection.json