Wählen Sie Ihre Cookie-Einstellungen aus

Wir verwenden essentielle Cookies und ähnliche Tools, die für die Bereitstellung unserer Website und Services erforderlich sind. Wir verwenden Performance-Cookies, um anonyme Statistiken zu sammeln, damit wir verstehen können, wie Kunden unsere Website nutzen, und Verbesserungen vornehmen können. Essentielle Cookies können nicht deaktiviert werden, aber Sie können auf „Anpassen“ oder „Ablehnen“ klicken, um Performance-Cookies abzulehnen.

Wenn Sie damit einverstanden sind, verwenden AWS und zugelassene Drittanbieter auch Cookies, um nützliche Features der Website bereitzustellen, Ihre Präferenzen zu speichern und relevante Inhalte, einschließlich relevanter Werbung, anzuzeigen. Um alle nicht notwendigen Cookies zu akzeptieren oder abzulehnen, klicken Sie auf „Akzeptieren“ oder „Ablehnen“. Um detailliertere Entscheidungen zu treffen, klicken Sie auf „Anpassen“.

Migration AWS Glue für Spark-Jobs auf AWS Glue Version 5.0

Fokusmodus
Migration AWS Glue für Spark-Jobs auf AWS Glue Version 5.0 - AWS Glue

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

In diesem Thema werden die Änderungen zwischen den AWS Glue Versionen 0.9, 1.0, 2.0, 3.0 und 4.0 beschrieben, die es Ihnen ermöglichen, Ihre Spark-Anwendungen und ETL -Jobs auf AWS Glue 5.0 zu migrieren. Außerdem werden die Funktionen in AWS Glue 5.0 und die Vorteile seiner Verwendung beschrieben.

Um diese Funktion mit Ihren AWS Glue ETL Jobs zu verwenden, wählen Sie 5.0 Glue version bei der Erstellung Ihrer Jobs die Option aus.

Neue Features

In diesem Abschnitt werden die neuen Funktionen und Vorteile von AWS Glue Version 5.0 beschrieben.

  • Apache Spark-Update von 3.3.0 in AWS Glue 4.0 auf 3.5.2 in AWS Glue 5.0. Siehe Wesentliche Verbesserungen von Spark 3.3.0 auf Spark 3.5.2.

  • Spark-native, feinkörnative Zugriffskontrolle (FGAC) mithilfe von Lake Formation. Weitere Informationen finden Sie unter Verwenden von with AWS Lake Formation für eine differenzierte AWS Glue Zugriffskontrolle.

    Beachten Sie die folgenden Überlegungen oder Einschränkungen für Spark-native: FGAC

    • Derzeit werden Datenschreibvorgänge nicht unterstützt

    • Das Schreiben in Iceberg GlueContext mithilfe von Lake Formation erfordert stattdessen die Verwendung der IAM Zugriffskontrolle

  • Support für Amazon S3 Access Grants als skalierbare Zugriffskontrolllösung für Ihre Amazon S3 S3-Daten von AWS Glue. Weitere Informationen finden Sie unter Verwenden von Amazon S3 Access Grants mit AWS Glue.

  • Open Table Formats (OTF) wurde auf Hudi 0.15.0, Iceberg 1.6.1 und Delta Lake 3.2.1 aktualisiert

  • Unterstützung für Amazon SageMaker Unified Studio.

  • Amazon SageMaker Lakehouse und Integration der Datenabstraktion. Weitere Informationen finden Sie unter Abfragen von Metastore-Datenkatalogen von AWS Glue ETL.

  • Support für die Installation zusätzlicher Python-Bibliotheken mitrequirements.txt. Weitere Informationen finden Sie unter Installation zusätzlicher Python-Bibliotheken in AWS Glue 5.0 mit requirements.txt.

  • AWS Glue 5.0 unterstützt Data Lineage in Amazon DataZone. Sie können so konfigurieren AWS Glue , dass während der Ausführung von Spark-Jobs automatisch Herkunftsinformationen gesammelt und die Herkunftsereignisse zur Visualisierung in Amazon gesendet werden. DataZone Weitere Informationen finden Sie unter Data Lineage in Amazon DataZone.

    Um dies in der AWS Glue Konsole zu konfigurieren, aktivieren Sie Generate Lineage Events und geben Sie Ihre DataZone Amazon-Domain-ID auf der Registerkarte Jobdetails ein.

    Der Screenshot zeigt das Einschalten von Amazon DataZone Date Lineage für AWS Glue.

    Alternativ können Sie den folgenden Job-Parameter angeben (geben Sie Ihre DataZone Domain-ID an):

    • Schlüssel: --conf

    • Wert:

      extraListeners=io.openlineage.spark.agent.OpenLineageSparkListener —conf spark.openlineage.transport.type=amazon_datazone_api -conf spark.openlineage.transport.domainId=<your-domain-ID>
  • Konnektor- und JDBC Treiber-Updates. Weitere Informationen erhalten Sie unter Anhang B: Treiber-Upgrades JDBC und Anhang C: Konnektor-Upgrades.

  • Java-Update von 8 auf 17.

  • Erhöhung des Speicherplatzes für G.2X Mitarbeiter AWS Glue G.1X und Erhöhung des Festplattenspeichers auf 94 GB bzw. 138 GB. Weitere Informationen finden Sie unter Aufträge

  • Jobs AWS SDKzur Support von Java, Version AWS Glue 2-5.0, können die Java-Versionen 1.12.569 oder 2.28.8 verwenden, wenn der Job v2 unterstützt. AWS SDKBei der für Java 2.x handelt es sich um eine grundlegende Neufassung der Codebasis von Version 1.x. Sie basiert auf Java 8+ und fügt mehrere häufig angeforderte Funktionen hinzu. Dazu gehören die Unterstützung für blockierungsfreie I/O und die Möglichkeit, zur Laufzeit eine andere HTTP Implementierung einzubinden. Weitere Informationen, einschließlich eines Migrationshandbuchs von SDK Java v1 zu v2, finden Sie im Handbuch AWS SDKfür Java, Version 2.

