AWS Glue での Ray ジョブの使用
このセクションでは、AWS Glue for Ray のジョブを使用する方法について説明します。AWS Glue for Ray のスクリプトを記述する方法の詳細については、「Ray スクリプトのプログラミング」セクションを参照してください。
トピック
AWS Glue for Ray の使用を開始する
AWS Glue for Ray を使用するには、AWS Glue for Spark で使用しているものと同じ、AWS Glue ジョブとインタラクティブセッションを使用します。AWS Glue ジョブは、同じスクリプトを一定の頻度で繰り返し実行するように設計されていますが、インタラクティブセッションは、プロビジョニングされた同じリソースに対して、コードのスニペットを順番に実行するように設計されています。
AWS Glue ETL と Ray は下部構造が異なるため、スクリプトではさまざまなツール、機能、設定にアクセスすることができます。AWS Glue が管理する新しい計算フレームワークとして、Ray は異なるアーキテクチャを持ちます。また、その機能を説明するボキャブラリーも異なります。詳細については、Ray のドキュメントの「Architecture Whitepapers
注記
AWS Glue for Ray は、米国東部 (バージニア北部)、米国東部 (オハイオ)、米国西部 (オレゴン)、アジアパシフィック (東京)、欧州 (アイルランド) でご利用いただけます。
AWS Glue Studio コンソールでの Ray ジョブ
AWS Glue Studio コンソールの [ジョブ] ページでは、AWS Glue Studio でジョブを作成する際に、新たに [Ray script editor] を選択できます。コンソールに Ray ジョブを作成するときはこちらを選択します。ジョブとその使用方法についての詳細は、「AWS Glue Studio でビジュアル ETL ジョブを作成する」を参照してください。
AWS CLI および SDK での Ray ジョブ
AWS CLI での Ray ジョブは、他のジョブと同じ SDK アクションとパラメータを使用します。AWS Glue for Ray では、特定のパラメータに新しい値が導入されています。ジョブの API の詳細については、「ジョブ」を参照してください。
サポートされている Ray のランタイム環境
Spark ジョブでは、GlueVersion
によって、AWS Glue for Spark ジョブで利用できる Apache Spark と Python のバージョンが決まります。Python のバージョンは、Spark タイプのジョブでサポートされているバージョンを示します。これは、Ray のランタイム環境の設定方法とは異なります。
Ray ジョブの場合、GlueVersion
を 4.0
以降に設定する必要があります。ただし、Ray ジョブで使用できる Ray、Python、その他のライブラリバージョンは、ジョブ定義の Runtime
フィールドにより決まります。
Ray2.4
ランタイム環境は、リリースから最低 6 か月間は使用可能です。Ray は進化のスピードが速いため、今後のランタイム環境のリリースを通じてその更新や改良を統合していけます。
有効な値: Ray2.4
ランタイム値 | Ray と Python のバージョン |
---|---|
Ray2.4 (AWS Glue 4.0 以降) |
Ray 2.4.0 Python 3.9 |
追加情報
-
AWS Glue on Ray のリリースに付属のリリースノートについては、「AWS Glue バージョン」を参照してください。
-
ランタイム環境で提供される Python ライブラリについては、「Ray ジョブで提供されるモジュール」を参照してください。
Ray ジョブのワーカーの考慮
AWS Glue は、Ray ジョブを Graviton ベースの新しい EC2 ワーカータイプで実行します。このタイプは Ray ジョブでのみで利用できるものです。これらのワーカーを、Ray の設計の根拠であるワークロードに合わせて適切にプロビジョニングするため、コンピューティングリソースとメモリリソースの比率がほとんどのワーカーとは異なっています。これらのリソースを考慮して、標準データ処理ユニット (DPU) ではなく、メモリ最適化データ処理ユニット (M-DPU) が使用されています。
-
1 基の M-DPU は 4 基の vCPU と 32 GB のメモリに相当します。
-
1 基の DPU は 4 基の vCPU と 16 GB のメモリに相当します。DPU は、AWS Glue with Spark のジョブと対応するワーカーのリソースを考慮して、使用されています。
Ray ジョブでは現在、Z.2X
という 1 つのワーカータイプしか使用できません。Z.2X
ワーカーは 2 つの M-DPU (8 基の vCPU、64 GB のメモリ) にマップされ、128 GB のディスク容量を有しています。Z.2X
マシンには 8 つの Ray ワーカーがあります (vCPU につき 1 つ)。
1 つのアカウントで同時に使用できる M-DPU の数は、サービスクォータの対象となります。AWS Glue のアカウント制限についての詳細は、「AWS Glue エンドポイントとクォータ」を参照してください。
Ray ジョブで使用できるワーカーノードの数は、ジョブ定義で --number-of-workers
(NumberOfWorkers)
のように指定します。ジョブ API の Ray 値の詳細については、「ジョブ」を参照してください。
また、Ray ジョブが割り当てるワーカーの最小数は、--min-workers
ジョブパラメータを使用して指定できます。ジョブパラメータについては、「リファレンス」を参照してください。