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

DataWorks:EMR Spark Streaming ノード

最終更新日:Feb 05, 2026

EMR Spark Streaming ノードは、高スループットのリアルタイムストリーミングデータを処理します。フォールトトレランスを提供し、データストリームの障害から迅速に回復できます。このトピックでは、データ開発のために EMR Spark Streaming ノードを作成して使用する方法について説明します。

前提条件

  • Alibaba Cloud E-MapReduce (EMR) クラスターを作成し、DataWorks に登録済みであること。詳細については、「DataStudio: EMR 計算リソースの関連付け」をご参照ください。

  • (オプション、RAM ユーザーに必須) タスク開発を担当する Resource Access Management (RAM) ユーザーをワークスペースに追加し、Developer または Workspace Administrator ロールを割り当て済みであること。Workspace Administrator ロールは広範な権限を持つため、慎重に付与してください。メンバーの追加に関する詳細については、「ワークスペースへのメンバーの追加」をご参照ください。

    Alibaba Cloud アカウントを使用している場合は、このステップをスキップできます。

制限事項

  • このタイプのタスクは、Serverless リソースグループ (推奨) またはスケジューリング専用リソースグループでのみ実行できます。

  • EMR on ACK Spark クラスターでは、タスク開発に EMR Spark Streaming ノードを使用することはできません。

操作手順

  1. EMR Spark Streaming ノードのエディターページで、以下の開発手順を実行します。

    EMR JAR リソースの作成と参照

    DataLake クラスター上の EMR JAR リソースを参照するには、以下の手順に従います。

    説明

    EMR Spark Streaming ノードが依存するリソースが大きすぎて DataWorks コンソールからアップロードできない場合は、リソースを HDFS に保存し、コード内で参照できます。

    spark-submit --master yarn
    --deploy-mode cluster
    --name SparkPi
    --driver-memory 4G
    --driver-cores 1
    --num-executors 5
    --executor-memory 4G
    --executor-cores 1
    --class org.apache.spark.examples.JavaSparkPi
    hdfs:///tmp/jars/spark-examples_2.11-2.4.8.jar 100
    1. EMR JAR リソースを作成します。

      1. 詳細については、「リソース管理」をご参照ください。生成された JAR ファイルを emr/jars ディレクトリに保存し、[クリックしてアップロード] をクリックします。

      2. [ストレージパス][データソース][リソースグループ] を選択します。

      3. [保存] をクリックします。

    2. EMR JAR リソースを参照します。

      1. 作成した EMR Spark Streaming ノードを開きます。コードエディターページが開きます。

      2. 左側のナビゲーションウィンドウのリソース管理セクションで、目的のリソースを見つけて右クリックし、[リソースの参照] を選択します。

      3. リソースを参照すると、EMR Spark Streaming ノードのコードエディターページに成功メッセージが表示されます。次のコマンドは一例です。リソースパッケージ、パス、バケット名などのプレースホルダーパラメーターは、実際の値に置き換えてください。

        ##@resource_reference{"examples-1.2.0-shaded.jar"}
        --master yarn-cluster --executor-cores 2 --executor-memory 2g --driver-memory 1g --num-executors 2 --class com.aliyun.emr.example.spark.streaming.JavaLoghubWordCount examples-1.2.0-shaded.jar <logService-project> <logService-store> <group> <endpoint> <access-key-id> <access-key-secret>

    ジョブコマンドの設定

    EMR Spark Streaming ノードのエディターページで、ジョブコマンドを入力します。

    spark-submit --master yarn-cluster --executor-cores 2 --executor-memory 2g --driver-memory 1g --num-executors 2 --class com.aliyun.emr.example.spark.streaming.JavaLoghubWordCount examples-1.2.0-shaded.jar <logService-project> <logService-store> <group> <endpoint> <access-key-id> <access-key-secret>
    説明
    • この例では、DataWorks にアップロードされたリソースは examples-1.2.0-shaded.jar です。

    • access-key-idaccess-key-secret を、ご利用の Alibaba Cloud アカウントの AccessKey ID と AccessKey Secret に置き換えてください。取得するには、DataWorks コンソールにログインし、右上のプロフィール画像にカーソルを合わせ、[AccessKey 管理] をクリックします。

    • EMR Spark Streaming ノードは、コード内のコメントをサポートしていません。

    (オプション) 詳細設定

    ノード設定ページの右側にある [スケジュール] タブの [EMR ノードパラメーター] > [DataWorks パラメーター] セクションで、次の表で説明するパラメーターを設定できます。

    説明
    • 使用可能な詳細設定は、次の表に示すように、EMR クラスターのタイプによって異なります。

    • [スケジュール] タブの [EMR ノードパラメーター] > [Spark パラメーター] セクションで、より多くの オープンソースの Spark プロパティ を設定できます。

    DataLake クラスター: EMR on ECS

    パラメーター

    説明

    FLOW_SKIP_SQL_ANALYZE

    SQL 文の実行モード。有効値:

    • true: 毎回複数の SQL 文を実行します。

    • false (デフォルト): 毎回 1 つの SQL 文を実行します。

    説明

    このパラメーターは、DataStudio 環境でのテスト実行でのみサポートされます。

    queue

    ジョブが送信されるスケジューリングキュー。デフォルト値: default。EMR YARN の詳細については、「基本的なキュー設定」をご参照ください。

    priority

    優先度。デフォルト値: 1。

    その他

    詳細設定にカスタムの SparkConf パラメーターを追加できます。ジョブを送信すると、DataWorks はこれらのパラメーターをコマンドに自動的に追加します。例:"spark.driver.memory" : "2g"

    説明

    Ranger 権限制御を有効にするには、spark.hadoop.fs.oss.authorization.method=rangerグローバル Spark パラメーターの設定 構成を追加して、権限制御が有効になるようにします。

    パラメーター設定の詳細については、「グローバル Spark パラメーターの設定」をご参照ください。

    ジョブの実行

    1. [計算リソース]Run Configuration セクションで、[計算リソース][DataWorks リソースグループ] を選択します。

      説明
      • タスクのリソース要件に基づいて [スケジューリング CU] を設定することもできます。デフォルトは 0.25 です。

      • パブリックネットワークまたは VPC 経由でデータソースにアクセスするには、データソースの接続性テストに合格したスケジューリングリソースグループを使用する必要があります。詳細については、「ネットワーク接続ソリューション」をご参照ください。

    2. ツールバーのパラメーターダイアログボックスで作成したデータソースを選択し、[実行] をクリックします。

  2. タスクを定期的に実行するには、そのスケジューリングプロパティを設定します。設定の詳細については、「ノードのスケジューリング設定」をご参照ください。

  3. ノードを設定した後、デプロイする必要があります。詳細については、「ノードとワークフローのデプロイ」をご参照ください。

  4. タスクがデプロイされた後、オペレーションセンターでタスクの実行ステータスを表示できます。詳細については、「オペレーションセンター入門」をご参照ください。