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à.
Tutorial: Nozioni di base su Tabelle S3
In questo tutorial, crei un table bucket e integri i table bucket nella tua regione con i servizi di AWS analisi. Successivamente, utilizzerai il AWS CLI per creare il tuo primo namespace e la tua prima tabella nel tuo table bucket. Quindi, concedi l' AWS Lake Formation autorizzazione sul tuo tavolo, in modo da poter iniziare a interrogare il tavolo con Athena.
Suggerimento
Per migrare dati tabulari da bucket per uso generico a bucket di tabelle, la Biblioteca di soluzioni AWS offre all’utente una soluzione guidata. Questa soluzione automatizza lo spostamento Apache Iceberg e le Apache Hive tabelle registrate AWS Glue Data Catalog e archiviate in bucket generici su bucket da tavolo utilizzando AWS Step Functions Amazon EMR con. Apache Spark Per ulteriori informazioni, consulta Linee guida per la migrazione dei dati tabulari da Amazon S3 a Tabelle S3
Argomenti
Fase 1: crea un table bucket e integralo con i servizi di analisi AWS
In questa fase utilizzi la console Amazon S3 per creare il tuo primo bucket di tabelle. Per conoscere altri metodi per creare un bucket di tabelle, consulta Creazione di un bucket di tabelle.
Nota
Per impostazione predefinita, la console Amazon S3 integra automaticamente i bucket di tabelle con SageMaker Amazon Lakehouse, che AWS consente ai servizi di analisi di rilevare e accedere automaticamente ai dati di S3 Tables. Se crei il tuo primo table bucket a livello di codice utilizzando l'API AWS Command Line Interface (AWS CLI) o REST AWS SDKs, devi completare manualmente l'integrazione dei servizi di analisi. AWS Per ulteriori informazioni, consulta Integrazione delle tabelle AWS Amazon S3 con i servizi di analisi.
Accedi a Console di gestione AWS e apri la console Amazon S3 all'indirizzo. https://console.aws.amazon.com/s3/
Nella barra di navigazione nella parte superiore della pagina, scegli il nome del file attualmente visualizzato Regione AWS. Quindi, scegli la Regione in cui creare il bucket di tabelle.
Nel pannello di navigazione a sinistra, scegli Bucket di tabelle.
Seleziona Crea bucket di tabelle.
In Configurazione generale, inserisci un nome per il bucket di tabelle.
Il nome del bucket di tabelle deve:
Sii unico per te Account AWS nella regione attuale.
Deve contenere da 3 a 63 caratteri
È composto solo da lettere minuscole, numeri e trattini ().
-Iniziare e finire con una lettera o un numero.
Una volta creato il bucket di tabelle, non è possibile modificarne il nome. Chi crea Account AWS il table bucket ne è proprietario. Per ulteriori informazioni sulla denominazione dei bucket di tabelle, consulta Regole di denominazione dei bucket di tabelle.
-
Nella sezione Integrazione con i servizi di AWS analisi, assicurati che la casella di controllo Abilita integrazione sia selezionata.
Se l'opzione Abilita integrazione è selezionata quando crei il tuo primo table bucket utilizzando la console, Amazon S3 tenta di integrare il tuo table bucket AWS con i servizi di analisi. Questa integrazione consente di utilizzare i servizi di AWS analisi per accedere a tutte le tabelle nella regione corrente. Per ulteriori informazioni, consulta Integrazione delle tabelle AWS Amazon S3 con i servizi di analisi.
Seleziona Crea bucket.
Fase 2: creare un namespace di tabelle e una tabella
In questa fase si crea un namespace nel bucket di tabelle e quindi si crea una nuova tabella nel namespace. È possibile creare un namespace di tabelle e una tabella utilizzando la console o la 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».
La procedura seguente utilizza la console di Amazon S3 per creare un namespace e una tabella con Amazon Athena.
Come creare un namespace e una tabella
Accedi a Console di gestione AWS e apri la console Amazon S3 all'indirizzo. https://console.aws.amazon.com/s3/
-
Nel pannello di navigazione a sinistra, scegli Bucket di tabelle.
-
Nella pagina Bucket di tabelle, scegli il bucket di tabelle in cui creare una tabella.
-
Nella pagina dei dettagli del bucket di tabelle, scegli Crea tabella con Athena.
-
Nella finestra di dialogo Crea tabella con Athena, scegli Crea un namespace, quindi inserisci un nome nel campo Nome del namespace. I nomi dei namespace devono essere composti da un numero di caratteri compreso tra 1 e 255 ed essere univoci all’interno del bucket di tabelle. I caratteri validi sono a-z, 0-9 e i caratteri di sottolineatura (
_). I caratteri di sottolineatura non sono consentiti all’inizio dei nomi dei namespace. -
Selezionare Crea namespace.
-
Scegli Crea tabella con Athena.
-
Si apre la console Amazon Athena e viene visualizzato l’editor di query Athena. L’editor di query è popolato con una query di esempio da utilizzare per creare una tabella. Modifica la query per specificare il nome della tabella e le colonne della tabella.
-
Una volta modificata la query, scegli Esegui per creare la tabella.
Se la creazione della tabella viene completata, il nome della nuova tabella viene visualizzato nell’elenco delle tabelle in Athena. Quando torni alla console Amazon S3, la nuova tabella viene visualizzata nell’elenco Tabelle nella pagina dei dettagli del bucket di tabelle, dopo aver aggiornato l’elenco.
Per utilizzare i seguenti comandi di AWS CLI esempio per creare uno spazio dei nomi nel bucket di tabella e quindi creare una nuova tabella con uno schema in tale spazio dei nomi, sostituisci i valori con i tuoi.user input
placeholder
Prerequisiti
-
Collegare la policy
AmazonS3TablesFullAccessall’identità IAM. -
Installa AWS CLI la versione 2.23.10 o successiva. Per ulteriori informazioni, consulta Installazione o aggiornamento della versione più recente della AWS CLI nella Guida per l'utente di AWS Command Line Interface .
Crea un nuovo namespace nel bucket di tabelle eseguendo il comando seguente:
aws s3tables create-namespace \ --table-bucket-arn arn:aws:s3tables:us-east-1:111122223333:bucket/amzn-s3-demo-table-bucket\ --namespacemy_namespaceVerifica che il namespace sia stato creato correttamente eseguendo il comando seguente:
aws s3tables list-namespaces \ --table-bucket-arn arn:aws:s3tables:us-east-1:111122223333:bucket/amzn-s3-demo-table-bucket
Crea una nuova tabella con uno schema di tabella eseguendo il seguente comando:
aws s3tables create-table --cli-input-json file://mytabledefinition.jsonPer il file
mytabledefinition.json, utilizza la seguente definizione di tabella di esempio:{ "tableBucketARN": "arn:aws:s3tables:us-east-1:111122223333:bucket/amzn-s3-demo-table-bucket", "namespace": "my_namespace", "name": "my_table", "format": "ICEBERG", "metadata": { "iceberg": { "schema": { "fields": [{"name": "id", "type": "int","required": true}, {"name": "name", "type": "string"}, {"name": "value", "type": "int"}] } } } }
(Facoltativo) Fase 3: concedere le autorizzazioni di Lake Formation per la tabella
In questa fase, concedi le autorizzazioni di Lake Formation per la nuova tabella ad altri principali IAM. Queste autorizzazioni consentono a principali diversi da te di accedere alle risorse del bucket di tabelle utilizzando Athena e altri servizi di analisi AWS . Per ulteriori informazioni, consulta Concessione dell’autorizzazione Lake Formation per una tabella o un database. Se sei l’unico utente che accede alle tabelle, questa fase può essere ignorata.
-
Apri la AWS Lake Formation console all'indirizzo https://console.aws.amazon.com/lakeformation/
e accedi come amministratore del data lake. Per ulteriori informazioni su come creare un amministratore di data lake, consulta Creare un amministratore di data lake. Nel riquadro di navigazione scegli Autorizzazioni dati, quindi seleziona Concedi.
Nella pagina Concedi le autorizzazioni, in Principali scegli Utenti e ruoli IAM e scegli l’utente o il ruolo IAM a cui desideri consentire l’esecuzione di query sulla tabella.
In LF-Tags o risorse del catalogo, scegli Risorse Catalogo dati denominato.
-
Effettua una delle seguenti operazioni, a seconda se l’accesso deve essere fornito a tutte le tabelle dell’account o solo alle risorse all’interno del bucket di tabelle che hai creato:
-
Per Cataloghi, scegli il catalogo a livello di account creato dall’integrazione del bucket di tabelle. Ad esempio,
.111122223333:s3tablescatalog -
Per Cataloghi, scegli il catalogo secondario per il bucket di tabelle. Ad esempio,
.111122223333:s3tablescatalog/amzn-s3-demo-table-bucket
-
-
(Facoltativo) Se hai scelto il catalogo secondario per il bucket di tabelle, esegui una o entrambe le operazioni seguenti:
Per Database, scegli il namespace di bucket di tabelle creato.
Per Tabelle, scegli la tabella creata nel bucket di tabelle o scegli Tutte le tabelle.
-
A seconda che si scelga un catalogo o un catalogo secondario e un database o una tabella, è possibile impostare le autorizzazioni a livello di catalogo, database o tabella. Per ulteriori informazioni sulle autorizzazioni Lake Formation, consulta Gestione delle autorizzazioni Lake Formation nella Guida per gli sviluppatori di AWS Lake Formation .
Esegui una delle seguenti operazioni:
-
Per Autorizzazioni del catalogo, scegli Super per fornire all’altro principale tutte le autorizzazioni per il catalogo oppure scegli autorizzazioni più dettagliate, come Descrivi.
-
Per Autorizzazioni del database, non è possibile scegliere Super per fornire all’altro principale tutte le autorizzazioni sul database. Scegli invece autorizzazioni più dettagliate, come Descrivi.
-
Per Autorizzazioni della tabella, scegli Super per fornire all’altro principale tutte le autorizzazioni per la tabella oppure scegli autorizzazioni più dettagliate, come Seleziona o Descrivi.
Nota
Quando concedi le autorizzazioni di Lake Formation su una risorsa Data Catalog a un account esterno o direttamente a un responsabile IAM in un altro account, Lake Formation utilizza il servizio AWS Resource Access Manager (AWS RAM) per condividere la risorsa. Se l’account assegnatario appartiene alla stessa organizzazione dell’account concedente, la risorsa condivisa è immediatamente disponibile per l’assegnatario. Se l'account del beneficiario non appartiene alla stessa organizzazione, AWS RAM invia un invito all'account del beneficiario per accettare o rifiutare la concessione di risorse. Quindi, per rendere disponibile la risorsa condivisa, l'amministratore del data lake nell'account del beneficiario deve utilizzare la console o accettare l' AWS RAM invito. AWS CLI Per ulteriori informazioni sulla condivisione dei dati multi-account, consulta Condivisione dei dati tra account in Lake Formation nella Guida per gli sviluppatori di AWS Lake Formation .
-
-
Scegliere Concedi.
Fase 4: eseguire query sui dati con SQL in Athena
È possibile eseguire query sulla tabella con SQL in Athena. Athena supporta le query Data Definition Language (DDL), Data Manipulation Language (DML) e Data Query Language (DQL) per Tabelle S3.
È possibile accedere alla query Athena dalla console Amazon S3 o tramite la console Amazon Athena.
La procedura seguente utilizza la console Amazon S3 per accedere all’editor di query Athena in modo da poter eseguire query su una tabella con Amazon Athena.
Come eseguire query su una tabella
Accedi a Console di gestione AWS e apri la console Amazon S3 all'indirizzo. https://console.aws.amazon.com/s3/
-
Nel pannello di navigazione a sinistra, scegli Bucket di tabelle.
-
Nella pagina Bucket di tabelle, scegli il bucket di tabelle contenente la tabella sui cui desideri eseguire la query.
-
Nella pagina dei dettagli del bucket di tabelle, scegli il pulsante di opzione accanto al nome della tabella su cui desideri eseguire una query.
-
Scegli Interroga tabella con Athena.
-
Si apre la console Amazon Athena e viene visualizzato l’editor di query Athena con una query
SELECTdi esempio caricata automaticamente. Modifica questa query in base alle esigenze del caso d’uso. -
Per eseguire la query, scegli Run (Esegui).
Come eseguire query su una tabella
Apri la console Athena all'indirizzo https://console.aws.amazon.com/athena/
. -
Eseguire una query sulla tabella. Di seguito è riportata una query di esempio che è possibile modificare. Assicurarsi di sostituire
con le proprie informazioni.user input placeholdersSELECT * FROM "s3tablescatalog/amzn-s3-demo-table-bucket"."my_namespace"."my_table" LIMIT 10 -
Per eseguire la query, scegli Run (Esegui).