Abwärtskompatible Änderungen

Beachten Sie die folgenden grundlegenden Änderungen:

  • GlueContextEine basierte Zugriffskontrolle auf Tabellenebene mit AWS Lake Formation Berechtigungen, die in Glue 4.0 oder früher unterstützt wurden, wird in Glue 5.0 nicht unterstützt. Verwenden Sie die neue native, feinkörnige Zugriffskontrolle (FGAC) von Spark in Glue 5.0.

  • Der vektorisierte SIMD CSV Reader wird nicht unterstützt.

  • Die kontinuierliche Protokollierung in der Ausgabeprotokollgruppe wird nicht unterstützt. Verwenden Sie stattdessen die error Protokollgruppe.

  • Der AWS Glue Job Run Insights job-insights-rule-driver ist veraltet. Der job-insights-rca-driver Protokollstream befindet sich jetzt in der Fehlerprotokollgruppe.

  • Athena-basierte Custom/Marketplace-Konnektoren werden nicht unterstützt.

  • Adobe Marketo Engage, Facebook Ads, Google Ads, Google Analytics 4, Google Sheets, Hubspot, Instagram Ads, Intercom, Jira Cloud, Oracle NetSuite, Salesforce, Salesforce Marketing Cloud, Salesforce Marketing Cloud Account Engagement,,,, Slack, Snapchat Ads, Stripe SAP OData ServiceNow, Zendesk und Zoho Connectors werden nicht unterstützt. CRM

Wesentliche Verbesserungen von Spark 3.3.0 auf Spark 3.5.2

Berücksichtigen Sie die folgenden Verbesserungen:

Aktionen zur Migration auf 5.0 AWS Glue

Ändern Sie bei vorhandenen Aufträgen die Glue version von der vorherigen Version auf Glue 5.0 in der Auftragskonfiguration.

  • Wählen Sie in AWS Glue Studio Glue 5.0 - Supports Spark 3.5.2, Scala 2, Python 3 inGlue version.

  • Wählen Sie 5.0 in der API den GlueVersion Parameter in der UpdateJobAPIOperation aus.

