機能と機能 - Amazon EMR

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

機能と機能

サポートされているテクノロジー

  • 言語: Python および Scala アプリケーション

  • ビルドシステム: Scala プロジェクトの場合は Maven と SBT、Python プロジェクトの場合は requirements.txt、Pipfile、Setuptools

  • ターゲットプラットフォーム: Amazon EMR と EMR Serverless

  • サポートされているバージョン: バージョン 2.4 から 3.5 への Apache Spark のアップグレードをサポートしています。対応するデプロイモードのマッピングは次のとおりです。

    • EMR-EC2 の場合

      • ソースバージョン: EMR 5.20.0 以降

      • ターゲットバージョン: EMR 7.12.0 以前、EMR 5.20.0 より新しい必要があります

    • EMR Serverless の場合

      • ソースバージョン: EMR Serverless 6.6.0 以降

      • ターゲットバージョン: EMR Serverless 7.12.0 以前

アップグレードの内容

アップグレードエージェントは、包括的な Spark アプリケーションアップグレードを提供します。

  • ビルド設定: 依存関係管理ファイル (pom.xml、 requirements.txt など) を自動的に更新します。

  • ソースコード: API の互換性の問題と廃止されたメソッドの使用を修正

  • テストコード: ユニットテストと統合テストがターゲット Spark バージョンで動作することを確認します

  • 依存関係: パッケージ化された依存関係をターゲット EMR バージョンと互換性のあるバージョンにアップグレードします

  • 検証: ターゲット EMR クラスターでアプリケーションをコンパイルして検証します

  • データ品質分析: スキーマの違い、値レベルの統計ドリフト (min/max/mean)、行数の不一致の集計を検出し、詳細な影響レポートを提供します。

利用できるリージョン

Spark アップグレードエージェントは、次のリージョンで使用できます。

  • アジアパシフィック: 東京 (ap-northeast-1)、ソウル (ap-northeast-2)、シンガポール (ap-southeast-1)、シドニー (ap-southeast-2)、ムンバイ (ap-south-1)

  • 北米: カナダ (ca-central-1)

  • 欧州: ストックホルム (eu-north-1)、アイルランド (eu-west-1)、ロンドン (eu-west-2)、パリ (eu-west-3)、フランクフルト (eu-central-1)

  • 南米: サンパウロ (sa-east-1)

  • 米国: バージニア北部 (us-east-1)、オハイオ (us-east-2)、オレゴン (us-west-2)

アップグレードの範囲とユーザー要件

  • クラスター管理: Spark Upgrade Agent は、アプリケーションコードのアップグレードに焦点を当てています。新しいバージョンのターゲット EMR クラスターは、ユーザーが作成および管理する必要があります。

  • ブートストラップアクション: Spark Upgrade Agent は、Spark アプリケーションコードの外部でカスタムブートストラップスクリプトをアップグレードしません。ユーザーがアップグレードする必要があります。

  • ビルドとテストのアップグレード: アップグレードエージェントは、開発環境でビルドを実行し、ユニットテストと統合テストをローカルで実行して、アプリケーションがターゲット Spark バージョンで正常にコンパイルされたことを確認します。ローカル実行用の Spark アプリケーションコードに制限 (セキュリティポリシー、リソース制限、ネットワーク制限、または企業ガイドライン) がある場合は、Amazon SageMaker Unified Studio VSCode IDE Spaces または EC2 を使用してアップグレードエージェントを実行することを検討してください。アップグレードエージェントは、ターゲット EMR-EC2 クラスターまたは EMR-S アプリケーションを使用して、end-to-endの検証とアップグレードを行います。

  • エラー駆動型アプローチ: アップグレードエージェントはエラー駆動型方法論を使用し、一度に複数の修正ではなく、コンパイルエラーまたはランタイムエラーに基づいて一度に 1 つの修正を行います。この反復的なアプローチにより、次に進む前に各問題が適切に対処されます。

  • プライベート依存関係: プライベートアーティファクトリポジトリからインストールされた依存関係は、このプロセスの一部として自動的にアップグレードすることはできません。ユーザーがアップグレードする必要があります。

  • リージョン別リソース: Spark アップグレードエージェントはリージョン別であり、そのリージョンの基盤となる EMR リソースをアップグレードプロセスに使用します。クロスリージョンアップグレードはサポートされていません。