Funktionen und Fähigkeiten - Amazon EMR

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.

Funktionen und Fähigkeiten

Unterstützte Technologien

  • Sprachen: Python- und Scala-Anwendungen

  • Build-Systeme: Maven und SBT für Scala-Projekte; requirements.txt, Pipfile und Setuptools für Python-Projekte

  • Zielplattformen: Amazon EMR und EMR Serverless

  • Unterstützte Versionen: Wir unterstützen Apache Spark-Upgrades von Version 2.4 auf 3.5. Die entsprechenden Zuordnungen für den Bereitstellungsmodus lauten wie folgt

    • Für EMR- EC2

      • Quellversion: EMR 5.20.0 und höher

      • Zielversion: EMR 7.12.0 und früher, sollte neuer als EMR 5.20.0 sein

    • Für EMR Serverless

      • Quellversion: EMR Serverless 6.6.0 und höher

      • Zielversion: EMR Serverless 7.12.0 und früher

Was wir aktualisieren

Der Upgrade-Agent bietet umfassende Upgrades für Spark-Anwendungen:

  • Konfiguration erstellen: Aktualisiert automatisch die Abhängigkeitsverwaltungsdateien (pom.xml, requirements.txt usw.)

  • Quellcode: Behebt API-Kompatibilitätsprobleme und die Verwendung veralteter Methoden

  • Testcode: Stellt sicher, dass Einheiten- und Integrationstests mit der Spark-Zielversion funktionieren

  • Abhängigkeiten: Führt ein Upgrade der Paketabhängigkeiten auf Versionen durch, die mit der EMR-Zielversion kompatibel sind

  • Validierung: Kompiliert und validiert Anwendungen auf EMR-Zielclustern

  • Datenqualitätsanalyse: Erkennt Schemaunterschiede, statistische Abweichungen auf Wertebene (min/max/mean) und Diskrepanzen bei der Gesamtzahl der Zeilen und erstellt detaillierte Auswirkungsberichte.

Verfügbare Regionen

Der Spark Upgrade Agent ist in den folgenden Regionen verfügbar:

  • Asien-Pazifik: Tokio (ap-northeast-1), Seoul (ap-northeast-2), Singapur (ap-southeast-1), Sydney (ap-southeast-2) und Mumbai (ap-south-1)

  • Nordamerika: Kanada (ca-central-1)

  • Europa: Stockholm (eu-north-1), Irland (eu-west-1), London (eu-west-2), Paris (eu-west-3) und Frankfurt (eu-central-1)

  • Südamerika: São Paulo (sa-east-1)

  • Vereinigte Staaten: Nord-Virginia (us-east-1), Ohio (us-east-2) und Oregon (US-West-2)

Umfang der Upgrades und Benutzeranforderungen

  • Cluster-Management: Spark Upgrade Agent konzentriert sich auf Anwendungscode-Upgrades. Ziel-EMR-Cluster für neue Versionen müssen von Benutzern erstellt und verwaltet werden.

  • Bootstrap-Aktionen: Der Spark Upgrade Agent aktualisiert keine benutzerdefinierten Bootstrap-Skripte außerhalb des Spark-Anwendungscodes. Sie müssen vom Benutzer aktualisiert werden.

  • Upgrade für Build und Tests: Der Upgrade-Agent führt Build- und Integrationstests für Ihre Entwicklungsumgebung lokal durch und führt diese aus, um zu überprüfen, ob die Anwendungen erfolgreich mit der Spark-Zielversion kompiliert wurden. Wenn Sie Einschränkungen (Sicherheitsrichtlinien, Ressourcenbeschränkungen, Netzwerkeinschränkungen oder Unternehmensrichtlinien) für Spark-Anwendungscode für die lokale Ausführung haben, sollten Sie erwägen, Amazon SageMaker Unified Studio VSCode IDE Spaces EC2 zu verwenden oder den Upgrade-Agenten auszuführen. Der Upgrade-Agent verwendet Ihren EC2 EMR-Cluster oder Ihre EMR-S-Zielanwendungen zur Validierung und zum Upgrade. end-to-end

  • Fehlerorientierter Ansatz: Der Upgrade-Agent verwendet eine fehlergesteuerte Methode, bei der eine Korrektur nach der anderen auf Kompilierungs- oder Laufzeitfehlern statt auf mehreren Fixes gleichzeitig durchgeführt wird. Dieser iterative Ansatz stellt sicher, dass jedes Problem ordnungsgemäß behoben wird, bevor mit dem nächsten fortgefahren wird.

  • Private Abhängigkeiten: Abhängigkeiten, die aus privaten Artefakt-Repositorys installiert wurden, können im Rahmen dieses Prozesses nicht automatisch aktualisiert werden. Sie müssen vom Benutzer aktualisiert werden.

  • Regionale Ressourcen: Der Spark-Upgrade-Agent ist regional und verwendet die zugrunde liegenden EMR-Ressourcen in dieser Region für den Upgrade-Prozess. Regionsübergreifende Upgrades werden nicht unterstützt.