Wählen Sie für neue Aufträge Glue 5.0 aus, wenn Sie Aufträge erstellen.

  • Wählen Sie in der Konsole Spark 3.5.2, Python 3 (Glue Version 5.0) or Spark 3.5.2, Scala 2 (Glue Version 5.0) in der Glue version aus.

  • Wählen Sie in AWS Glue Studio Glue 5.0 - Supports Spark 3.5.2, Scala 2, Python 3 inGlue version.

  • Wählen Sie 5.0 in der API den GlueVersion Parameter in der CreateJobAPIOperation aus.

Um Spark-Ereignisprotokolle von AWS Glue 5.0 aus Version AWS Glue 2.0 oder früher anzuzeigen, starten Sie einen aktualisierten Spark-Verlaufsserver für AWS Glue 5.0 mit AWS CloudFormation oder Docker.

Checkliste für die Migration

Überprüfen Sie diese Checkliste für die Migration:

  • Java 17-Aktualisierungen

  • [Scala] AWS SDK Aufrufe von Version 1 auf Version 2 aktualisieren

  • Migration von Python 3.10 nach 3.11

  • [Python] Aktualisieren Sie die Boto-Referenzen von 1.26 auf 1.34

AWS Glue 5.0-Funktionen

In diesem Abschnitt werden die AWS Glue Funktionen ausführlicher beschrieben.

Abfragen von Metastore-Datenkatalogen von AWS Glue ETL

Sie können Ihren AWS Glue Job registrieren, um auf die zuzugreifen AWS Glue Data Catalog, wodurch Tabellen und andere Metastore-Ressourcen unterschiedlichen Benutzern zur Verfügung stehen. Der Datenkatalog unterstützt eine Hierarchie mit mehreren Katalogen, die all Ihre Daten über Amazon S3 S3-Datenseen hinweg vereinheitlicht. Außerdem bietet er sowohl einen Hive-Metastore API als auch einen Open-Source-Apache API Iceberg für den Zugriff auf die Daten. Diese Funktionen sind für AWS Glue und andere datenorientierte Dienste wie AmazonEMR, Amazon Athena und Amazon Redshift verfügbar.

Wenn Sie Ressourcen im Datenkatalog erstellen, können Sie von jeder SQL Engine aus darauf zugreifen, die Apache Iceberg unterstützt. REST API AWS Lake Formation verwaltet Berechtigungen. Nach der Konfiguration können Sie die Funktionen nutzen AWS Glue, um unterschiedliche Daten abzufragen, indem Sie diese Metastore-Ressourcen mit vertrauten Anwendungen abfragen. Dazu gehören Apache Spark und Trino.

Wie sind Metadaten-Ressourcen organisiert

Daten werden in einer logischen Hierarchie von Katalogen, Datenbanken und Tabellen organisiert, wobei Folgendes verwendet wird AWS Glue Data Catalog:

  • Katalog — Ein logischer Container, der Objekte aus einem Datenspeicher enthält, z. B. Schemas oder Tabellen.

  • Datenbank — Organisiert Datenobjekte wie Tabellen und Ansichten in einem Katalog.

  • Tabellen und Ansichten — Datenobjekte in einer Datenbank, die eine Abstraktionsebene mit einem verständlichen Schema bieten. Sie erleichtern den Zugriff auf zugrunde liegende Daten, die in verschiedenen Formaten und an verschiedenen Orten vorliegen können.

Migration von AWS Glue 4.0 auf 5.0 AWS Glue

Alle bestehenden Jobparameter und wichtigen Funktionen, die in AWS Glue 4.0 vorhanden sind, werden in AWS Glue 5.0 verfügbar sein, mit Ausnahme von Transformationen für maschinelles Lernen.

Die folgenden neuen Parameter wurden hinzugefügt:

  • --enable-lakeformation-fine-grained-access: Aktiviert die Funktion zur detaillierten Zugriffskontrolle (FGAC) in AWS Lake Formation-Tabellen.

