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

Lindorm:Spark ジョブをローカルでデバッグする

最終更新日:Nov 09, 2025

このトピックでは、Spark ジョブの開発プロセス中に Spark ジョブをローカルで実行およびデバッグする方法について説明します。

前提条件

  • Lindorm コンピュートエンジンのパブリックエンドポイントを有効にしていること。

  • ローカル IP アドレスが Lindorm インスタンスのホワイトリストに追加されていること。 詳細については、「ホワイトリストを設定する」をご参照ください。

  • Spark ジョブプロジェクトが準備されていること。

Spark ジョブをローカルで実行する

  1. 環境パッケージから Lindorm コンピュートエンジンの最新の環境インストールパッケージをダウンロードします。

  2. ダウンロードしたパッケージを解凍します。 展開用のカスタムパスを指定できます。

  3. コンピュートエンジンの環境変数をローカルで設定します。 展開パスを SPARK_HOME 環境変数として設定します。

    • Windows でコンピュートエンジンの環境変数を設定するには、次の手順を実行します。

      1. ローカルマシンで [システムプロパティ] ページを開き、[環境変数] をクリックします。

      2. [環境変数] ウィンドウで、[システム変数] セクションの [新規] をクリックします。

      3. [新しいシステム変数] ウィンドウで、次のパラメーターを入力します。

        • [変数名]: SPARK_HOME と入力します。

        • [変数値]: パッケージが解凍されたパスを入力します。

      4. [OK] をクリックします。

      5. [適用] をクリックします。

    • Linux でコンピュートエンジンの環境変数を設定するには、export SPARK_HOME="<パッケージが解凍されたパス>" コマンドを実行し、このコマンドを ~/.bashrc に追加します。

  4. Spark ジョブプロジェクトをパッケージ化し、$SPARK_HOME/bin/spark-submit を使用して Spark ジョブを送信します。 以下にジョブ送信の例を示します。

    1. Spark ジョブの例を例として、プロジェクトをダウンロードして解凍します。

    2. 次のパラメーターを設定します。

      パラメーター

      説明

      spark.sql.catalog.lindorm_table.url

      ld-bp1z3506imz2f****-proxy-lindorm-pub.lindorm.rds.aliyuncs.com:30020.

      LindormTable にアクセスするためのパブリックエンドポイント。 HBase Java API を介して Lindorm インスタンスの LindormTable にアクセスするためのパブリックエンドポイントを入力します。 同じ Lindorm インスタンスの LindormTable のみがサポートされます。

      spark.sql.catalog.lindorm_table.username

      デフォルトのユーザー名は root です。

      LindormTable にアクセスするためのユーザー名。

      spark.sql.catalog.lindorm_table.password

      デフォルトのパスワードは root です。

      LindormTable にアクセスするためのパスワード。

      $SPARK_HOME/bin/spark-submit \
      # --jars を使用してジョブの依存関係にある JAR ファイルを追加できます。 その他のパラメーターについては、spark-submit -h をご参照ください。
      --class com.aliyun.lindorm.ldspark.examples.LindormSparkSQLExample \
      lindorm-spark-examples/target/lindorm-spark-examples-1.0-SNAPSHOT.jar
      説明

      Spark ジョブプロジェクトを送信するときに実行モードを指定しない場合、ジョブはデフォルトでローカルで実行されます。 spark.master=local[*] パラメーターを指定することもできます。

    3. SQL コードに含まれるスキーマに基づいて、対応するデータベーステーブル構造を作成します。

    4. mvn clean package を使用してジョブをパッケージ化します。

  5. ジョブのローカル開発が完了したら、JAR ジョブを送信して Spark ジョブをクラウド上で実行できます。 詳細については、「ステップ 1: 依存関係を設定する」をご参照ください。 Spark ジョブで使用される接続アドレスを Lindorm コンピュートエンジンのプライベートネットワーク接続アドレスに変更します。

Spark ジョブをデバッグする

Spark ジョブの例を例として、IntelliJ IDEA を使用して Spark ジョブをデバッグします。 IntelliJ IDEA は IntelliJ IDEA の公式サイトからダウンロードできます。

  1. ステップ 1 から ステップ 3 を実行します。

  2. IntelliJ IDEA を開き、pom.xml ファイル内の Spark 関連の依存関係を <scope>provided</scope> として設定します。

  3. プロジェクトの依存関係に $SPARK_HOME/jars を追加します。

    1. IntelliJ IDEA の上部のメニューバーで、[ファイル] > [プロジェクト構造] を選択します。

    2. 左側のナビゲーションウィンドウで、[プロジェクト設定] > [ライブラリ] を選択し、+ をクリックして Java クラスライブラリを追加します。

    3. $SPARK_HOME/jars を選択します。

    4. [OK] をクリックします。

  4. Spark ジョブプログラムを実行します。 ジョブの実行中に、ログで指定されたリンクアドレスを使用して SparkUI を表示できます。

    2022/01/14 15:27:58 INFO SparkUI:Bound SparkUI to 0.0.0.0,and started at http://30.25.XX.XX:4040