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à.
Integrazione delle tabelle AWS Amazon S3 con i servizi di analisi
Questo argomento descrive i prerequisiti e le procedure necessarie per integrare i bucket AWS di tabelle Amazon S3 con i servizi di analisi. Per una panoramica di come funziona l’integrazione, consulta Panoramica dell’integrazione di Tabelle S3.
Nota
Questa integrazione utilizza AWS Glue Data Catalog e potrebbe comportare costi di richiesta e archiviazione. AWS Glue Per ulteriori informazioni, consultare AWS Glue Prezzi
Si applicano prezzi aggiuntivi per l'esecuzione di query su S3 Tables. Per ulteriori informazioni, consulta le informazioni sui prezzi del motore di query in uso.
Prerequisiti per l'integrazione
I seguenti prerequisiti sono necessari per integrare i bucket di tabelle con i servizi di analisi: AWS
Aggiungi le seguenti AWS Glue autorizzazioni al tuo principale AWS Identity and Access Management (IAM):
glue:CreateCatalognecessario per creare un catalogos3tablescatalogfederato nel Data Catalogglue:PassConnectionconcede al principale chiamante il diritto di delegare la creazione dellaaws:s3tablesconnessione al servizio Amazon S3.
Effettua l'aggiornamento alla versione più recente di (). AWS Command Line Interface AWS CLI
Importante
Durante la creazione delle tabelle, è necessario utilizzare solo lettere minuscole nei nomi delle tabelle e nelle definizioni delle tabelle. Ad esempio, è necessario verificare che i nomi delle colonne siano tutti in minuscolo. Se il nome o la definizione della tabella contengono lettere maiuscole, la tabella non è supportata da AWS Lake Formation o da AWS Glue Data Catalog. In questo caso, la tua tabella non sarà visibile ai servizi di AWS analisi come Amazon Athena, anche se i tuoi table bucket sono integrati con AWS servizi di analisi.
Se la definizione della tabella contiene lettere maiuscole, ricevi il seguente messaggio di errore quando esegui una SELECT query in Athena: «GENERIC_INTERNAL_ERROR: Get table request failed: com.amazonaws.services.glue.model. ValidationException: Risorsa federativa non supportata: nomi di tabelle o colonne non validi».
Integrazione dei bucket di tabelle con i servizi di analisi AWS
Puoi integrare i table bucket con Data Catalog e i servizi di AWS analisi utilizzando i controlli di accesso IAM per impostazione predefinita o, facoltativamente, utilizzare i controlli di accesso di Lake Formation.
Quando esegui l'integrazione utilizzando i controlli di accesso IAM, richiedi i privilegi IAM per accedere a bucket e tabelle di tabelle Amazon S3, oggetti Data Catalog e al motore di query che stai utilizzando. Se scegli di effettuare l'integrazione utilizzando Lake Formation, sia i controlli di accesso IAM che le sovvenzioni Lake Formation determinano l'accesso alle risorse del Data Catalog. Consulta la AWS Lake Formation Developer Guide per ulteriori informazioni sull'integrazione di Lake Formation.
Le seguenti sezioni descrivono come utilizzare la console di gestione Amazon S3 o AWS CLI configurare l'integrazione con i controlli di accesso IAM.
Apri la console Amazon S3 all'indirizzo. https://console.aws.amazon.com/s3/
Nel pannello di navigazione a sinistra, scegli Bucket di tabelle.
Seleziona Crea bucket di tabelle.
Viene visualizzata la pagina Create bucket di tabelle.
Inserisci un Nome del bucket di tabelle e assicurati che sia selezionata l’opzione Abilita integrazione.
Seleziona Crea bucket di tabelle. Amazon S3 tenterà di integrare automaticamente i bucket di tabelle in tale Regione.
Per integrare i table bucket con i controlli di accesso IAM utilizzando il AWS CLI
I passaggi seguenti mostrano come utilizzare i bucket AWS CLI da tabella per integrare. Per utilizzare queste fasi, sostituisci con le informazioni appropriate.user input placeholders
Creare un bucket di tabelle.
aws s3tables create-table-bucket \ --regionus-east-1\ --nameamzn-s3-demo-table-bucket-
Creare un file denominato
catalog.jsoncontenente il catalogo seguente:{ "Name": "s3tablescatalog", "CatalogInput": { "FederatedCatalog": { "Identifier": "arn:aws:s3tables:us-east-1:111122223333:bucket/*", "ConnectionName": "aws:s3tables" }, "CreateDatabaseDefaultPermissions":[ { "Principal": { "DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS" }, "Permissions": ["ALL"] } ], "CreateTableDefaultPermissions":[ { "Principal": { "DataLakePrincipalIdentifier": "IAM_ALLOWED_PRINCIPALS" }, "Permissions": ["ALL"] } ], "AllowFullTableExternalDataAccess": "True" } }Creare il catalogo
s3tablescatalogutilizzando il comando seguente. La creazione di questo catalogo lo popola AWS Glue Data Catalog con oggetti corrispondenti a bucket di tabella, namespace e tabelle.aws glue create-catalog \ --regionus-east-1\ --cli-input-json file://catalog.json Verificate che il
s3tablescatalogcatalogo sia stato aggiunto utilizzando il comando AWS Glue seguente:aws glue get-catalog --catalog-id s3tablescatalog
Il processo di integrazione dei servizi di AWS analisi è stato aggiornato per utilizzare le autorizzazioni IAM per impostazione predefinita. Se hai già configurato l'integrazione, puoi continuare a utilizzare l'integrazione attuale. Tuttavia, se desideri modificare l'integrazione esistente per utilizzare invece le autorizzazioni IAM, consulta la Guida per AWS Lake Formation gli sviluppatori. Puoi anche ripetere l'integrazione per eliminare la configurazione esistente AWS Glue Data Catalog AWS Lake Formation e rieseguire l'integrazione. Ciò rimuoverà tutte le sovvenzioni di Lake Formation esistenti e le autorizzazioni di accesso associate a. s3tablescatalog
-
Apri la AWS Lake Formation console all'indirizzohttps://console.aws.amazon.com/lakeformation/
, e accedi come amministratore del data lake. Per ulteriori informazioni su come creare un amministratore del data lake, consulta Creare un amministratore di data lake nella Guida per gli sviluppatori di AWS Lake Formation . -
Elimina il catalogo
s3tablescatalogcome segue:-
Nel riquadro di navigazione a sinistra, seleziona Cataloghi.
-
Seleziona il pulsante di opzione accanto al catalogo
s3tablescatalognell’elenco Cataloghi. Dal menu Actions (Operazioni), scegli Delete (Elimina).
-
-
Annulla la registrazione della posizione dei dati per il catalogo
s3tablescatalogcome segue:-
Nel riquadro di navigazione a sinistra, vai alla sezione Amministrazione e scegli Posizioni del data lake.
-
Seleziona il pulsante di opzione accanto alla posizione del data lake
s3tablescatalog, ad esempios3://tables:.region:account-id:bucket/* -
Nel menu Operazioni scegli Rimuovi.
-
Nella finestra di dialogo di conferma che viene visualizzata, scegli Rimuovi.
-
-
Ora che hai eliminato il
s3tablescatalogcatalogo e la posizione del data lake, puoi seguire i passaggi per integrare i table bucket con i servizi di AWS analisi utilizzando il processo di integrazione aggiornato.
Nota
Se desideri utilizzare tabelle crittografate SSE-KMS in servizi di AWS analisi integrati, il ruolo che utilizzi deve disporre dell'autorizzazione a utilizzare la tua AWS KMS chiave per le operazioni di crittografia. Per ulteriori informazioni, consulta Concessione ai dirigenti IAM delle autorizzazioni per l'utilizzo di tabelle crittografate nei servizi di analisi integrati AWS.