Weitere Informationen finden Sie in der Dokumentation zur Spark-Migration:

Migration von AWS Glue 3.0 auf 5.0 AWS Glue

Anmerkung

Informationen zu Migrationsschritten im Zusammenhang mit AWS Glue 4.0 finden Sie unterMigration von AWS Glue 3.0 auf 4.0 AWS Glue.

Alle bestehenden Jobparameter und Hauptfunktionen, die in AWS Glue 3.0 vorhanden sind, werden auch in AWS Glue 5.0 verfügbar sein, mit Ausnahme von Transformationen für maschinelles Lernen.

Migration von AWS Glue 2.0 auf 5.0 AWS Glue

Anmerkung

Migrationsschritte im Zusammenhang mit AWS Glue 4.0 und eine Liste der Migrationsunterschiede zwischen AWS Glue Version 3.0 und 4.0 finden Sie unterMigration von AWS Glue 3.0 auf 4.0 AWS Glue.

Beachten Sie auch die folgenden Migrationsunterschiede zwischen den AWS Glue Versionen 3.0 und 2.0:

  • Alle bestehenden Jobparameter und Hauptfunktionen, die in AWS Glue 2.0 vorhanden sind, werden auch in AWS Glue 5.0 verfügbar sein, mit Ausnahme von Transformationen für maschinelles Lernen.

  • Einige Spark-Änderungen allein erfordern möglicherweise eine Überarbeitung Ihrer Skripte, um sicherzustellen, dass entfernte Features nicht referenziert werden. Zum Beispiel aktiviert Spark 3.1.1 und höher Scala-untyped nicht, UDFs aber Spark 2.4 erlaubt sie.

  • Python 2.7 wird nicht unterstützt.

  • Alle zusätzlichen JAR-Dateien, die in bestehenden AWS Glue 2.0-Jobs bereitgestellt werden, können zu widersprüchlichen Abhängigkeiten führen, da es Upgrades in mehreren Abhängigkeiten gab. Sie können Klassenpfadkonflikte mit dem Job-Parameter vermeiden. --user-jars-first

  • Änderungen am Verhalten von Parquet-Dateien. loading/saving of timestamps from/to Weitere Informationen finden Sie unter Upgrade von Spark SQL 3.0 auf 3.1.

  • Unterschiedlicher Spark-Task-Parallelismus für die Treiber-/Executor-Konfiguration. Sie können die Aufgabenparallelität anpassen, indem Sie das Job-Argument übergeben. --executor-cores

Migration von Konnektoren und JDBC Treibern für 5.0 AWS Glue

Die aktualisierten Versionen von JDBC und Data Lake Connectors finden Sie unter:

Die folgenden Änderungen gelten für die Konnektor- oder Treiberversionen, die in den Anhängen für Glue 5.0 aufgeführt sind.

Amazon-Redshift

Beachten Sie folgende Änderungen:

  • Integriert die Unterstützung für dreiteilige Tabellennamen, damit der Connector Redshift-Datenaustauschtabellen abfragen kann.

  • Korrigiert die Zuordnung von Spark ShortType dahingehend, dass Redshift verwendet wird, SMALLINT anstatt der erwarteten Datengröße besser gerecht INTEGER zu werden.

  • Unterstützung für benutzerdefinierte Clusternamen (CNAME) für Amazon Redshift Serverless hinzugefügt.

Apache Hudi

Beachten Sie folgende Änderungen:

  • Support den Index auf Rekordniveau.

  • Support auto Generierung von Datensatzschlüsseln. Jetzt müssen Sie das Datensatzschlüsselfeld nicht mehr angeben.

Apache Iceberg

Beachten Sie folgende Änderungen:

  • Support Sie eine feinkörnige Zugriffskontrolle mit. AWS Lake Formation

  • Support Branching und Tagging, bei denen es sich um benannte Verweise auf Snapshots mit eigenen unabhängigen Lebenszyklen handelt.

  • Es wurde eine Changelog-Ansichtsprozedur hinzugefügt, die eine Ansicht generiert, die die Änderungen enthält, die in einem bestimmten Zeitraum oder zwischen bestimmten Snapshots an einer Tabelle vorgenommen wurden.

