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

DataWorks:ClickHouse SQL

最終更新日:Apr 10, 2026

ClickHouse SQL を使用すると、構造化データに対して分散 SQL クエリを実行し、ジョブの効率を向上させることができます。DataWorks では、ClickHouse SQL ノードを使用してタスクを開発し、定期的に実行するようにスケジュールし、他のジョブと統合できます。このトピックでは、ClickHouse SQL ノードを使用してタスクを開発するための主なワークフローについて説明します。

前提条件

  • EMR エンジンタイプには DataLake と Hadoop があります。各エンジンタイプでは、ノードを作成する前に異なる準備が必要です。ご利用のシナリオに基づき、EMR と DataWorks で必要な準備を完了してください。

  • ClickHouse データソースを作成し、ワークスペースにバインド済みであること。

    開発のために ClickHouse からデータにアクセスするには、DataWorks で ClickHouse データソースを作成し、Data Studio にバインドする必要があります。詳細については、「ClickHouse 計算リソースのバインド」をご参照ください。

  • ClickHouse SQL ノードを作成済みであること。詳細については、「スケジュールされたワークフローノードの作成」をご参照ください。

操作手順

  1. ClickHouse SQL ノードの編集ページで、次の手順を実行します。

    SQL コードの開発

    SQL エディターで、タスクコードを記述します。コードでは、${variable_name} フォーマットを使用して変数を定義できます。右側にあるScheduling SettingsペインのScheduling Parametersで、これらの変数に値を割り当てます。これにより、スケジュールされたジョブの実行に対して動的パラメーターの受け渡しが可能になります。スケジューリングパラメーターの詳細については、「スケジューリングパラメーターのソースと式」をご参照ください。例:

    CREATE DATABASE IF NOT EXISTS ck_test;
    CREATE TABLE IF NOT EXISTS  ck_test.first_table  (
    `product_code` String,
    `package_name` String
    ) ENGINE = MergeTree ORDER BY package_name SETTINGS index_granularity = 8192;
    INSERT INTO ck_test.first_table (product_code, package_name) VALUES ('1', ${var});
    SELECT * FROM ck_test.first_table;
    説明

    この例では、${var} パラメーターを 1 に設定できます。

    SQL タスクの実行

    1. Run Configuration ペインで、Compute ResourceResource Group を設定します。

      1. [計算リソース] には、DataWorks に登録した CDH クラスターの名前を選択します。

      2. [リソースグループ] には、データソースへの接続が確認されているスケジューリングリソースグループを選択します。詳細については、「ネットワーク接続ソリューション」をご参照ください。

    2. ツールバーで、Select a data source ドロップダウンメニューをクリックします。ダイアログボックスで、作成した ClickHouse データソースを選択し、Run をクリックして SQL タスクを実行します。

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

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

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