Seleziona le tue preferenze relative ai cookie

Utilizziamo cookie essenziali e strumenti simili necessari per fornire il nostro sito e i nostri servizi. Utilizziamo i cookie prestazionali per raccogliere statistiche anonime in modo da poter capire come i clienti utilizzano il nostro sito e apportare miglioramenti. I cookie essenziali non possono essere disattivati, ma puoi fare clic su \"Personalizza\" o \"Rifiuta\" per rifiutare i cookie prestazionali.

Se sei d'accordo, AWS e le terze parti approvate utilizzeranno i cookie anche per fornire utili funzionalità del sito, ricordare le tue preferenze e visualizzare contenuti pertinenti, inclusa la pubblicità pertinente. Per continuare senza accettare questi cookie, fai clic su \"Continua\" o \"Rifiuta\". Per effettuare scelte più dettagliate o saperne di più, fai clic su \"Personalizza\".

Prerequisiti per la configurazione di un'integrazione zero-ETL

Modalità Focus
Prerequisiti per la configurazione di un'integrazione zero-ETL - AWS Glue

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

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

La configurazione di un'integrazione tra l'origine e la destinazione richiede alcuni prerequisiti, come la configurazione dei ruoli IAM, che consentono AWS Glue di accedere ai dati dall'origine e scrivere sulla destinazione, e l'uso di chiavi KMS per crittografare i dati nella posizione intermedia o di destinazione.

Configurazione delle risorse di origine

Eseguite le seguenti attività di configurazione in base alle esigenze della fonte.

Impostazione del ruolo di origine

Questa sezione descrive come assegnare un ruolo di origine per consentire all'integrazione zero-ETL di accedere alla connessione. Ciò è applicabile anche solo per le fonti SaaS.

Nota

Per limitare l'accesso solo a poche connessioni, puoi prima creare la connessione per ottenere l'ARN della connessione. Per informazioni, consulta Configurazione di una fonte per un'integrazione zero-ETL.

Crea un ruolo con le autorizzazioni per l'integrazione per accedere alla connessione:

{ "Version": "2012-10-17", "Statement": [ { "Sid": "GlueConnections", "Effect": "Allow", "Action": [ "glue:GetConnections", "glue:GetConnection" ], "Resource": [ "arn:aws:glue:*:<accountId>:catalog", "arn:aws:glue:us-east-1:<accountId>:connection/*" ] }, { "Sid": "GlueActionBasedPermissions", "Effect": "Allow", "Action": [ // Fetch entities: "glue:ListEntities", // Refresh connection credentials: "glue:RefreshOAuth2Tokens" ], "Resource": [ "*" ] } ] }

Policy di trust:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": [ "glue.amazonaws.com" ] }, "Action": "sts:AssumeRole" } ] }

Impostazione delle risorse target

Esegui le seguenti attività di configurazione come richiesto per l'obiettivo di integrazione del AWS Glue data warehouse di Data Catalog o Amazon Redshift.

Per le integrazioni con un target di AWS Glue database:

Per le integrazioni con un target di datawarehouse Amazon Redshift:

Configurazione di AWS Glue un database

Per le integrazioni che utilizzano un AWS Glue database:

Per configurare un database di destinazione nel AWS Glue Data Catalog con una posizione Amazon S3:

  1. Nella home page della AWS Glue console, seleziona Database in Data Catalog.

  2. Scegli Aggiungi database nell'angolo in alto a destra. Se hai già creato un database, assicurati che la posizione con l'URI di Amazon S3 sia impostata per il database.

  3. Inserisci un nome e una posizione (URI S3). Tieni presente che la posizione è richiesta per l'integrazione Zero-ETL. Al termine, fai clic su Crea database.

    Nota

    Il bucket Amazon S3 deve trovarsi nella stessa regione del database. AWS Glue

Per informazioni sulla creazione di un nuovo database in AWS Glue, consulta Guida introduttiva al AWS Glue Data Catalog.

Puoi anche usare la create-databaseCLI per creare il database in. AWS Glue Nota che l'accesso LocationUri --database-input è obbligatorio.

Ottimizzazione delle tabelle Iceberg

Una volta creata una tabella AWS Glue nel database di destinazione, puoi abilitare la compattazione per velocizzare le query in Amazon Athena. Per informazioni sulla configurazione delle risorse (IAM Role) per la compattazione, consulta Prerequisiti per l'ottimizzazione delle tabelle.

Per ulteriori informazioni sulla configurazione della compattazione sulla AWS Glue tabella creata dall'integrazione, consulta Ottimizzazione delle tabelle Iceberg.

Fornire una politica RBAC (Resource Based Access) per il catalogo

Per le integrazioni che utilizzano un AWS Glue database, aggiungi le seguenti autorizzazioni alla politica RBAC del catalogo per consentire le integrazioni tra origine e destinazione.

Nota

Per le integrazioni tra più account, sia la politica dei ruoli di Alice (utente che crea l'integrazione) che la politica delle risorse del catalogo devono consentire l'accesso alla risorsa. glue:CreateInboundIntegration Per lo stesso account, è sufficiente una politica in materia di risorse o una politica di ruolo che consenta l'utilizzo della glue:CreateInboundIntegration risorsa. Entrambi gli scenari devono comunque glue.amazonaws.com consentirlo. glue:AuthorizeInboundIntegration

È possibile accedere alle impostazioni del catalogo in Data Catalog. Fornisci quindi le seguenti autorizzazioni e inserisci le informazioni mancanti.

{ "Version": "2012-10-17", "Statement": [ { // Allow Alice to create Integration on Target Database "Principal": { "AWS": [ "arn:aws:iam::<source-account-id>:user/Alice" ] }, "Effect": "Allow", "Action": [ "glue:CreateInboundIntegration" ], "Resource": [ "arn:aws:glue:<region>:<Target-Account-Id>:catalog", "arn:aws:glue:<region>:<Target-Account-Id>:database/DatabaseName" ], "Condition": { "StringLike": { "aws:SourceArn": "arn:aws:dynamodb:<region>:<Account>:table/<table-name>" } } }, { // Allow Glue to Authorize the Inbound Integration on behalf of Bob "Principal": { "Service": [ "glue.amazonaws.com" ] }, "Effect": "Allow", "Action": [ "glue:AuthorizeInboundIntegration" ], "Resource": [ "arn:aws:glue:<region>:<Target-Account-Id>:catalog", "arn:aws:glue:<region>:<Target-Account-Id>:database/DatabaseName" ], "Condition": { "StringEquals": { "aws:SourceArn": "arn:aws:dynamodb:<region>:<account-id>:table/<table-name>" } } } ] }

Creazione di un ruolo IAM di destinazione

Crea un ruolo IAM di destinazione con le seguenti autorizzazioni e relazioni di fiducia:

{ "Version": "2012-10-17", "Statement": [ { "Action": "s3:ListBucket", "Resource": "arn:aws:s3:::<target iceberg table s3 bucket>", "Effect": "Allow" }, { "Action": [ "s3:GetObject", "s3:PutObject", "s3:DeleteObject" ], "Resource": "arn:aws:s3:::<target iceberg table s3 bucket>/prefix/*", "Effect": "Allow" }, { "Action": [ "glue:GetDatabase" ], "Resource": [ "arn:aws:glue:<region>:<account-id>:catalog", "arn:aws:glue:<region>:<account-id>:database/DatabaseName" ], "Effect": "Allow" }, { "Action": [ "glue:CreateTable", "glue:GetTable", "glue:UpdateTable", "glue:GetTableVersion", "glue:GetTableVersions", "glue:GetResourcePolicy" ], "Resource": [ "arn:aws:glue:<region>:<account-id>:catalog", "arn:aws:glue:<region>:<account-id>:database/<DatabaseName>", "arn:aws:glue:<region>:<account-id>:table/<DatabaseName>/*" ], "Effect": "Allow" }, { "Action": [ "cloudwatch:PutMetricData" ], "Resource": "*", "Condition": { "StringEquals": { "cloudwatch:namespace": "AWS/Glue/ZeroETL" } }, "Effect": "Allow" }, { "Action": [ "logs:CreateLogGroup", "logs:CreateLogStream", "logs:PutLogEvents" ], "Resource": "*", "Effect": "Allow" } ] }

Aggiungi la seguente politica di fiducia per consentire al AWS Glue servizio di assumere il ruolo:

{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "glue.amazonaws.com" }, "Action": "sts:AssumeRole" } ] }

Creazione di un data warehouse Amazon Redshift

Se il tuo obiettivo di integrazione zero-ETL è un data warehouse Amazon Redshift, crea il data warehouse se non ne hai già uno. Per creare un gruppo di lavoro Serverless Amazon Redshift, consulta Creazione di un gruppo di lavoro con uno spazio dei nomi. Per creare un cluster Amazon Redshift, consulta Creazione di un cluster.

Il gruppo di lavoro o cluster Amazon Redshift di destinazione deve avere il enable_case_sensitive_identifier parametro attivato affinché l'integrazione abbia successo. Per ulteriori informazioni sull'attivazione della distinzione tra maiuscole e minuscole, consulta Attiva la distinzione tra maiuscole e minuscole per il tuo data warehouse nella guida alla gestione di Amazon Redshift.

Una volta completata la configurazione del gruppo di lavoro o del cluster Amazon Redshift, devi configurare il tuo data warehouse. Per ulteriori informazioni, consulta la sezione Guida introduttiva alle integrazioni zero-ETL nella Amazon Redshift Management Guide.

Configurazione di un VPC per l'integrazione zero-ETL

Per configurare un VPC per la tua integrazione zero-ETL:

  1. Vai su VPC > Tuo VPCs e scegli Crea VPC.

    1. Seleziona VPC e altro.

    2. Imposta il nome del tuo VPC.

    3. Imposta il IPv4 CIDR: 10.0.0.0/16.

    4. Imposta il numero di AZ su 1.

    5. Imposta il numero di sottoreti pubbliche e private su 1.

    6. Imposta i gateway NAT su Nessuno.

    7. Imposta gli endpoint VPC su S3 Gateway.

    8. Abilita i nomi host DNS e la risoluzione DNS.

  2. Vai su Endpoints e scegli Crea endpoint.

  3. Crea endpoint per questi servizi nella sottorete privata del tuo VPC (usa il gruppo di sicurezza predefinito):

    1. com.amazonaws.us-east-1.lambda

    2. com.amazonaws.us-east-1.glue

    3. com.amazonaws.us-east-1.sts

Crea la connessione: AWS Glue

  1. Vai a AWS Glue> Connessioni dati e scegli Crea connessione.

  2. Seleziona Rete.

  3. Seleziona il VPC, la sottorete (privata) e il gruppo di sicurezza predefinito che hai creato.

Impostazione del ruolo di destinazione per il VPC

Il ruolo di destinazione deve disporre delle seguenti autorizzazioni (oltre alle altre autorizzazioni richieste da Zero- ETl integrations):

{ "Version": "2012-10-17", "Statement": [ { "Sid": "CustomerVpc", "Effect": "Allow", "Action": [ "ec2:CreateTags", "ec2:DeleteTags", "ec2:DescribeRouteTables", "ec2:DescribeVpcEndpoints", "ec2:DescribeSecurityGroups", "ec2:DescribeSubnets", "ec2:CreateNetworkInterface", "ec2:DeleteNetworkInterface", "glue:GetConnection" ], "Resource": [ "*" ] } ] }

Impostazione delle proprietà delle risorse della gamba di destinazione

Se utilizzi la CLI, imposta le proprietà delle risorse della gamba di destinazione sul AWS Glue database di destinazione che hai creato. Passa l'ARN del ruolo di destinazione e il nome della AWS Glue connessione.

aws glue create-integration-resource-property \ --resource-arn arn:aws:glue:us-east-1:<account-id>:database/exampletarget \ --target-processing-properties '{"RoleArn" : "arn:aws:iam::<account-id>:role/example-role", "ConnectionName":"example-vpc-3"}' \ --endpoint-url https://example.amazonaws.com --region us-east-1

Possibili errori del client

Di seguito sono riportati i possibili errori del client per un'integrazione configurata con un VPC.

Messaggio di errore Azione richiesta
Il ruolo fornito non è autorizzato a eseguire colla: GetConnection in connessione. Aggiungi questa autorizzazione alla politica del ruolo, quindi attendi il ripristino dell'integrazione. Aggiorna la politica dei ruoli
Il ruolo fornito non è autorizzato a eseguire ec2:DescribeSubnets. Aggiungi questa autorizzazione alla politica del ruolo, quindi attendi il ripristino dell'integrazione. Aggiorna la politica dei ruoli
Il ruolo fornito non è autorizzato a eseguire ec2:DescribeSecurityGroups. Aggiungi questa autorizzazione alla politica del ruolo, quindi attendi il ripristino dell'integrazione. Aggiorna la politica dei ruoli
Il ruolo fornito non è autorizzato a eseguire ec2:DescribeVpcEndpoints. Aggiungi questa autorizzazione alla politica del ruolo, quindi attendi il ripristino dell'integrazione. Aggiorna la politica dei ruoli
Il ruolo fornito non è autorizzato a eseguire ec2:DescribeRouteTables. Aggiungi questa autorizzazione alla politica del ruolo, quindi attendi il ripristino dell'integrazione. Aggiorna la politica dei ruoli
Il ruolo fornito non è autorizzato a eseguire ec2:CreateTags. Aggiungi questa autorizzazione alla politica del ruolo, quindi attendi il ripristino dell'integrazione. Aggiorna la politica dei ruoli
Il ruolo fornito non è autorizzato a eseguire ec2:CreateNetworkInterface. Aggiungi questa autorizzazione alla politica del ruolo, quindi attendi il ripristino dell'integrazione. Aggiorna la politica dei ruoli
La sottorete di connessione fornita non contiene un endpoint S3 o un gateway NAT valido. Aggiorna la sottorete, quindi attendi il ripristino dell'integrazione. Aggiornamento degli endpoint della sottorete VPC
La sottorete di connessione non è stata trovata. Aggiorna la sottorete di connessione, quindi attendi il ripristino dell'integrazione. Aggiorna la connessione &GLU;
Gruppo di sicurezza della connessione non trovato. Aggiorna il gruppo di sicurezza della connessione, quindi attendi il ripristino dell'integrazione. Aggiorna la connessione &GLU;
Impossibile connettersi a S3 tramite la connessione VPC fornita. Aggiorna le configurazioni delle sottoreti, quindi attendi il ripristino dell'integrazione. Aggiornamento degli endpoint della sottorete VPC
Impossibile connettersi a Lambda tramite la connessione VPC fornita. Aggiorna le configurazioni delle sottoreti, quindi attendi il ripristino dell'integrazione. Aggiornamento degli endpoint della sottorete VPC

Configurazione di un'integrazione zero-ETL tra account

Per configurare un'integrazione zero-ETL tra account:

  1. Configurare una politica delle risorse di destinazione come descritto in. Fornire una politica RBAC (Resource Based Access) per il catalogo Assicurati che il ruolo dell'account di origine sia esplicitamente consentito sulla risorsa di destinazione.

  2. Verifica che il ruolo dell'account di origine (il ruolo utilizzato per creare l'integrazione) sia il seguente:

    { "Version": "2012-10-17", "Statement": [ { "Sid": "Stmt123456789012", "Action": [ "glue:CreateInboundIntegration" ], "Effect": "Allow", "Resource": [ "arn:aws:glue:<region>:<target-account-id>:catalog", "arn:aws:glue:<region>:<target-account-id>:database/DatabaseName" ] }] }
  3. Crea l'integrazione come descritto inCreare un'integrazione.

PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.