

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

# Migrazione AWS Glue per i job Spark alla versione 5.1 AWS Glue
<a name="migrating-version-51"></a>

Questo argomento descrive le modifiche tra AWS Glue le versioni 0.9, 1.0, 2.0, 3.0, 4.0 e 5.0 per consentire la migrazione delle applicazioni Spark e dei lavori ETL alla 5.1. AWS Glue Descrive inoltre le funzionalità della AWS Glue versione 5.1 e i vantaggi del suo utilizzo. 

Per utilizzare questa funzionalità con i tuoi lavori AWS Glue ETL, scegli `Glue version` quando **5.1** crei i tuoi lavori.

**Topics**
+ [Nuove funzionalità](#migrating-version-51-features)
+ [Azioni per migrare alla versione 5.1 AWS Glue](#migrating-version-51-actions)
+ [Elenco di controllo della migrazione](#migrating-version-51-checklist)
+ [Migrazione da 5.0 a 5.1 AWS Glue AWS Glue](#migrating-version-51-from-50)
+ [Migrazione dalle AWS Glue versioni precedenti alla 5.1 AWS Glue](#migrating-older-versions-to-51)
+ [Migrazione di connettori e driver JDBC per 5.1 AWS Glue](#migrating-version-51-connector-driver-migration)

## Nuove funzionalità
<a name="migrating-version-51-features"></a>

Questa sezione descrive le nuove funzionalità e i vantaggi della AWS Glue versione 5.1.
+ Aggiornamento di Apache Spark dalla versione 3.5.4 della AWS Glue versione 5.0 alla versione 3.5.6 della versione 5.1. AWS Glue 
+ Open Table Formats (OTF) aggiornati a Hudi 1.0.2, Iceberg 1.10.0 e Delta Lake 3.3.2
+ **Iceberg Materialized Views - Crea e gestisci Iceberg Materialized Views** (MV). [Per ulteriori informazioni, consulta il post del blog](https://aws.amazon.com/blogs/big-data/introducing-apache-iceberg-materialized-views-in-aws-glue-data-catalog/) 
+ **Formato Iceberg versione 3.0**: estende i tipi di dati e le strutture di metadati esistenti per aggiungere nuove funzionalità. Per ulteriori informazioni, consulta [Iceberg](https://iceberg.apache.org/spec/) Table Spec. 
+ **Hudi Full Table Access** - Controllo completo dell'accesso alla tabella (FTA) per Apache Hudi in Apache Spark in base alle politiche definite in. AWS Lake Formation Questa funzionalità consente le operazioni di lettura e scrittura dai lavori AWS Glue ETL su tabelle AWS Lake Formation registrate quando il ruolo lavorativo ha accesso completo alla tabella.
+ **Supporto nativo di Spark per il controllo granulare degli accessi (FGAC) tramite AWS Lake Formation** DDL/DML operazioni (come CREATE, ALTER, DELETE, DROP) con controllo granulare degli accessi per le tabelle Apache Hive, Apache Iceberg e Delta Lake registrate in. AWS Lake Formation
+ **Contesto di controllo per i lavori Spark: il contesto di controllo per i lavori** AWS Glue ETL sarà disponibile per le chiamate API nei log. AWS Glue AWS Lake Formation AWS CloudTrail 

**Problemi noti e limitazioni**  
Tieni presente i seguenti problemi e limitazioni noti:
+ Supporto limitato per la clausola View SQL per la creazione di viste materializzate, la riscrittura delle query e l'aggiornamento incrementale. Maggiori dettagli sono disponibili nella pagina di documentazione della [funzionalità Iceberg](https://docs.aws.amazon.com/lake-formation/latest/dg/materialized-views.html#materialized-views-considerations-limitations) Materialized Views 
+ Le **scritture Hudi FTA** richiedono l'utilizzo HoodieCredentialedHadoopStorage per la vendita di credenziali durante l'esecuzione del lavoro. Imposta la seguente configurazione durante l'esecuzione dei job Hudi:

  `hoodie.storage.class=org.apache.spark.sql.hudi.storage.HoodieCredentialedHadoopStorage` 
+ Il supporto di scrittura Hudi FTA funziona solo con le configurazioni Hudi predefinite. Le impostazioni Hudi personalizzate o non predefinite potrebbero non essere completamente supportate e potrebbero causare un comportamento imprevisto. Inoltre, il clustering for Hudi Merge-On-Read (MOR) non è supportato nella modalità di scrittura FTA.

**Modifiche importanti**  
Notare le seguenti modifiche speciali:
+  Il file system S3A ha sostituito EMRFS come connettore S3 predefinito. Per informazioni su come effettuare la migrazione, consulta. [Migrazione da 5.0 a 5.1 AWS Glue AWS Glue](#migrating-version-51-from-50) 

## Azioni per migrare alla versione 5.1 AWS Glue
<a name="migrating-version-51-actions"></a>

Per i processi esistenti, modifica la `Glue version` dalla versione precedente a `Glue 5.1` nella configurazione del processo.
+ In AWS Glue Studio, scegli `Glue 5.1 - Supports Spark 3.5.6, Scala 2, Python 3` in`Glue version`.
+ Nell'API, scegli **5.1** nel parametro `GlueVersion` nell'operazione API [https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-jobs-job.html#aws-glue-api-jobs-job-UpdateJob](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-jobs-job.html#aws-glue-api-jobs-job-UpdateJob).

Per i nuovi processi, scegli `Glue 5.1` al momento della creazione.
+ Nella console, scegli `Spark 3.5.6, Python 3 (Glue Version 5.1) or Spark 3.5.6, Scala 2 (Glue Version 5.1)` in `Glue version`.
+ In AWS Glue Studio, scegli `Glue 5.1 - Supports Spark 3.5.6, Scala 2, Python 3` in`Glue version`.
+ Nell'API, scegli **5.1** nel parametro `GlueVersion` nell'operazione API [https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-jobs-job.html#aws-glue-api-jobs-job-CreateJob](https://docs.aws.amazon.com/glue/latest/dg/aws-glue-api-jobs-job.html#aws-glue-api-jobs-job-CreateJob).

Per visualizzare i registri degli eventi di Spark della AWS Glue versione 5.1 della versione AWS Glue 2.0 o precedente, [avvia un server di cronologia Spark aggiornato per AWS Glue 5.1](https://docs.aws.amazon.com/glue/latest/dg/monitor-spark-ui-history.html) utilizzando o Docker. CloudFormation 

## Elenco di controllo della migrazione
<a name="migrating-version-51-checklist"></a>

Rivedi questo elenco di controllo per la migrazione:
+ [Python] Aggiorna i riferimenti di avvio da 1.34 a 1.40.

## Migrazione da 5.0 a 5.1 AWS Glue AWS Glue
<a name="migrating-version-51-from-50"></a>

Tutti i parametri di lavoro e le funzionalità principali esistenti in AWS Glue 5.0 esisteranno nella versione AWS Glue 5.1. Nota le seguenti modifiche durante la migrazione:
+ Nella AWS Glue versione 5.1, il filesystem S3A ha sostituito EMRFS come connettore S3 predefinito. Se entrambi `spark.hadoop.fs.s3a.endpoint` e 3 non `spark.hadoop.fs.s3a.endpoint.region` sono impostati, la regione predefinita utilizzata da S3A è. `us-east-2` Ciò può causare problemi, come errori di timeout di caricamento di S3, in particolare per i processi VPC. Per mitigare i problemi causati da questa modifica, imposta la configurazione `spark.hadoop.fs.s3a.endpoint.region` Spark quando usi il file system S3A nella versione 5.1. AWS Glue 
+ Per continuare a utilizzare EMRFS anziché S3A, imposta le seguenti configurazioni spark:

  ```
      --conf spark.hadoop.fs.s3.impl=com.amazon.ws.emr.hadoop.fs.EmrFileSystem
      --conf spark.hadoop.fs.s3n.impl=com.amazon.ws.emr.hadoop.fs.EmrFileSystem
      --conf spark.hadoop.fs.AbstractFileSystem.s3.impl=org.apache.hadoop.fs.s3.EMRFSDelegate
  ```

Consulta la documentazione relativa alla migrazione di Spark:
+ [Guida alla migrazione: Spark Core](https://spark.apache.org/docs/3.5.6/core-migration-guide.html)
+ [Guida alla migrazione: SQL, set di dati e DataFrame](https://spark.apache.org/docs/3.5.6/sql-migration-guide.html)
+ [Guida alla migrazione: streaming strutturato](https://spark.apache.org/docs/3.5.6/ss-migration-guide.html)
+ [Aggiornamento PySpark](https://spark.apache.org/docs/3.5.6/api/python/migration_guide/pyspark_upgrade.html)

## Migrazione dalle AWS Glue versioni precedenti alla 5.1 AWS Glue
<a name="migrating-older-versions-to-51"></a>
+ Per i passaggi di migrazione relativi alla versione AWS Glue 4.0 alla AWS Glue 5.0, consulta [Migrazione da AWS Glue 4.0 a AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/migrating-version-50.html#migrating-version-50-from-40) 5.0.
+ Per le fasi di migrazione relative alla AWS Glue versione 3.0 alla AWS Glue 5.0, consulta [Migrazione da AWS Glue 3.0 a AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/migrating-version-50.html#migrating-version-50-from-30) 5.0.
+ Per le fasi di migrazione relative alla versione AWS Glue 2.0 alla AWS Glue 5.0 e un elenco delle differenze di migrazione tra la AWS Glue versione 2.0 e 4.0, consulta [Migrazione dalla AWS Glue 2.0 alla AWS Glue](https://docs.aws.amazon.com/glue/latest/dg/migrating-version-50.html#migrating-version-50-from-20) 5.0. 

## Migrazione di connettori e driver JDBC per 5.1 AWS Glue
<a name="migrating-version-51-connector-driver-migration"></a>

Per le versioni dei connettori JDBC e data lake che sono state aggiornate, consulta:
+ [Appendice B: aggiornamenti dei driver JDBC](#migrating-version-51-appendix-jdbc-driver)
+ [Appendice C: Aggiornamenti dei connettori](#migrating-version-51-appendix-connector)
+ [Appendice D: Aggiornamenti di formato a tabella aperta](#migrating-version-51-appendix-open-table-formats)

Le seguenti modifiche si applicano agli aggiornamenti della versione OTF identificati nella [Appendice D: Aggiornamenti di formato a tabella aperta](#migrating-version-51-appendix-open-table-formats) versione 5.1. AWS Glue 

**Apache Hudi**  
Nota le seguenti modifiche:
+ Supporta l'accesso in lettura e scrittura FTA sulle tabelle registrate di Lake Formation.

**Apache Iceberg**  
Nota le seguenti modifiche:
+ Supporta la versione 3 del formato Iceberg. Sono supportate le seguenti funzionalità:
  + Trasformazioni multiargomento per il partizionamento e l'ordinamento.
  + Tracciamento del lignaggio delle righe.
  + Vettori di cancellazione. Scopri di più nel [post del blog](https://aws.amazon.com/blogs/big-data/unlock-the-power-of-apache-iceberg-v3-deletion-vectors-on-amazon-emr/) 
  + Chiavi di crittografia delle tabelle.
  + Supporto dei valori predefiniti per le colonne.
+ Supporta le scritture FGAC native di Spark su tabelle registrate. AWS Lake Formation 
+ Compatibilità con Athena SQL - Impossibile leggere le tabelle Iceberg V3 create da EMR Spark a causa di un errore: `GENERIC_INTERNAL_ERROR: Cannot read unsupported version 3`

**Delta Lake**  
Nota le seguenti modifiche:
+ Supporta l'accesso in lettura e scrittura FTA sulle tabelle registrate di Lake Formation.

### Appendice A: Aggiornamenti importanti delle dipendenze
<a name="migrating-version-51-appendix-dependencies"></a>

Di seguito sono riportati gli aggiornamenti delle dipendenze:


| Dipendenza | Versione in 5.1 AWS Glue  | Versione in AWS Glue 5.0 | Versione in AWS Glue 4.0 | Versione in AWS Glue 3.0 | Versione in AWS Glue 2.0 | Versione in AWS Glue 1.0 | 
| --- | --- | --- | --- | --- | --- | --- | 
| Java | 17 | 17 | 8 | 8 | 8 | 8 | 
| Spark | 3.5.6 | 3,5,4 | 3.3.0-amzn-1 | 3.1.1-amzn-0 | 2.4.3 | 2.4.3 | 
| Hadoop | 3.4.1 | 3.4.1 | 3.3.3-amzn-0 | 3.2.1-amzn-3 | 2.8.5-amzn-5 | 2.8.5-amzn-1 | 
| Scala | 2,12,18 | 2,12,18 | 2,12 | 2,12 | 2.11 | 2.11 | 
| Jackson | 2,15,2 | 2,15,2 | 2,12 | 2,12 | 2.11 | 2.11 | 
| Hive | 2.3.9-amzn-4 | 2.3.9-amzn-4 | 2.3.9-amzn-2 | 2.3.7-amzn-4 | 1.2 | 1.2 | 
| EMRFS | 2,73,0 | 2,69,0 | 2,54,0 | 2,46,0 | 2.38.0 | 2.30.0 | 
| Json4s | 3.7.0-M11 | 3.7.0-M11 | 3.7.0-M11 | 36.6 | 3.5.x | 3.5.x | 
| Arrow | 120,1 | 12,0.1 | 7,0,0 | 2.0.0 | 0.10.0 | 0.10.0 | 
| AWS Glue Client Data Catalog | 4.9.0 | 4.5.0 | 3.7.0 | 3.0.0 | 1.10.0 | N/D | 
| AWS SDK per Java | 2.35.5 | 2,29,52 | 1.12 | 1.12 |  |  | 
| Python | 3,11 | 3,11 | 3,10 | 3.7 | 2.7 e 3.6 | 2.7 e 3.6 | 
| Boto | 1,40,61 | 1,34,131 | 1,26 | 1,18 | 1.12 | N/D | 
| Connettore EMR DynamoDB | 5.7.0 | 5.6.0 | 4,16,0 |  |  |  | 

### Appendice B: aggiornamenti dei driver JDBC
<a name="migrating-version-51-appendix-jdbc-driver"></a>

Di seguito sono riportati gli aggiornamenti dei driver JDBC:


| Driver | Versione del driver JDBC in 5.1 AWS Glue  | Versione del driver JDBC nella versione 5.0 AWS Glue  | Versione del driver JDBC nella versione 4.0 AWS Glue  | Versione del driver JDBC nella versione 3.0 AWS Glue  | Versione del driver JDBC nelle versioni precedenti AWS Glue  | 
| --- | --- | --- | --- | --- | --- | 
| MySQL | 8.0.33 | 8,0,33 | 8.0.23 | 8.0.23 | 5.1 | 
| Microsoft SQL Server | 102,0 | 10.2,0 | 9,40 | 7,0,0 | 6.1.0 | 
| Database Oracle | 23,3,023,09 | 23,3,023,09 | 21,7 | 21,1 | 11.2 | 
| PostgreSQL | 42,7,3 | 42,7,3 | 42,36 | 4,2,18 | 42,1,0 | 
| Amazon Redshift |  redshift-jdbc42-2.1.0.29  |  redshift-jdbc42-2.1.0.29  |  redshift-jdbc42-2.1.0.16  |  redshift-jdbc41-1.2.12.1017   |  redshift-jdbc41-1.2.12.1017   | 
| SAP Hana | 2,20,17 | 2,20,17 | 2,17,12 |  |  | 
| Teradata | 20,00,00,33 | 20,00,00,33 | 20,00,00,06 |  |  | 

### Appendice C: Aggiornamenti dei connettori
<a name="migrating-version-51-appendix-connector"></a>

Di seguito sono riportati gli aggiornamenti dei connettori:


| Driver | Versione del connettore in 5.1 AWS Glue  | Versione del connettore in AWS Glue 5.0 | Versione del connettore in AWS Glue 4.0 | Versione del connettore in AWS Glue 3.0 | 
| --- | --- | --- | --- | --- | 
| Connettore EMR DynamoDB | 5.7.0 | 5.6.0 | 4.16.0 |  | 
| Amazon Redshift | 6.4.2 | 64,0 | 6.1.3 |  | 
| OpenSearch | 1.2.0 | 1.2.0 | 1.0.1 |  | 
| MongoDB | 10.3.0 | 10.3.0 | 10.0.4 | 3.0.0 | 
| Snowflake | 3.1.1 | 3.0.0 | 2.12.0 |  | 
| Google BigQuery | 0.32.2 | 0,32,2 | 0,32,2 |  | 
| AzureCosmos | 4,33,0 | 4,33,0 | 42,0 |  | 
| AzureSQL | 1.3.0 | 1.3.0 | 1.3.0 |  | 
| Vertica | 33,5 | 3.3.5 | 3.3.5 |  | 

### Appendice D: Aggiornamenti di formato a tabella aperta
<a name="migrating-version-51-appendix-open-table-formats"></a>

Di seguito sono riportati gli aggiornamenti di formato a tabella aperta:


| OTF | Versione del connettore in 5.1 AWS Glue  | Versione del connettore in AWS Glue 5.0 | Versione del connettore in AWS Glue 4.0 | Versione del connettore in AWS Glue 3.0 | 
| --- | --- | --- | --- | --- | 
| Hudi | 1.0.2 | 0.15.0 | 0.12.1 | 0,10,1 | 
| Delta Lake | 3.3.2 | 3.3.0 | 2.1.0 | 1.0.0 | 
| Iceberg | 1.10.0 | 1.7.1 | 1.0.0 | 0.13.1 | 