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

DataWorks:EMR Presto ノード

最終更新日:Feb 05, 2026

Presto (PrestoDB とも呼ばれる) は、標準 SQL を使用して大規模なデータセットのインタラクティブな分析をサポートする、柔軟でスケーラブルな分散 SQL クエリエンジンです。DataWorks は、Presto タスクを開発し、定期的にスケジューリングするための EMR Presto ノードを提供します。このトピックでは、これらのタスクを開発するための主なワークフローと重要な考慮事項について説明します。

前提条件

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

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

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

制限事項

  • サポートされているのは、以前のバージョンのデータレイクハウス (Hadoop) クラスターのみです。新しいデータレイククラスター (DataLake) およびカスタムクラスター (Custom) はサポートされていません。

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

  • データリネージ:EMR Presto ノードタスクはデータリネージをサポートしていません。

操作手順

  1. EMR Presto ノードの設定ページで、次の手順に従ってタスクを開発します。

    SQL コードの開発

    SQL エディターで、タスクのコードを記述します。コード内で変数を ${variable_name} フォーマットを使用して定義します。その後、[スケジュール] パネルの [スケジュールパラメーター] セクションで、これらの変数に値を割り当てることができます。これにより、タスクがスケジューリングされる際に、コードにパラメーターを動的に渡すことができます。スケジュールパラメーターの使用方法に関する詳細については、「スケジュールパラメーターのソースと式」をご参照ください。次のコードは一例です。

    select '${var}'; -- スケジュールパラメーターと併用できます。
    
    select * from userinfo ;
    説明
    • SQL 文の最大サイズは 130 KB です。

    • EMR Presto ノードで実行されるクエリは、最大 10,000 行を返すことができ、合計データサイズは 10 MB を超えることはできません。

    (オプション) 詳細パラメーターの設定

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

    説明

    また、オープンソースの Presto プロパティ を、 パネルの [スケジュール] セクションで設定することもできます。

    EMR on ECS

    パラメーター

    説明

    DATAWORKS_SESSION_DISABLE

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

    • true:SQL 文が実行されるたびに、新しい JDBC 接続が作成されます。

    • false (デフォルト):同じノード内の複数の SQL 文に対して、同じ JDBC 接続が再利用されます。

    説明

    このパラメーターを false に設定すると、Hive の yarn applicationId は出力されません。yarn applicationId を出力するには、このパラメーターを true に設定してください。

    FLOW_SKIP_SQL_ANALYZE

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

    • true:複数の SQL 文が一度に実行されます。

    • false (デフォルト):一度に 1 つの SQL 文が実行されます。

    説明

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

    priority

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

    queue

    ジョブがサブミットされる YARN キュー。デフォルトのキューは default です。EMR YARN の詳細については、「基本的なキュー設定」をご参照ください。

    SQL タスクの実行

    1. Run Configuration パネルで、[コンピューティングリソース] セクションに移動し、[コンピューティングリソース][DataWorks リソースグループ] を設定します。

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

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

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

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

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

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

よくある質問

  • Q: 「クエリの実行エラー」というメッセージが表示された場合はどうすればよいですか。

    image

    A: クラスタータイプが以前のバージョンのデータレイクハウス (Hadoop) クラスターであることを確認してください。

  • Q: ノードの実行時に接続タイムアウトエラーが発生した場合はどうすればよいですか。

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

    image

    image