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\".

Creazione di una tabella di Amazon S3

Modalità Focus
Creazione di una tabella di Amazon S3 - Amazon Simple Storage Service

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

Una tabella S3 è una sottorisorsa di un bucket di tabelle. Questa risorsa memorizza le tabelle nel Apache Iceberg formato in modo da poterle utilizzare utilizzando motori di query e altre applicazioni che supportano Apache Iceberg. Amazon S3 ottimizza continuamente le tabelle per contribuire a ridurre i costi di storage e migliorare le prestazioni delle query di analisi.

Quando si crea una tabella, Amazon S3 genera automaticamente la relativa posizione nel warehouse. Si tratta di una posizione di S3 univoca in cui è possibile leggere e scrivere oggetti associati alla tabella. Nell'esempio seguente viene illustrato il formato di una posizione del warehouse:

s3://63a8e430-6e0b-46f5-k833abtwr6s8tmtsycedn8s4yc3xhuse1b--table-s3

Il nome della risorsa Amazon (ARN) per le tabelle ha il seguente formato:

arn:aws:s3tables:Region:OwnerAccountID:bucket/bucket-name/table/tableID

Per impostazione predefinita, puoi creare fino a 10.000 tabelle in un bucket da tavolo. Per richiedere un aumento della quota per i bucket di tabelle o le tabelle, contattare Supporto.

Puoi creare una tabella utilizzando l'API REST di Amazon S3, l' AWS SDK o i motori di AWS CLI query integrati.

Per ulteriori informazioni sui nomi di tabella validi, consulta Regole di denominazione per tabelle e spazi dei nomi.

Prerequisiti per la creazione di tabelle

Per creare una tabella, devi prima fare quanto segue:

Questo esempio mostra come creare una tabella con uno schema utilizzando AWS CLI e specificando i metadati della tabella con JSON. Per utilizzare questo esempio, sostituiscili user input placeholders con le tue informazioni.

aws s3tables create-table --cli-input-json file://mytabledefinition.json

mytabledefinition.json:

{ "tableBucketARN": "arn:aws:s3tables:us-east-1:111122223333:bucket/amzn-s3-demo-table-bucket", "namespace": "your_namespace", "name": "example_table", "format": "ICEBERG", "metadata": { "iceberg": { "schema": { "fields": [ {"name": "id", "type": "int","required": true}, {"name": "name", "type": "string"}, {"name": "value", "type": "int"} ] } } } }

Questo esempio mostra come creare una tabella con uno schema utilizzando AWS CLI e specificando i metadati della tabella con JSON. Per utilizzare questo esempio, sostituiscili user input placeholders con le tue informazioni.

aws s3tables create-table --cli-input-json file://mytabledefinition.json

mytabledefinition.json:

{ "tableBucketARN": "arn:aws:s3tables:us-east-1:111122223333:bucket/amzn-s3-demo-table-bucket", "namespace": "your_namespace", "name": "example_table", "format": "ICEBERG", "metadata": { "iceberg": { "schema": { "fields": [ {"name": "id", "type": "int","required": true}, {"name": "name", "type": "string"}, {"name": "value", "type": "int"} ] } } } }

Puoi creare una tabella in un motore di query supportato collegato ai bucket di tabella Amazon S3, ad esempio in un Apache Spark sessione su Amazon EMR.

Questo esempio mostra come creare una tabella con Spark utilizzando CREATE istruzioni e aggiungendo dati di tabella utilizzando INSERT o leggendo i dati da un file esistente. Per utilizzare questo comando, sostituisci user input placeholders con le tue informazioni.

spark.sql( " CREATE TABLE IF NOT EXISTS s3tablesbucket.example_namespace.`example_table` ( id INT, name STRING, value INT ) USING iceberg " )

Dopo aver creato la tabella, puoi caricare i dati nella tabella. Scegli tra i seguenti metodi:

  • Aggiungere dati nella tabella utilizzando il comando INSERT.

    spark.sql( """ INSERT INTO s3tablesbucket.my_namespace.my_table VALUES (1, 'ABC', 100), (2, 'XYZ', 200) """)
  • Caricare un file di dati esistente.

    1. Leggere i dati in Spark.

      val data_file_location = "Path such as S3 URI to data file" val data_file = spark.read.parquet(data_file_location)
    2. Scrivere i dati in una tabella Iceberg.

      data_file.writeTo("s3tablesbucket.my_namespace.my_table").using("Iceberg").tableProperty ("format-version", "2").createOrReplace()

Puoi creare una tabella in un motore di query supportato collegato ai bucket di tabella Amazon S3, ad esempio in un Apache Spark sessione su Amazon EMR.

Questo esempio mostra come creare una tabella con Spark utilizzando CREATE istruzioni e aggiungendo dati di tabella utilizzando INSERT o leggendo i dati da un file esistente. Per utilizzare questo comando, sostituisci user input placeholders con le tue informazioni.

spark.sql( " CREATE TABLE IF NOT EXISTS s3tablesbucket.example_namespace.`example_table` ( id INT, name STRING, value INT ) USING iceberg " )

Dopo aver creato la tabella, puoi caricare i dati nella tabella. Scegli tra i seguenti metodi:

  • Aggiungere dati nella tabella utilizzando il comando INSERT.

    spark.sql( """ INSERT INTO s3tablesbucket.my_namespace.my_table VALUES (1, 'ABC', 100), (2, 'XYZ', 200) """)
  • Caricare un file di dati esistente.

    1. Leggere i dati in Spark.

      val data_file_location = "Path such as S3 URI to data file" val data_file = spark.read.parquet(data_file_location)
    2. Scrivere i dati in una tabella Iceberg.

      data_file.writeTo("s3tablesbucket.my_namespace.my_table").using("Iceberg").tableProperty ("format-version", "2").createOrReplace()
PrivacyCondizioni del sitoPreferenze cookie
© 2025, Amazon Web Services, Inc. o società affiliate. Tutti i diritti riservati.