EMR Serverless Spark の Python 環境には、matplotlib、numpy、pandas などのプリインストール済みライブラリが含まれています。他のサードパーティライブラリを使用するには、ランタイム環境を作成する必要があります。
前提条件
ワークスペースを作成する必要があります。詳細については、「ワークスペースの管理」をご参照ください。
ランタイム環境の作成
ランタイム環境管理ページに移動します。
E-MapReduce コンソールにログオンします。
左側のナビゲーションウィンドウで、 を選択します。
[Spark] ページで、対象のワークスペースの名前をクリックします。
[EMR Serverless Spark] ページで、左側のナビゲーションウィンドウの [ランタイム環境管理] を選択します。
[ランタイム環境の作成] をクリックします。
[ランタイム環境の作成] ページで、次のパラメーターを設定します。
パラメーター
必須
説明
名前
はい
ランタイム環境の名前を入力します。
説明
いいえ
環境の説明を入力します。
環境キューの初期化
はい
環境の初期化に使用するキューを選択します。ランタイム環境を作成すると、このキューから 1 コアと 4 GB のリソースが初期化に使用されます。初期化が完了すると、リソースは自動的に解放されます。
ネットワーク接続
いいえ
Alibaba Cloud ソース以外のソースから PyPI ライブラリを追加するには、適切なネットワーク接続を選択します。このネットワーク接続は、ランタイム環境の作成時にソースアドレスにアクセスするために使用されます。
ネットワーク接続の作成方法の詳細については、「EMR Serverless Spark と他の VPC 間のネットワーク接続を確立する」をご参照ください。
Python バージョン
はい
デフォルトでは Python 3.8 が使用されます。必要に応じて、別のバージョンを選択できます。
選択した Python バージョンがターゲットの Python ライブラリと互換性があることを確認してください。これにより、バージョンの不一致によるパッケージングの失敗や実行時エラーを防ぐことができます。
ライブラリ情報を追加します。
[ライブラリの追加] をクリックします。
[ライブラリの追加] ダイアログボックスで、[ソースタイプ] を選択し、関連するパラメーターを設定してから、[OK] をクリックします。
パラメーター
説明
PyPI
PyPI パッケージ: PyPI ライブラリの名前とバージョンを入力します。バージョンを指定しない場合、デフォルトで最新バージョンがインストールされます。デフォルトでは Alibaba Cloud ソース が使用されます。
例:
PlotlyまたはPlotly==4.9.0。パッケージソース: PyPI パッケージのソースアドレスを指定します。これを空白のままにすると、デフォルトで Alibaba Cloud ソースが使用されます。カスタムソースアドレスを使用する場合は、適切なネットワーク接続を選択していることを確認してください。
ワークスペースリソース
[ワークスペースリソース] ドロップダウンリストから、現在のワークスペースからファイルリソースを選択します。利用可能なリソースがない場合は、[ファイル管理] ページでファイルをアップロードします。
サポートされているファイルタイプ:
.zip、.tar、.whl、.tar.gz、.jar、および.txt。説明ファイルタイプが
.txtの場合、システムは、requirements.txt ファイルと同様に、ファイルの内容に基づいて指定された Python ライブラリとバージョンをインストールします。OSS リソース
[OSS リソース] には、Alibaba Cloud OSS に保存されているファイルのパスを入力します。
サポートされているファイルタイプ:
.zip、.tar、.whl、.tar.gz、.jar、および.txt。説明ファイルタイプが
.txtの場合、システムは、requirements.txt ファイルと同様に、ファイルの内容に基づいて指定された Python ライブラリとバージョンをインストールします。
[作成] をクリックします。
[作成] をクリックすると、環境の初期化が開始されます。
ランタイム環境の編集
ランタイム環境を編集して、そこに含まれるライブラリを更新できます。
[ランタイム環境管理] ページで、対象のランタイム環境を見つけ、[アクション] 列の [編集] をクリックします。
[ランタイム環境の編集] ページで、環境構成を更新します。
[変更の保存] をクリックします。
変更を保存すると、更新された構成に基づいて環境が再初期化されます。
説明環境が再初期化された後、変更はアクティブな Notebook セッションではすぐには有効になりません。Notebook セッションで最新のランタイム環境を使用するには、セッションリソースを再起動する必要があります。
ランタイム環境の使用
ランタイム環境が [準備完了] 状態の場合、データ開発または対応するセッションで使用できます。
PySpark バッチジョブ: ジョブが開始されると、システムは選択されたランタイム環境に基づいて必要なライブラリをプリインストールします。
ジョブオーケストレーション: ワークフローに Notebook ノードを追加するときに、対応するランタイム環境を選択します。
Notebook セッション: Notebook セッションが開始されると、選択された環境に従ってライブラリがプリインストールされます。
Livy Gateway: Livy Gateway を介してジョブを送信すると、ジョブに必要なリソースが選択された環境に基づいて事前設定されます。
Spark Submit、Apache Airflow、または Livy を使用してジョブを送信する場合、
--conf spark.emr.serverless.environmentId=<runtime_environment_id>パラメーターを設定してランタイム環境を指定します。