Migrazione AWS Glue per i job Spark alla versione 5.1 AWS Glue - AWS Glue

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

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

Nuove funzionalità

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

  • 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 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. Questa funzionalità consente le operazioni di lettura e scrittura dai lavori AWS Glue ETL su tabelle registrate quando il ruolo lavorativo ha accesso completo alla tabella.

  • Supporto nativo di Spark per il controllo granulare degli accessi (FGAC) tramite 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.

  • Contesto di controllo per i lavori Spark: sarà disponibile il contesto di controllo per i lavori AWS Glue ETL con lavori abilitati e le chiamate API verranno registrate AWS Glue AWS Lake Formation

Problemi noti e limitazioni
  • 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 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:

Azioni per migrare alla versione 5.1 AWS Glue

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 inGlue version.

  • Nell'API, scegli 5.1 nel parametro GlueVersion nell'operazione API 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 inGlue version.

  • Nell'API, scegli 5.1 nel parametro GlueVersion nell'operazione API 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 utilizzando o Docker. CloudFormation

Elenco di controllo della migrazione

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 GlueAWS Glue

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:

Migrazione dalle AWS Glue versioni precedenti alla 5.1 AWS Glue

Migrazione di connettori e driver JDBC per 5.1 AWS Glue

Per le versioni dei connettori JDBC e data lake che sono state aggiornate, consulta:

Le seguenti modifiche si applicano agli aggiornamenti della versione OTF identificati nella Appendice D: Aggiornamenti di formato a tabella aperta 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

    • Chiavi di crittografia delle tabelle.

  • Supporta le scritture FGAC native di Spark su tabelle registrate.

  • 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

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

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

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

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