DataWorks で EMR Serverless Spark タスクを開発および管理するには、EMR Serverless Spark ワークスペースをサーバーレス Spark コンピューティングリソースとして DataWorks に関連付ける必要があります。関連付けが完了すると、このコンピューティングリソースを DataWorks でのデータ開発に使用できます。
前提条件
DataWorks ワークスペースを作成済みであること。ご利用の RAM ユーザーには、ワークスペースのワークスペース管理者ロールが必要です。
重要新しいバージョンのData Development (Data Studio) を使用する が選択されているワークスペースのみがサポートされます。
サーバーレスリソースグループを使用し、ターゲットの DataWorks ワークスペースに関連付けていること。
制限事項
サポート対象リージョン:中国 (杭州)、中国 (上海)、中国 (北京)、中国 (深セン)、中国 (成都)、中国 (香港)、日本 (東京)、シンガポール、インドネシア (ジャカルタ)、ドイツ (フランクフルト)、米国 (シリコンバレー)、および米国 (バージニア)。
権限:
ユーザー/ロール
必要な権限
Alibaba Cloud アカウント
追加の権限は必要ありません。
RAM ユーザーまたは RAM ロール
DataWorks の管理権限:O&M またはワークスペース管理者ロールを持つワークスペースメンバー、あるいは
AliyunDataWorksFullAccessポリシーを持つメンバーのみがコンピューティングリソースを作成できます。権限付与の詳細については、「ユーザーへのワークスペース管理者ロールの付与」をご参照ください。EMR Serverless Spark サービスの権限:
AliyunEMRServerlessSparkFullAccessポリシー。EMR Serverless Spark ワークスペースの
Owner権限。詳細については、「ユーザーとロールの管理」をご参照ください。
コンピューティングリソースリストページへの移動
-
DataWorks コンソールにログインします。左側のナビゲーションウィンドウで、対象のリージョンに切り替え、 をクリックします。ドロップダウンリストからワークスペースを選択し、Go to Management Center をクリックします。
-
左側のナビゲーションウィンドウで Computing Resources をクリックして、コンピューティングリソースリストページを開きます。
サーバーレス Spark リソースの関連付け
[コンピューティングリソース] ページで、サーバーレス Spark コンピューティングリソースを設定して関連付けます。
関連付けるコンピューティングリソースのタイプを選択します。
コンピューティングリソースのバインド をクリックして、コンピューティングリソースのバインド ページを開きます。
コンピューティングリソースのバインド ページで、コンピューティングリソースタイプとして [サーバーレス Spark] を選択します。これにより、Serverless Sparkコンピューティングリソースのバインド 設定ページが開きます。
サーバーレス Spark コンピューティングリソースを設定します。
Serverless Sparkコンピューティングリソースのバインド 設定ページで、次の表の説明に従ってパラメーターを設定します。
パラメーター
説明
Spark工作空间
関連付ける Spark ワークスペースを選択します。ドロップダウンリストの Create をクリックして、Spark ワークスペースを作成することもできます。
デフォルトのエンジンバージョン
使用するエンジンバージョンを選択します。
Data Studio で EMR Spark タスクを作成すると、このエンジンバージョンがデフォルトで使用されます。
特定のタスクに異なるエンジンバージョンを使用するには、Spark タスクエディターの詳細設定で設定できます。
デフォルトのリソースキュー
使用するリソースキューを選択します。ドロップダウンリストの Create をクリックして、キューを追加することもできます。
Data Studio で EMR Spark タスクを作成すると、このリソースキューがデフォルトで使用されます。
特定のタスクに異なるリソースキューを使用するには、Spark タスクエディターの詳細設定で設定できます。
デフォルトのKyuubiゲートウェイ
任意。Kyuubi ゲートウェイの設定は、以下のタスクの実行方法に影響します:
Kyuubi ゲートウェイを設定した場合:
関連するすべてのタスク (EMR Spark SQL/Kyuubi、Serverless Spark SQL/Kyuubi) は Kyuubi ゲートウェイ経由で実行されます。
Kyuubi ゲートウェイを設定しない場合:
EMR Spark SQL および Serverless Spark SQL タスクは
spark-submitを使用して実行されます。EMR Kyuubi および Serverless Kyuubi タスクは実行に失敗します。
ゲートウェイを設定するには、 に移動し、Kyuubi ゲートウェイを作成し、トークンを作成します。
Kerberos が有効でない場合:Kyuubi ゲートウェイの名前をクリックして JDBC URL とトークンを取得し、それらを連結して完全な URL を作成します。
Kerberos が有効な場合:設定された Kerberos 情報に基づいて Beeline URL を取得します。詳細については、「Kyuubi ゲートウェイでの Kerberos の使用」をご参照ください。
# 通常の URL の例 jdbc:hive2://kyuubi-cn-hangzhou-internal.spark.emr.aliyuncs.com:80/;transportMode=http;httpPath=cliservice/token/<token> # Kerberos が有効なクラスターの URL の例 (Kyuubi サービスのプリンシパルを必ず含めてください) jdbc:hive2://ep-xxxxxxxxxxx.epsrv-xxxxxxxxxxx.cn-hangzhou.privatelink.aliyuncs.com:10009/;principal=kyuubi/_HOST@EMR.C-DFD43*****7C204.COM
Default Access Identity
EMR Serverless Spark ワークスペースへのアクセスに使用される ID を指定します。
開発環境:Executor ID のみがサポートされます。
本番環境:Alibaba Cloud アカウント、Alibaba Cloud RAM Sub-account、および Task Owner を使用できます。
Computeリソースインスタンス名
コンピューティングリソースを識別します。ランタイム時に、インスタンス名を使用してタスクのコンピューティングリソースが選択されます。
Confirm をクリックして、サーバーレス Spark コンピューティングリソースの設定を完了します。
グローバル Spark パラメーターの設定
DataWorks では、ワークスペースレベルで各モジュールの Spark パラメーターを指定し、Data Studio などの特定のモジュール内でグローバルパラメーターがローカルパラメーターよりも優先されるかどうかを設定できます。設定後、タスクはデフォルトで対応する Spark パラメーターを使用します。次の表に、パラメーターの設定方法を説明します。
スコープ | 設定方法 |
グローバル | EMR タスクを実行する際に、ワークスペースレベルで DataWorks 機能モジュールのグローバル Spark パラメーターを設定できます。また、これらのグローバル Spark パラメーターが特定のモジュール内で設定された Spark パラメーターよりも優先されるかどうかを定義することもできます。詳細については、「グローバル Spark パラメーターの設定」をご参照ください。 |
ノード固有 | Data Studio では、ノード編集ページで単一ノードタスクの特定の Spark プロパティを設定できます。他のプロダクトモジュールでは、モジュール内で Spark プロパティを個別に設定することはサポートされていません。 |
権限
グローバル Spark パラメーターを設定できるのは、以下のロールのみです:
Alibaba Cloud アカウント。
AliyunDataWorksFullAccessポリシーを持つ RAM ユーザーまたは RAM ロール。ワークスペース管理者ロールを持つ RAM ユーザー。
グローバル Spark パラメーターの設定
以下の手順でグローバル Spark パラメーターを設定できます。サーバーレス Spark コンピューティングリソースに設定できる Spark パラメーターの詳細については、「ジョブ設定」をご参照ください。
[コンピューティングリソース] ページに移動し、関連付けたサーバーレス Spark コンピューティングリソースを見つけます。
[Spark パラメーター] をクリックして Spark パラメーター設定ペインを開き、グローバル Spark パラメーターの設定を表示します。
グローバル Spark パラメーターを設定します。
[Spark パラメーター] ページの右上隅にある [Spark パラメーターの編集] をクリックして、各モジュールのグローバル Spark パラメーターとその優先度を設定します。
説明これはワークスペースレベルの設定です。続行する前に、正しいワークスペースを選択していることを確認してください。
パラメーター
手順
[Spark プロパティ]
Serverless Spark タスクの実行時に使用される Spark プロパティを設定します。
Add をクリックし、Sparkプロパティ名 と対応する Spark属性値 を入力して Spark プロパティを設定します。
サポートされている Spark プロパティの詳細については、「Spark Configuration」および「カスタム Spark Conf パラメーターのリスト」をご参照ください。
グローバル設定が優先されるかどうか
このオプションを選択すると、グローバル設定がプロダクトモジュールの設定をオーバーライドします。タスクは、グローバルに設定された Spark プロパティに基づいて実行されます。
グローバル設定: の対応するサーバーレス Spark コンピューティングリソースの [Spark パラメーター] ページで設定された Spark プロパティ。
現在、グローバル Spark パラメーターは Data Studio、オペレーションセンター、およびデータ分析モジュールに対してのみ設定できます。
プロダクトモジュール内の設定:
Data Studio:EMR Spark、EMR Kyuubi、EMR Spark SQL、EMR Spark Streaming、Serverless Spark バッチ、Serverless Spark SQL、および Serverless Kyuubi ノードの場合、ノード編集ページの Run Configuration または Scheduling Settings タブの Sparkパラメーター セクションで、単一ノードタスクの Spark プロパティを設定できます。
その他のプロダクトモジュール:これらのモジュール内で Spark プロパティを個別に設定することはサポートされていません。
Confirm をクリックして、設定したグローバル Spark パラメーターを保存します。
クラスターアカウントマッピングの設定
DataWorks メンバーのクラウドアカウントを EMR クラスター内の指定された ID に手動でマッピングします。これにより、メンバーはマッピングされたクラスター ID を使用して EMR Serverless Spark タスクを実行できます。
この機能はサーバーレスリソースグループでのみ利用可能です。2025 年 8 月 15 日より前にサーバーレスリソースグループを購入し、この機能を使用したい場合は、チケットを送信してリソースグループをアップグレードする必要があります。
[コンピューティングリソース] ページに移動し、関連付けたサーバーレス Spark コンピューティングリソースを見つけます。
アカウントマッピング をクリックして、[アカウントマッピング] パラメーター設定ペインに移動します。
[アカウントマッピングの編集] をクリックして、クラスターアカウントマッピングを設定します。選択した マッピングタイプ に基づいてパラメーターを設定できます。
マッピングタイプ
ランタイムの説明
設定の詳細
システムアカウントマッピング
コンピューティングリソースの基本情報にある Default Access Identity と同じ名前のクラスターアカウントを使用して、EMR Spark、EMR Spark SQL、EMR Kyuubi、および Notebook ノードタスクを実行します。
デフォルトでは、同名マッピングが使用されます。異なるアカウントマッピングを使用する必要がある場合は、手動で設定できます。
OpenLDAP アカウントマッピング
コンピューティングリソースの基本情報にある Default Access Identity を使用して、EMR Spark および EMR Spark SQL タスクを実行します。
コンピューティングリソースの基本情報にあるデフォルトのアクセス ID にマッピングされた OpenLDAP アカウントを使用して、EMR Kyuubi および Notebook ノードタスクを実行します。
Kyuubi ゲートウェイの LDAP 認証を設定および有効化している場合、対応するタスクを実行するには、クラウドアカウント と OpenLDAP アカウント (LDAPアカウント、LDAP Password) の間のマッピングを設定する必要があります。
重要DataWorks タスクの実行に必要なクラウドアカウントがアカウントマッピングリストにない場合、タスクが失敗することがあります。
Kerberos アカウントマッピング
コンピューティングリソースの基本情報にある Default Access Identity を使用して、EMR Spark および EMR Spark SQL タスクを実行します。
コンピューティングリソースの基本情報にあるデフォルトのアクセス ID にマッピングされた Kerberos アカウントを使用して、EMR Kyuubi ノードタスクを実行します。
EMR Serverless Spark クラスターに設定された Kerberos サービスの krb5.conf ファイルをアップロードする必要があります。
デフォルトのアクセス ID として指定されたクラウドアカウントに対して、Kerberos 認証に必要なプリンシパルと keytab を設定します。
[OK] をクリックして、クラスターアカウントマッピングの設定を完了します。
次のステップ
サーバーレス Spark コンピューティングリソースを設定した後、このコンピューティングリソースを使用して Data Studio でノードタスクを開発できます。詳細については、「EMR Spark ノード」、「EMR Spark SQL ノード」、「EMR Spark Streaming ノード」、「EMR Kyuubi ノード」、「Serverless Spark バッチノード」、「Serverless Spark SQL ノード」、および「Serverless Kyuubi ノード」をご参照ください。