Delta Lake

Beachten Sie folgende Änderungen:

  • Support Delta Universal Format (UniForm), das einen nahtlosen Zugriff über Apache Iceberg und Apache Hudi ermöglicht.

  • Support Löschvektoren, die ein Merge-on-Read Paradigma implementieren.

AzureCosmos

Beachten Sie folgende Änderungen:

  • Unterstützung für hierarchische Partitionsschlüssel hinzugefügt.

  • Option hinzugefügt, um ein benutzerdefiniertes Schema mit StringType (rohes JSON) für eine verschachtelte Eigenschaft zu verwenden.

  • Es wurde eine Konfigurationsoption hinzugefügtspark.cosmos.auth.aad.clientCertPemBase64, um die Verwendung der SPN (ServicePrincipal Namens-) Authentifizierung mit Zertifikat anstelle des geheimen Client-Schlüssels zu ermöglichen.

Weitere Informationen finden Sie im Änderungsprotokoll des Azure Cosmos DB Spark-Connectors.

SQLMicrosoft-Server

Beachten Sie folgende Änderungen:

  • TLSDie Verschlüsselung ist standardmäßig aktiviert.

  • Wenn encrypt = false ist, der Server jedoch eine Verschlüsselung benötigt, wird das Zertifikat anhand der trustServerCertificate Verbindungseinstellung validiert.

  • aadSecurePrincipalIdund aadSecurePrincipalSecret veraltet.

  • getAADSecretPrincipalIdAPIentfernt.

  • Unterstützung für den Datentyp SQL _Variant beim Abrufen hinzugefügt. DateTimeOffset

  • CNAMEAuflösung hinzugefügt, wenn Realm angegeben ist.

MongoDB

Beachten Sie folgende Änderungen:

  • Support für den Micro-Batch-Modus mit Spark Structured Streaming.

  • Support für BSON Datentypen.

  • Unterstützung für das Lesen mehrerer Sammlungen im Micro-Batch- oder Continuous-Streaming-Modus wurde hinzugefügt.

    • Wenn der Name einer Sammlung, die in Ihrer collection Konfigurationsoption verwendet wird, ein Komma enthält, behandelt der Spark-Connector sie als zwei verschiedene Sammlungen. Um dies zu vermeiden, müssen Sie das Komma umgehen, indem Sie ihm einen umgekehrten Schrägstrich (\) voranstellen.

    • Wenn der Name einer Sammlung, die in Ihrer collection Konfigurationsoption verwendet wird, „*“ ist, interpretiert der Spark-Connector dies als Spezifikation zum Scannen aller Sammlungen. Um dies zu vermeiden, müssen Sie das Sternchen maskieren, indem Sie ihm einen umgekehrten Schrägstrich (\) voranstellen.

    • Wenn der Name einer Sammlung, die in Ihrer collection Konfigurationsoption verwendet wird, einen umgekehrten Schrägstrich (\) enthält, behandelt der Spark-Connector den umgekehrten Schrägstrich als Escape-Zeichen, was die Interpretation des Werts ändern kann. Um dies zu vermeiden, müssen Sie den Backslash umgehen, indem Sie ihm einen weiteren Backslash voranstellen.

Weitere Informationen finden Sie in den Versionshinweisen zum MongoDB-Konnektor für Spark.

Snowflake

Beachten Sie folgende Änderungen:

  • Es wurde ein neuer trim_space Parameter eingeführt, mit dem Sie Werte von StringType Spalten beim Speichern in einer Snowflake-Tabelle automatisch kürzen können. Standard: false.

  • Der abort_detached_query Parameter wurde standardmäßig auf Sitzungsebene deaktiviert.

  • Die Anforderung des SFUSER Parameters bei der Verwendung wurde entferntOAUTH.

  • Die Funktion Advanced Query Pushdown wurde entfernt. Alternativen zu dieser Funktion sind verfügbar. Anstatt beispielsweise Daten aus Snowflake-Tabellen zu laden, können Benutzer Daten direkt aus SQL Snowflake-Abfragen laden.

