

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Migrasi AWS Glue untuk pekerjaan Spark ke versi 5.1 AWS Glue
<a name="migrating-version-51"></a>

Topik ini menjelaskan perubahan antara AWS Glue versi 0.9, 1.0, 2.0, 3.0, 4.0 dan 5.0 untuk memungkinkan Anda memigrasikan aplikasi Spark dan pekerjaan ETL ke 5.1. AWS Glue Ini juga menjelaskan fitur di AWS Glue 5.1 dan keuntungan menggunakannya. 

Untuk menggunakan fitur ini dengan pekerjaan AWS Glue ETL Anda, pilih **5.1** `Glue version` saat membuat pekerjaan Anda.

**Topics**
+ [Fitur baru](#migrating-version-51-features)
+ [Tindakan untuk bermigrasi ke 5.1 AWS Glue](#migrating-version-51-actions)
+ [Daftar periksa migrasi](#migrating-version-51-checklist)
+ [Migrasi dari AWS Glue 5.0 ke AWS Glue 5.1](#migrating-version-51-from-50)
+ [Migrasi dari AWS Glue Versi Lama ke 5.1 AWS Glue](#migrating-older-versions-to-51)
+ [Konektor dan migrasi driver JDBC untuk 5.1 AWS Glue](#migrating-version-51-connector-driver-migration)

## Fitur baru
<a name="migrating-version-51-features"></a>

Bagian ini menjelaskan fitur dan keunggulan baru AWS Glue versi 5.1.
+ Pembaruan Apache Spark dari 3.5.4 di AWS Glue 5.0 ke 3.5.6 di 5.1. AWS Glue 
+ Format Tabel Terbuka (OTF) diperbarui ke Hudi 1.0.2, Iceberg 1.10.0, dan Delta Lake 3.3.2
+ **Iceberg Materialized Views** - Buat dan kelola Iceberg Materialized Views (MV). Untuk informasi lebih lanjut, lihat [posting blog](https://aws.amazon.com/blogs/big-data/introducing-apache-iceberg-materialized-views-in-aws-glue-data-catalog/) 
+ **Iceberg format versi 3.0** - Memperluas tipe data dan struktur metadata yang ada untuk menambahkan kemampuan baru. Untuk informasi lebih lanjut, lihat Spesifikasi [Tabel Gunung Es](https://iceberg.apache.org/spec/). 
+ **Akses Tabel Penuh Hudi - Kontrol Akses** Tabel Penuh (FTA) untuk Apache Hudi di Apache Spark berdasarkan kebijakan Anda yang ditentukan dalam. AWS Lake Formation Fitur ini memungkinkan operasi baca dan tulis dari pekerjaan AWS Glue ETL Anda pada tabel AWS Lake Formation terdaftar ketika peran pekerjaan memiliki akses tabel penuh.
+ **Dukungan kontrol akses halus (FGAC) asli Spark menggunakan AWS Lake Formation- DDL/DML operasi (seperti CREATE, ALTER, DELETE, DROP)** dengan kontrol akses berbutir halus untuk tabel Apache Hive, Apache Iceberg, dan Delta Lake yang terdaftar di. AWS Lake Formation
+ **Konteks audit untuk pekerjaan Spark** - Konteks audit untuk pekerjaan AWS Glue ETL akan tersedia untuk AWS Glue dan panggilan AWS Lake Formation API di AWS CloudTrail log.

**Masalah dan Keterbatasan yang Diketahui**  
Perhatikan masalah dan batasan yang diketahui berikut ini:
+ Dukungan terbatas untuk klausa tampilan SQL untuk pembuatan tampilan terwujud, penulisan ulang kueri, dan penyegaran tambahan. Rincian lebih lanjut dapat ditemukan di halaman dokumentasi fitur [Iceberg Materialized Views](https://docs.aws.amazon.com/lake-formation/latest/dg/materialized-views.html#materialized-views-considerations-limitations) 
+ **Hudi FTA menulis** require using HoodieCredentialedHadoopStorage for credential vending selama eksekusi pekerjaan. Atur konfigurasi berikut saat menjalankan pekerjaan Hudi:

  `hoodie.storage.class=org.apache.spark.sql.hudi.storage.HoodieCredentialedHadoopStorage` 
+ Dukungan penulisan Hudi FTA hanya berfungsi dengan konfigurasi Hudi default. Pengaturan Hudi khusus atau non-default mungkin tidak sepenuhnya didukung dan dapat mengakibatkan perilaku yang tidak terduga. Pengelompokan untuk tabel Hudi Merge-On-Read (MOR) juga tidak didukung dalam mode tulis FTA.

**Melanggar perubahan**  
Perhatikan perubahan yang melanggar berikut:
+  Sistem file S3A telah menggantikan EMRFS sebagai konektor S3 default. Untuk informasi tentang cara bermigrasi, lihat[Migrasi dari AWS Glue 5.0 ke AWS Glue 5.1](#migrating-version-51-from-50). 

## Tindakan untuk bermigrasi ke 5.1 AWS Glue
<a name="migrating-version-51-actions"></a>

Untuk pekerjaan yang ada, ubah `Glue version` dari versi sebelumnya ke `Glue 5.1` dalam konfigurasi pekerjaan.
+ Di AWS Glue Studio, pilih `Glue 5.1 - Supports Spark 3.5.6, Scala 2, Python 3` di`Glue version`.
+ Di API, pilih `GlueVersion` parameter **5.1** dalam operasi [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)API.

Untuk pekerjaan baru, pilih `Glue 5.1` kapan Anda membuat pekerjaan.
+ Di konsol, pilih `Spark 3.5.6, Python 3 (Glue Version 5.1) or Spark 3.5.6, Scala 2 (Glue Version 5.1)` di`Glue version`.
+ Di AWS Glue Studio, pilih `Glue 5.1 - Supports Spark 3.5.6, Scala 2, Python 3` di`Glue version`.
+ Di API, pilih `GlueVersion` parameter **5.1** dalam operasi [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)API.

Untuk melihat log peristiwa Spark AWS Glue 5.1 yang berasal dari AWS Glue 2.0 atau sebelumnya, [luncurkan server riwayat Spark yang ditingkatkan untuk penggunaan AWS GlueCloudFormation 5.1](https://docs.aws.amazon.com/glue/latest/dg/monitor-spark-ui-history.html) atau Docker.

## Daftar periksa migrasi
<a name="migrating-version-51-checklist"></a>

Tinjau daftar periksa ini untuk migrasi:
+ [Python] Perbarui referensi boto dari 1,34 menjadi 1,40.

## Migrasi dari AWS Glue 5.0 ke AWS Glue 5.1
<a name="migrating-version-51-from-50"></a>

Semua parameter pekerjaan yang ada dan fitur utama yang ada di AWS Glue 5.0 akan ada di AWS Glue 5.1. Perhatikan perubahan berikut saat bermigrasi:
+ Dalam AWS Glue 5.1, sistem file S3A telah menggantikan EMRFS sebagai konektor S3 default. Jika keduanya `spark.hadoop.fs.s3a.endpoint` dan tidak `spark.hadoop.fs.s3a.endpoint.region` disetel, wilayah default yang digunakan oleh S3A adalah. `us-east-2` Hal ini dapat menyebabkan masalah, seperti kesalahan batas waktu unggah S3, terutama untuk pekerjaan VPC. Untuk mengurangi masalah yang disebabkan oleh perubahan ini, atur konfigurasi `spark.hadoop.fs.s3a.endpoint.region` Spark saat menggunakan sistem file S3A di 5.1. AWS Glue 
+ Untuk terus menggunakan EMRFS alih-alih S3A, atur konfigurasi percikan berikut:

  ```
      --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
  ```

Lihat dokumentasi migrasi Spark:
+ [Panduan Migrasi: Spark Core](https://spark.apache.org/docs/3.5.6/core-migration-guide.html)
+ [Panduan Migrasi: SQL, Datasets dan DataFrame](https://spark.apache.org/docs/3.5.6/sql-migration-guide.html)
+ [Panduan Migrasi: Streaming Terstruktur](https://spark.apache.org/docs/3.5.6/ss-migration-guide.html)
+ [Meningkatkan PySpark](https://spark.apache.org/docs/3.5.6/api/python/migration_guide/pyspark_upgrade.html)

## Migrasi dari AWS Glue Versi Lama ke 5.1 AWS Glue
<a name="migrating-older-versions-to-51"></a>
+ Untuk langkah migrasi yang terkait dengan AWS Glue 4.0 ke AWS Glue 5.0, lihat [Migrasi dari AWS Glue 4.0 ke AWS Glue 5.0](https://docs.aws.amazon.com/glue/latest/dg/migrating-version-50.html#migrating-version-50-from-40).
+ Untuk langkah migrasi yang terkait dengan AWS Glue 3.0 ke AWS Glue 5.0, lihat [Memigrasi dari AWS Glue 3.0 ke AWS Glue 5.0](https://docs.aws.amazon.com/glue/latest/dg/migrating-version-50.html#migrating-version-50-from-30).
+ Untuk langkah migrasi yang terkait dengan AWS Glue 2.0 ke AWS Glue 5.0 dan daftar perbedaan migrasi antara AWS Glue versi 2.0 dan 4.0, lihat [Migrasi dari AWS Glue 2.0 ke AWS Glue 5.0](https://docs.aws.amazon.com/glue/latest/dg/migrating-version-50.html#migrating-version-50-from-20). 

## Konektor dan migrasi driver JDBC untuk 5.1 AWS Glue
<a name="migrating-version-51-connector-driver-migration"></a>

Untuk versi JDBC dan konektor data lake yang ditingkatkan, lihat:
+ [Lampiran B: Peningkatan driver JDBC](#migrating-version-51-appendix-jdbc-driver)
+ [Lampiran C: Peningkatan konektor](#migrating-version-51-appendix-connector)
+ [Lampiran D: Upgrade format tabel terbuka](#migrating-version-51-appendix-open-table-formats)

Perubahan berikut berlaku untuk upgrade versi OTF yang diidentifikasi [Lampiran D: Upgrade format tabel terbuka](#migrating-version-51-appendix-open-table-formats) untuk AWS Glue 5.1.

**Apache Hudi**  
Perhatikan perubahan berikut:
+ Support akses baca dan tulis FTA pada tabel terdaftar Lake Formation.

**Gunung Es Apache**  
Perhatikan perubahan berikut:
+ Dukungan format Iceberg versi 3. Fitur-fitur berikut didukung:
  + Transformasi multi-argumen untuk partisi dan penyortiran.
  + Pelacakan Garis Silsilah Baris.
  + Vektor penghapusan. Pelajari lebih lanjut di [posting blog](https://aws.amazon.com/blogs/big-data/unlock-the-power-of-apache-iceberg-v3-deletion-vectors-on-amazon-emr/) 
  + Kunci enkripsi tabel.
  + Dukungan nilai default untuk kolom.
+ Support Spark-native FGAC menulis pada tabel terdaftar. AWS Lake Formation 
+ Athena SQL kompatibilitas - Tidak dapat membaca tabel Iceberg V3 yang dibuat oleh EMR Spark karena kesalahan: `GENERIC_INTERNAL_ERROR: Cannot read unsupported version 3`

**Danau Delta**  
Perhatikan perubahan berikut:
+ Support akses baca dan tulis FTA pada tabel terdaftar Lake Formation.

### Lampiran A: Peningkatan ketergantungan penting
<a name="migrating-version-51-appendix-dependencies"></a>

Berikut ini adalah peningkatan ketergantungan:


| Dependensi | Versi dalam AWS Glue 5.1 | Versi dalam AWS Glue 5.0 | Versi dalam AWS Glue 4.0 | Versi dalam AWS Glue 3.0 | Versi dalam AWS Glue 2.0 | Versi dalam 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 | 
| Skala | 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 | 
| JSON4 | 3.7.0-M11 | 3.7.0-M11 | 3.7.0-M11 | 3.6.6 | 3.5.x | 3.5.x | 
| Panah | 12.0.1 | 12.0.1 | 7.0.0 | 2.0.0 | 0.10.0 | 0.10.0 | 
| AWS Glue Klien Katalog Data | 4.9.0 | 4.5.0 | 3.7.0 | 3.0.0 | 1.10.0 | N/A | 
| AWS SDK for Java | 2.35,5 | 2.29.52 | 1.12 | 1.12 |  |  | 
| Python | 3.11 | 3.11 | 3.10 | 3.7 | 2.7 & 3.6 | 2.7 & 3.6 | 
| Boto | 1.40.61 | 1.34.131 | 1.26 | 1.18 | 1.12 | N/A | 
| Konektor EMR DynamoDB | 5.7.0 | 5.6.0 | 4.16.0 |  |  |  | 

### Lampiran B: Peningkatan driver JDBC
<a name="migrating-version-51-appendix-jdbc-driver"></a>

Berikut ini adalah upgrade driver JDBC:


| Driver | Versi driver JDBC di 5.1 AWS Glue  | Versi driver JDBC di 5.0 AWS Glue  | Versi driver JDBC di 4.0 AWS Glue  | Versi driver JDBC di 3.0 AWS Glue  | Versi driver JDBC di versi sebelumnya AWS Glue  | 
| --- | --- | --- | --- | --- | --- | 
| MySQL | 8.0.33 | 8.0.33 | 8.0.23 | 8.0.23 | 5.1 | 
| Microsoft SQL Server | 10.2.0 | 10.2.0 | 9.4.0 | 7.0.0 | 6.1.0 | 
| Database Oracle | 23.3.0.23.09 | 23.3.0.23.09 | 21.7 | 21.1 | 11.2 | 
| PostgreSQL | 42.7.3 | 42.7.3 | 42.3.6 | 42.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 |  |  | 

### Lampiran C: Peningkatan konektor
<a name="migrating-version-51-appendix-connector"></a>

Berikut ini adalah upgrade konektor:


| Driver | Versi konektor di AWS Glue 5.1 | Versi konektor di AWS Glue 5.0 | Versi konektor di AWS Glue 4.0 | Versi konektor di AWS Glue 3.0 | 
| --- | --- | --- | --- | --- | 
| Konektor EMR DynamoDB | 5.7.0 | 5.6.0 | 4.16.0 |  | 
| Amazon Redshift | 6.4.2 | 6.4.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 | 
| Kepingan salju | 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 | 4.22.0 |  | 
| AzureSQL | 1.3.0 | 1.3.0 | 1.3.0 |  | 
| Vertica | 3.3.5 | 3.3.5 | 3.3.5 |  | 

### Lampiran D: Upgrade format tabel terbuka
<a name="migrating-version-51-appendix-open-table-formats"></a>

Berikut ini adalah upgrade format tabel terbuka:


| OTF | Versi konektor di AWS Glue 5.1 | Versi konektor di AWS Glue 5.0 | Versi konektor di AWS Glue 4.0 | Versi konektor di AWS Glue 3.0 | 
| --- | --- | --- | --- | --- | 
| Hudi | 1.0.2 | 0.15.0 | 0.12.1 | 0.10.1 | 
| Danau Delta | 3.3.2 | 3.3.0 | 2.1.0 | 1.0.0 | 
| Gunung es | 1.10.0 | 1.7.1 | 1.0.0 | 0.13.1 | 