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

DataWorks:EMR Hive ノード

最終更新日:Feb 05, 2026

DataWorks の E-MapReduce (EMR) Hive ノードは、大規模なクラウドデータのバッチ分析を可能にします。SQLライクなステートメントを使用して分散システム内のデータを操作することで、ビッグデータワークフローを簡素化し、開発効率を向上させることができます。このプロセスは、ログデータなどの大規模なデータセットの読み取り、書き込み、管理、分析に効果的です。

前提条件

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

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

    Alibaba Cloud アカウントを使用している場合は、このステップをスキップできます。
  • DataWorks で Hive データソースを構成し、接続テストに合格済みであること。詳細については、「データソース管理」をご参照ください。

制限事項

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

  • DataWorks で DataLake またはカスタムクラスターのメタデータを管理するには、まずクラスターで EMR-HOOK を構成する必要があります。詳細については、「Hive 用 EMR-HOOK の構成」をご参照ください。

    説明

    クラスターで EMR-HOOK が構成されていない場合、DataWorks はメタデータをリアルタイムで表示したり、監査ログを生成したり、データリネージを表示したり、EMR 関連のデータガバナンスを実行したりすることはできません。

ステップ 1: EMR Hive ノードを開発する

EMR Hive ノードエディターページで、次のステップを実行します。

SQL コードの開発

SQL エディターで、タスクコードを記述します。`${variable_name}` 形式を使用して変数を定義できます。その後、[スケジュール設定] セクションの [スケジュールパラメーター] タブでこれらの変数に値を割り当てることができます。これにより、スケジュールされた実行中にパラメーターをコードに動的に渡すことができます。スケジュールパラメーターの詳細については、 をご参照ください。次のコードは例を示しています。

SHOW  TABLES ; 
SELECT '${var}'; -- スケジュールパラメーターと組み合わせて使用します。
SELECT * FROM userinfo ;
説明

SQL ステートメントのサイズは 130 KB を超えることはできません。

ステップ 2: EMR Hive ノードを構成する

(オプション) 詳細設定を構成する

[スケジュール] タブで、[DataWorks パラメーター] > [EMR ノードパラメーター] で次のプロパティを構成できます。

説明
  • 利用可能な詳細パラメーターは、以下の表に示すように、EMR クラスタータイプによって異なる場合があります。

  • タブの [Spark パラメーター] セクションの [EMR ノードパラメーター] で、さらに多くの オープンソース Spark プロパティを構成できます。

DataLake およびカスタムクラスター: EMR on ECS

パラメーター

説明

queue

ジョブ送信のスケジューリングキュー。デフォルトキューは `default` です。EMR YARN の詳細については、「基本キュー構成」をご参照ください。

priority

ジョブの優先度。デフォルト値は 1 です。

FLOW_SKIP_SQL_ANALYZE

SQL ステートメントの実行モードを指定します。有効な値:

  • true: 実行ごとに複数の SQL ステートメントを実行します。

  • false (デフォルト): 実行ごとに 1 つの SQL ステートメントを実行します。

説明

このパラメーターは、開発環境でのテスト実行のみを対象としています。

DATAWORKS_SESSION_DISABLE

開発環境でのテスト実行に適用されます。有効な値:

  • true: 各 SQL ステートメントの実行ごとに新しい JDBC 接続が作成されます。

  • false (デフォルト): 同じノード内で異なる SQL ステートメントを実行する際に、同じ JDBC 接続が再利用されます。

説明

このパラメーターが false に設定されている場合、Hive ログは yarn applicationId を出力しません。yarn applicationId を出力するには、このパラメーターを true に設定します。

その他

詳細設定でカスタム Hive 接続パラメーターを追加することもできます。

Hadoop クラスター: EMR on ECS

パラメーター

説明

queue

ジョブ送信のスケジューリングキュー。デフォルトキューは `default` です。EMR YARN の詳細については、「基本キュー構成」をご参照ください。

priority

ジョブの優先度。デフォルト値は 1 です。

FLOW_SKIP_SQL_ANALYZE

SQL ステートメントの実行モードを指定します。有効な値:

  • true: 実行ごとに複数の SQL ステートメントを実行します。

  • false (デフォルト): 実行ごとに 1 つの SQL ステートメントを実行します。

説明

このパラメーターは、開発環境でのテスト実行のみを対象としています。

USE_GATEWAY

ゲートウェイクラスターを介してジョブを送信するかどうかを指定します。有効な値:

  • true: ゲートウェイクラスターを介してジョブを送信します。

  • false (デフォルト): ゲートウェイクラスターを介さずにヘッダーノードにジョブを送信します。

説明

このノードが属するクラスターがゲートウェイクラスターに関連付けられていない場合、このパラメーターを true に設定すると、EMR ジョブの送信が失敗します。

ノードを定期的に実行する必要がある場合は、ビジネス要件に基づいてスケジュールプロパティを構成します。詳細については、「ノードスケジュール構成」をご参照ください。

ステップ 3: ノードのデバッグ

SQL タスクの実行

  1. 右側の Run Configuration [コンピューティングリソース] セクションで、[コンピューティングリソース][リソースグループ] を指定します。

    説明
    • タスクに必要なリソースに基づいて、[スケジューリング CU] の数を調整できます。デフォルト値は 0.25 CU です。

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

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

    説明

    EMR Hive ノードを使用してデータをクエリする場合、クエリは最大 10,000 行のデータを返し、合計データサイズは 10 MB を超えることはできません。

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

次のステップ

  1. ノードを構成した後、デプロイします。詳細については、「ノードとワークフローのデプロイメント」をご参照ください。

  2. ノードをデプロイした後、オペレーションセンターでスケジュールされたタスクのステータスを表示できます。詳細については、「オペレーションセンターの開始」をご参照ください。

よくある質問

Q: ノードの実行時に接続タイムアウト (ConnectException) が発生します。どうすればよいですか?

image

A: リソースグループクラスター間のネットワーク接続を確認します。コンピューティングリソースページに移動し、リソースを見つけて [リソースの初期化] をクリックします。表示されるダイアログボックスで、[再初期化] をクリックし、初期化が成功したことを確認します。

image

image