Amazon EMR Serverless アーキテクチャオプション - Amazon EMR

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

Amazon EMR Serverless アーキテクチャオプション

Amazon EMR Serverless アプリケーションの命令セットアーキテクチャは、アプリケーションがジョブの実行に使用するプロセッサのタイプを決定します。Amazon EMRには、x86_64 arm64 の 2 つのアーキテクチャオプションがあります。EMR サーバーレスは、利用可能になると最新世代のインスタンスに自動的に更新されるため、アプリケーションは新しいインスタンスを、追加の労力を必要とせずに使用できます。

x86_64 アーキテクチャの使用

x86_64 アーキテクチャは、x86 64 ビットまたは x64 とも呼ばれます。x86_64 はEMRサーバーレスアプリケーションのデフォルトオプションです。このアーキテクチャは x86 ベースのプロセッサを使用し、ほとんどのサードパーティーのツールやライブラリと互換性があります。

ほとんどのアプリケーションは x86 ハードウェアプラットフォームと互換性があり、デフォルトの x86_64 アーキテクチャで正常に実行できます。ただし、アプリケーションが 64 ビット と互換性がある場合はARM、arm64 に切り替えて Graviton プロセッサを使用してパフォーマンス、コンピューティングパワー、メモリを向上させることができます。x86 アーキテクチャで同じサイズのインスタンスを実行する場合よりも、arm64 アーキテクチャでインスタンスを実行する方がコストがかかります。

arm64 アーキテクチャの使用 (Graviton)

AWS Graviton プロセッサは、64 ビット ARM Neoverse コア AWS を使用して によってカスタム設計され、arm64 アーキテクチャ (Arch64 または 64 ビット とも呼ばれます) を活用しますARM。EMR Serverless で使用できる AWS Graviton プロセッサのラインには、Graviton3 プロセッサと Graviton2 プロセッサが含まれます。これらのプロセッサは、x86_64 アーキテクチャで実行される同等のワークロードと比較して、Spark および Hive ワークロードに対して優れた価格パフォーマンスを提供します。EMR Serverless は、最新世代のプロセッサにアップデートするために、ユーザー側から何も必要とせずに、利用可能な場合、最新世代のプロセッサを自動的に使用します。

Graviton サポートによる新しいアプリケーションの起動

arm64 アーキテクチャを使用するアプリケーションを起動するには、次のいずれかの方法を使用します。

AWS CLI

から Graviton プロセッサを使用してアプリケーションを起動するには AWS CLI、 の architectureパラメータARM64として create-application を指定しますAPI。他のパラメータでアプリケーションに適した値を指定します。

aws emr-serverless create-application \ --name my-graviton-app \ --release-label emr-6.8.0 \ --type "SPARK" \ --architecture "ARM64" \ --region us-west-2
EMR Studio

EMR Studio から Graviton プロセッサを使用してアプリケーションを起動するには、アプリケーションを作成または更新するときにアーキテクチャオプションとして arm64 を選択します。

Graviton を使用するように既存のアプリケーションを設定する

SDK、 AWS CLI、または EMR Studio で Graviton (arm64) アーキテクチャを使用するように既存の Amazon EMR Serverless アプリケーションを設定できます。

既存のアプリケーションを x86 から arm64 に変換するには
  1. architecture パラメータをサポートする AWS CLI/SDK の最新バージョンを使用していることを確認します。

  2. 実行中のジョブがないことを確認し、アプリケーションを停止します。

    aws emr-serverless stop-application \ --application-id application-id \ --region us-west-2
  3. Graviton を使用するようにアプリケーションを更新するには、 の ARM64 architectureパラメータに update-application を指定しますAPI。

    aws emr-serverless update-application \ --application-id application-id \ --architecture 'ARM64' \ --region us-west-2
  4. アプリケーションのCPUアーキテクチャが になったことを確認するにはARM64、 get-application を使用しますAPI。

    aws emr-serverless get-application \ --application-id application-id \ --region us-west-2
  5. 準備ができたら、アプリケーションを再起動します。

    aws emr-serverless start-application \ --application-id application-id \ --region us-west-2

Graviton を使用する際の考慮事項

arm64 for Graviton サポートを使用して EMR Serverless アプリケーションを起動する前に、以下を確認してください。

ライブラリの互換性

アーキテクチャオプションとして Graviton (arm64) を選択する場合は、サードパーティーのパッケージとライブラリが 64 ビットARMアーキテクチャと互換性があることを確認してください。選択したアーキテクチャと互換性のある Python 仮想環境に Python ライブラリをパッケージ化する方法については、「」を参照してくださいEMR Serverless での Python ライブラリの使用

64 ビット を使用するように Spark または Hive ワークロードを設定する方法の詳細についてはARM、 の AWS Graviton 入門リポジトリを参照してください GitHub。このリポジトリには、 ARMベースの Graviton の使用開始に役立つ重要なリソースが含まれています。