Weitere Informationen finden Sie in den Versionshinweisen zu Snowflake Connector for Spark.

Anhang A: Nennenswerte Aktualisierungen von Abhängigkeiten

Im Folgenden sind Abhängigkeits-Upgrades aufgeführt:

-Abhängigkeit Version in 5.0 AWS Glue Version in AWS Glue 4.0 Version in AWS Glue 3.0 Version in AWS Glue 2.0 Version in AWS Glue 1.0
Java 17 8 8 8 8
Spark 3.5.2-amzn-1 3.3.0-amzn-1 3.1.1-amzn-0 2.4.3 2.4.3
Hadoop 3.4.0-amzn-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 2.12 2.11 2.11
Jackson 2.15,2 2.12 2.12 2.11 2.11
Hive 2.3.9-amzn-4 2.3.9-amzn-2 2.3.7-amzn-4 1.2 1.2
EMRFS 2,66,0 2,54,0 2,46,0 2.38.0 2.30.0
JSON4s 3.7.0-M11 3.7.0-M11 3.6.6 3.5.x 3.5.x
Arrow 12.0.1 7.0.0 2.0.0 0.10.0 0.10.0
AWS Glue Datenkatalog-Client 4.2.0 3.7.0 3.0.0 1.10.0 N/A
AWS SDK for Java 2.28.8 1.12 1.12
Python 3.11 3,10 3.7 2.7 und 3.6 2.7 und 3.6
Boto 1,34,131 1,26 1,18 1.12 N/A
EMRDynamoDB-Anschluss 5.6.0 4.16.0

Anhang B: Treiber-Upgrades JDBC

Im Folgenden sind JDBC Treiber-Upgrades aufgeführt:

Treiber JDBCTreiberversion in AWS Glue 5.0 JDBCTreiberversion in AWS Glue 4.0 JDBCTreiberversion in AWS Glue 3.0 JDBCTreiberversion in früheren AWS Glue Versionen
Mein SQL 8.0.33 8.0.23 8.0.23 5.1
SQLMicrosoft-Server 10.2.0 9.4,0 7.0.0 6.1.0
Oracle-Datenbanken 23.3.0.23,09 21,7 21,1 11.2
Postfach SQL 42.7.3 42,3,6 42,2,18 42,10
Amazon-Redshift

Rotshift-jdbc42-2.1.0.29

redshift-jdbc42-2.1.0.16

redshift-jdbc41-1.2.12.1017

redshift-jdbc41-1.2.12.1017

SAPHana 2,20,17 2.17,12
Teradata 20,00,00,33 20.00.00.06

Anhang C: Konnektor-Upgrades

Im Folgenden sind Konnektor-Upgrades aufgeführt:

Treiber Connector-Version in 5.0 AWS Glue Connector-Version in AWS Glue 4.0 Connector-Version in AWS Glue 3.0
EMRDynamoDB-Anschluss 5.6.0 4.16.0
Amazon-Redshift 6.3.0 6.1.3
OpenSearch 1.2.0 1.0.1
MongoDB 10.4.0 10.0.4 3.0.0
Snowflake 3.0.0 2.12.0
Google BigQuery 0,32,2 0,32,2
AzureCosmos 4,33,0 4,22,0
Azurblau SQL 1.3.0 1.3.0
Vertica 3.3.5 3.3.5

Anhang D: Upgrades im Open-Table-Format

Bei den folgenden Aktualisierungen handelt es sich um Upgrades im Open-Table-Format:

OTF Connector-Version in AWS Glue 5.0 Connector-Version in AWS Glue 4.0 Connector-Version in AWS Glue 3.0
Hudi 0.15.0 0.12.1 0.10.1
Delta Lake 3.2.1 2.1.0 1.0.0
Iceberg 1.6.1 1.0.0 0.13.1
DatenschutzNutzungsbedingungen für die WebsiteCookie-Einstellungen
© 2025, Amazon Web Services, Inc. oder Tochtergesellschaften. Alle Rechte vorbehalten.