すべてのプロダクト
Search
ドキュメントセンター

AnalyticDB:DolphinScheduler を使用して Spark ジョブをスケジュールする

最終更新日:Apr 23, 2025

DolphinScheduler は、強力な Directed Acyclic Graph(DAG)ビジュアルインターフェイスを備えた、分散型で拡張可能なオープンソースのワークフローオーケストレーションプラットフォームです。 DolphinScheduler は、大量のデータのワークフローを効率的に実行および管理するのに役立ちます。 DolphinScheduler Web インターフェイスで、AnalyticDB for MySQL の Spark ジョブを作成、編集、およびスケジュールできます。

前提条件

Spark SQL ジョブのスケジュール

AnalyticDB for MySQL では、バッチモードまたは対話型モードで Spark SQL を実行できます。 スケジュール手順は、実行モードによって異なります。

バッチモード

  1. spark-submit コマンドラインツールをインストールし、関連パラメータを指定します。

    説明

    指定する必要があるパラメータは、keyIdsecretIdregionIdclusterId、および rgName のみです。

  2. プロジェクトを作成します。

    1. DolphinScheduler Web インターフェイスにアクセスします。 上部のナビゲーションバーで、 をクリックします。。上部のナビゲーションバーで、 [クリック] プロジェクト

    2. [作成] プロジェクトをクリックします。

    3. 次の [プロジェクトの作成] ダイアログボックスで、次のようなパラメーターを構成します。プロジェクト名 および 所有ユーザー

  3. ワークフローを作成します。

    1. 作成したプロジェクトの名前をクリックします。 左側のナビゲーションウィンドウで、[ワークフロー] > [ワークフロー定義] を選択して、[ワークフロー定義] ページに移動します。

    2. [ワークフローの作成] をクリックして、[ワークフロー DAG 編集] ページに移動します。

    3. ページの左側のリストで、[SHELL] を選択し、右側のキャンバスにドラッグします。

    4. 次の[現在のノード設定] ダイアログボックスで、次の表に示すパラメーターを構成します。

      パラメータ

      説明

      [ノード名]

      ワークフローノードの名前。

      [スクリプト]

      spark-submit ツールのインストールパスと Spark ジョブのビジネスコード。 例: /root/adb-spark-toolkit-submit/bin/spark-submit --class com.aliyun.adb.spark.sql.OfflineSqlTemplate local:///opt/spark/jars/offline-sql.jar "show databases" "select 100"

      重要

      spark-submit ツールを使用して Spark ジョブをスケジュールする場合は、スクリプトに spark-submit ツールのインストールパスを指定する必要があります。 そうしないと、スケジューリングタスクが spark-submit コマンドを見つけられない可能性があります。

      説明

      その他のパラメータについては、「DolphinScheduler タスクパラメータ付録」をご参照ください。

    5. [確認] をクリックします。

    6. ページの右上隅にある [保存] をクリックします。 [基本情報] ダイアログボックスで、[ワークフロー名] などのパラメータを設定します。 [確認] をクリックします。

  4. ワークフローを実行します。

    1. 作成したワークフローを見つけ、image[操作] 列の アイコンをクリックして、ワークフローを公開します。

    2. image アイコンをクリックして、[操作] 列を表示します。

    3. 次の 開始前にパラメーターを設定してください ダイアログボックスで、パラメーターを構成します。

    4. [確認] をクリックして、ワークフローを実行します。

  5. ワークフローの詳細を表示します。

    1. 左側のナビゲーションウィンドウで、[タスク] > [タスクインスタンス] を選択します。

    2. ワークフローのタスクを見つけ、image[操作] 列の アイコンをクリックして、ワークフローの実行結果とログを表示します。

