

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

# Utilizzo di Apache Iceberg con Amazon EMR su EKS
<a name="tutorial-iceberg"></a>

Il runtime JAR per Iceberg contiene le classi Iceberg necessarie per il supporto del runtime Spark. La procedura seguente mostra come avviare l'esecuzione di un job utilizzando il runtime Iceberg spark.

**Utilizzo di Apache Iceberg con Amazon EMR su applicazioni EKS**

1. Quando avvii un'esecuzione di processo per inviare un processo Spark nella configurazione dell'applicazione, includi il file JAR del runtime di Iceberg Spark:

   ```
   --job-driver '{"sparkSubmitJobDriver" : {"sparkSubmitParameters" : "--jars local:///usr/share/aws/iceberg/lib/iceberg-spark3-runtime.jar"}}'
   ```

1. Includi la configurazione aggiuntiva di Iceberg:

   ```
   --configuration-overrides '{
       "applicationConfiguration": [
       "classification" : "spark-defaults", 
       "properties" : {
           "spark.sql.catalog.dev.warehouse" : "s3://amzn-s3-demo-bucket/EXAMPLE-PREFIX/ ", 
           "spark.sql.extensions ":" org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions ", 
           "spark.sql.catalog.dev" : "org.apache.iceberg.spark.SparkCatalog",
           "spark.sql.catalog.dev.catalog-impl" : "org.apache.iceberg.aws.glue.GlueCatalog",
           "spark.sql.catalog.dev.io-impl": "org.apache.iceberg.aws.s3.S3FileIO"
           }
       ]
   }'
   ```

Per saperne di più sulle versioni di rilascio di Apache Iceberg per EMR, consulta la sezione [Iceberg release history](https://docs.aws.amazon.com/emr/latest/ReleaseGuide/Iceberg-release-history.html) (Cronologia delle versioni di Iceberg).

## Configurazioni delle sessioni Spark per l'integrazione del catalogo
<a name="iceberg-with-lake-formation-spark-catalog-integration-lf-eks"></a>

### Configurazioni delle sessioni Spark per l'integrazione del catalogo Iceberg AWS Glue
<a name="iceberg-with-lake-formation-spark-catalog-integration-lf-glue"></a>

Questo esempio mostra come integrare Iceberg con: Crawler di AWS Glue

```
spark-sql \
  --conf spark.sql.catalog.rms = org.apache.iceberg.spark.SparkCatalog \
  --conf spark.sql.catalog.rms.type = glue \
  --conf spark.sql.catalog.rms.glue.id = glue RMS catalog ID \
  --conf spark.sql.catalog.rms.glue.account-id = AWS account ID \
  
  --conf spark.sql.extensions=
    org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions
```

Di seguito è riportata una query di esempio:

```
SELECT * FROM rms.rmsdb.table1
```

### Configurazioni delle sessioni Spark per l'integrazione del catalogo Iceberg REST AWS Glue
<a name="iceberg-with-lake-formation-spark-catalog-integration-lf-rest"></a>

Questo esempio mostra come integrare Iceberg REST con: Crawler di AWS Glue

```
spark-sql \
  --conf spark.sql.catalog.rms = org.apache.iceberg.spark.SparkCatalog \
  --conf spark.sql.catalog.rms.type = rest \
  --conf spark.sql.catalog.rms.warehouse = glue RMS catalog ID \
  --conf spark.sql.catalog.rms.uri = glue endpoint URI/iceberg \
  --conf spark.sql.catalog.rms.rest.sigv4-enabled = true \
  --conf spark.sql.catalog.rms.rest.signing-name = glue \
  
  --conf spark.sql.extensions=
    org.apache.iceberg.spark.extensions.IcebergSparkSessionExtensions
```

Di seguito è riportata una query di esempio:

```
SELECT * FROM rms.rmsdb.table1
```

Questa configurazione funziona solo per Redshift Managed Storage. FGAC per Amazon S3 non è supportato.