対話型モード

  1. Spark 対話型リソースグループの接続 URL を取得します。

    1. AnalyticDB for MySQL コンソール にログオンします。 コンソールの左上隅で、リージョンを選択します。 左側のナビゲーションウィンドウで、クラスターリスト をクリックします。 Enterprise Edition、Basic Edition、または Data Lakehouse Edition タブで、管理するクラスタを見つけ、クラスタ ID をクリックします。

    2. 左側のナビゲーションウィンドウで、クラスター管理 > リソース管理 を選択します。表示されたページで、リソースグループ管理 タブをクリックします。

    3. 作成した Spark 対話型リソースグループを見つけ、 列の をクリックして、リソースグループの内部またはパブリック接続 URL を表示します。 対応するポート番号の横にある括弧内の アイコンをクリックすると、接続 URL をコピーできます。詳細 内の 操作 列で、リソースグループの内部接続 URL またはパブリック接続 URL を表示します。image

      クリックする必要があります [エンドポイントを申請]パブリックエンドポイント

      • Spark SQL ジョブを送信するために使用されるクライアントツールが、オンプレミスにデプロイされている場合。

      • Spark SQL ジョブを送信するために使用されるクライアントツールが、AnalyticDB for MySQL クラスタとは異なる VPC に存在する Elastic Compute Service(ECS)インスタンスにデプロイされている場合。

  2. データソースを作成します。

    1. DolphinScheduler Web インターフェイスにアクセスします。 上部のナビゲーションバーで、[データソース] をクリックします。

    2. [データソースの作成] をクリックします。

    3. [データソースの作成] ダイアログボックスで、次の表に示すパラメータを設定します。

      パラメータ

      説明

      [データソース]

      データソースのタイプ。 [SPARK] を選択します。

      [データソース名]

      データソースの名前。

      [IP]

      手順 1 で取得したエンドポイント。 エンドポイントの default をデータベースの実際の名前に置き換え、エンドポイントから resource_group=<resource group name> サフィックスを削除します。

      例: jdbc:hive2://amv-t4naxpqk****sparkwho.ads.aliyuncs.com:10000/adb_demo

      [ポート]

      Spark 対話型リソースグループのポート番号。 値を 10000 に設定します

      [ユーザー名]

      AnalyticDB for MySQL クラスタのデータベースアカウントの名前。

      [データベース名]

      AnalyticDB for MySQL クラスタ内のデータベースの名前。

      説明

      その他のオプションパラメータについては、「MySQL」をご参照ください。

    4. [接続テスト] をクリックします。 テストが成功したら、[確認] をクリックします。

  3. プロジェクトを作成します。

    1. DolphinScheduler Web インターフェイスにアクセスします。 上部のナビゲーションバーで、 をクリックします。。上部のナビゲーションバーで、 [クリック] プロジェクト

    2. [作成] プロジェクトをクリックします。

    3. 次の [プロジェクトの作成] ダイアログボックスで、次のようなパラメーターを構成します。プロジェクト名 および 所有ユーザー

  4. ワークフローを作成します。

    1. 作成したプロジェクトの名前をクリックします。 左側のナビゲーションウィンドウで、[ワークフロー] > [ワークフロー定義] を選択して、[ワークフロー定義] ページに移動します。

    2. [ワークフローの作成] をクリックして、[ワークフロー DAG 編集] ページに移動します。

    3. ページの左側のリストで、[SQL] を選択し、右側のキャンバスにドラッグします。

    4. [[現在のノード設定] ダイアログボックスで、次の表に示すパラメーターを構成します。

      パラメータ

      説明

      [データソースタイプ]

      データソースのタイプ。 [SPARK] を選択します。

      [データソースインスタンス]

      手順 1 で作成したデータソース。

      [SQL] [タイプ]

      SQL ジョブのタイプ。有効な値: [クエリ] および [非クエリ]

      [SQL] [ステートメント]

      SQL ステートメント。

    5. [確認] をクリックします。

    6. ページの右上隅にある [保存] をクリックします。 [基本情報] ダイアログボックスで、[ワークフロー名] などのパラメータを設定します。 [確認] をクリックします。

  5. ワークフローを実行します。

    1. 作成したワークフローを見つけ、image[操作] 列の アイコンをクリックして、ワークフローを公開します。

    2. image アイコンをクリックし、[操作] 列をクリックします。

    3. 次の 開始前にパラメーターを設定してください ダイアログボックスで、パラメーターを構成します。

    4. [確認] をクリックして、ワークフローを実行します。

  6. ワークフローの詳細を表示します。

    1. 左側のナビゲーションウィンドウで、[タスク] > [タスクインスタンス] を選択します。

    2. ワークフローのタスクを見つけ、image[操作] 列の アイコンをクリックして、ワークフローの実行結果とログを表示します。

Spark JAR ジョブのスケジュール

  1. spark-submit コマンドラインツールをインストールし、関連パラメータを指定します。

    説明

    指定する必要があるパラメータは、keyIdsecretIdregionIdclusterId、および rgName のみです。 Spark JAR パッケージがオンプレミスデバイスに保存されている場合は、ossUploadPath などの Object Storage Service(OSS)パラメータを指定する必要があります。

  2. プロジェクトを作成します。

    1. DolphinScheduler Web インターフェイスにアクセスします。 上部のナビゲーションバーで、 をクリックします。。上部のナビゲーションバーで、 [クリック] プロジェクト

    2. [作成] プロジェクトをクリックします。

    3. 次の [プロジェクトの作成] ダイアログボックスで、次のようなパラメーターを構成します。プロジェクト名 および 所有ユーザー

  3. ワークフローを作成します。

    1. 作成したプロジェクトの名前をクリックします。 左側のナビゲーションウィンドウで、[ワークフロー] > [ワークフロー定義] を選択して、[ワークフロー定義] ページに移動します。

    2. [ワークフローの作成] をクリックして、[ワークフロー DAG 編集] ページに移動します。

    3. ページの左側のリストで、[SHELL] を選択し、右側のキャンバスにドラッグします。

    4. 次の [現在のノード設定] ダイアログボックスで、次の表に示すパラメーターを構成します。

      パラメータ

      説明

      ノード名

      ワークフローノードの名前。

      スクリプト

      spark-submit ツールのインストールパスと Spark ジョブのビジネスコード。 例:

      /root/adb-spark-toolkit-submit/bin/spark-submit --class org.apache.spark.examples.SparkPi --name SparkPi --conf spark.driver.resourceSpec=medium --conf spark.executor.instances=2 --conf spark.executor.resourceSpec=medium local:///tmp/spark-examples.jar 1000.

      重要

      Spark ジョブをスケジュールする場合は、スクリプトに spark-submit ツールのインストールパスを指定する必要があります。 そうしないと、スケジューリングタスクが spark-submit コマンドを見つけられない可能性があります。

      説明

      その他のパラメータについては、「DolphinScheduler タスクパラメータ付録」をご参照ください。

    5. [確認] をクリックします。

    6. ページの右上隅にある [保存] をクリックします。 [基本情報] ダイアログボックスで、[ワークフロー名] などのパラメータを設定します。 [確認] をクリックします。

  4. ワークフローを実行します。

    1. 作成したワークフローを見つけ、image[操作] 列の アイコンをクリックして、ワークフローを公開します。

    2. image アイコンをクリックし、[操作] 列をクリックします。

    3. 次の 開始前にパラメーターを設定してください ダイアログボックスで、パラメーターを構成します。

    4. [確認] をクリックして、ワークフローを実行します。

  5. ワークフローの詳細を表示します。

    1. 左側のナビゲーションウィンドウで、[タスク] > [タスクインスタンス] を選択します。

    2. ワークフローのタスクを見つけ、image[操作] 列の アイコンをクリックして、ワークフローの実行結果とログを表示します。