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

ApsaraDB for ClickHouse:DataWorksを使用したデータの同期

最終更新日:Mar 10, 2025

このトピックでは、DataWorksを使用してMaxComputeからApsaraDB for ClickHouseにデータを同期する方法について説明します。

背景情報

DataWorksのバッチデータ同期機能を使用して、さまざまなデータソースからApsaraDB for ClickHouseにデータを同期できます。 バッチデータ同期でサポートされているデータソースの詳細については、「サポートされているデータソースの種類と同期操作」をご参照ください。

前提条件

使用上の注意

  • ApsaraDB for ClickHouseは、Data Integration専用リソースグループのみをサポートしています。

  • 以前に同期されたテーブルを同期する場合は、TRUNCATE table <TABLE name>; ステートメントを実行して、ApsaraDB for ClickHouseテーブルの同期データをクリアします。

手順

  1. データソースを追加します。

    MaxComputeおよびApsaraDB for ClickHouseのデータソースを追加する必要があります。

    説明

    詳細については、「MaxCompute データソースの追加」および「ClickHouseデータソースの追加」をご参照ください。

  2. MaxComputeテーブルを作成します。

    1. DataWorksコンソールにログインします。

    2. 左側のナビゲーションウィンドウで、ワークスペース.

    3. 上部のナビゲーションバーで、目的のワークスペースが存在するリージョンを選択します。

    4. ワークスペースページ、ワークスペースを見つけて、ショートカット > データ开発で、アクション列を作成します。

    5. DataStudioページの上にポインタを移動します。新建アイコンと選択テーブルの作成 > MaxCompute > テーブル.

    6. [テーブルの作成] ダイアログボックスで、[パス] ドロップダウンリストからパスを選択し、[名前] パラメーターを設定します。 この例では、テーブル名としてodptabletest1が使用されています。 [作成] をクリックします。

    7. 一般セクションでパラメーターを設定します。

      基本属性

      下表に、各パラメーターを説明します。

      パラメーター

      説明

      表示名

      テーブルの表示名。

      テーマ

      テーブルの格納と管理に使用されるフォルダー。 テーブルを格納するレベル1フォルダとレベル2フォルダを指定できます。 レベル1のテーマとレベル2のテーマのパラメーターを使用して、ビジネスカテゴリに基づいてテーブルを分類できます。 同じビジネスカテゴリのテーブルを同じフォルダに格納できます。

      説明

      [DataStudio] ページの [Workspace Tables] ペインにあるレベル1およびレベル2のテーマを使用すると、フォルダー内のテーブルをより適切に管理できます。 現在のテーブルは、[ワークスペーステーブル] ウィンドウでテーマごとにすばやく見つけることができます。 利用可能なテーマがない場合は、作成できます。 テーマの作成方法については、「テーブルの設定の管理」トピックのテーブルのフォルダの作成または管理セクションを参照してください。

    8. クリックDDLツールバーで

    9. [DDL] ダイアログボックスで次の文を入力し、[テーブルスキーマの生成] をクリックします。

      CREATE TABLE IF NOT EXISTS odptabletest1
      (    
      v1  TINYINT,    
      v2  SMALLINT                
      );
    10. 開発環境へのコミット本番環境へのコミットシーケンスで。

  3. MaxComputeテーブルにデータを書き込みます。

    1. DataStudioページをクリックします。アドホッククエリ左側のナビゲーションウィンドウに表示されます。

    2. ポインターを新建アイコンと選択作成 > ODPS SQL.

    3. ノードの作成ダイアログボックスで、パスドロップダウンリストを設定し、名前パラメーターを使用します。

    4. 確認.

    5. ノードの編集ページで、次の文を入力してMaxComputeテーブルにデータを書き込みます。

      insert into odptabletest1 values (1,"a"),(2,"b"),(3,"c"),(4,"d");
    6. 执行ツールバーのアイコンをクリックします。

    7. MaxComputeコンピューティングコストの見積もりダイアログボックスで、実行.

  4. ApsaraDB for ClickHouseテーブルの作成

    1. ApsaraDB for ClickHouse コンソールにログインします。

    2. 上部のナビゲーションバーで、目的のクラスターがデプロイされているリージョンを選択します。

    3. クラスターページで、クラスターエディションに基づいてタブをクリックし、管理するクラスターのIDをクリックします。

    4. クラスター情報ページをクリックします。データベースへのログオン右上隅にあります。

    5. データベースインスタンスにログインダイアログボックスで、データベースアカウントのユーザー名とパスワードを入力し、ログイン.

    6. 次の文を入力し、[実行 (F8)] をクリックします。 サンプル文:

      create table default.dataworktest ON CLUSTER default (
      v1 Int, 
      v2 String
      ) ENGINE = MergeTree ORDER BY v1;
      説明

      ApsaraDB for ClickHouseテーブルのスキーマタイプは、MaxComputeテーブルのスキーマタイプをマッピングする必要があります。

  5. ワークフローを作成します。

    すでにワークフローがある場合は、この手順をスキップします。

    1. DataStudioページをクリックします。スケジュール済みワークフロー左側のナビゲーションウィンドウに表示されます。

    2. ポインターを新建アイコンと選択ワークフローの作成.

    3. ワークフローの作成ダイアログボックスで、ワークフロー名パラメーターを使用します。

      重要

      名前は1 ~ 128文字で、英数字、アンダースコア (_) 、ピリオド (.) を使用できます。

    4. 作成.

  6. バッチ同期ノードを作成します。

    1. 新しく作成したワークフローをクリックし、右クリックします。データ統合.

    2. 選択ノードの作成 > オフライン同期.

    3. ノードの作成ダイアログボックスで、名前パラメータからパスを選択し、パスドロップダウンリスト。

      重要

      ノード名は1 ~ 128文字で、英数字、アンダースコア (_) 、およびピリオド (.) を使用できます。

    4. 確認.

  7. データソースと宛先を設定します。

    1. Source: サポートされているデータソースを選択します。 この例では、MaxComputeが選択されています。

      选择数据源

      下表に、各パラメーターを説明します。

      パラメーター

      説明

      接続

      データソースのタイプと名前。

      制作プロジェクト名

      本番環境のプロジェクトの名前。 値は変更できません。

      Table

      同期するテーブル。The table that you want to synchronize.

      パーティションキー列

      毎日の増分データが特定の日付のパーティションに格納されている場合は、パーティション情報を指定して毎日の増分データを同期できます。 たとえば、v17${bizdate} に設定します。

      説明

      DataWorksは、パーティション分割されたMaxComputeテーブルのフィールドをマッピングできません。 パーティション分割されたMaxComputeテーブルからデータを読み取る場合は、MaxCompute Readerを設定するときに各パーティションを指定する必要があります。

      説明

      パラメーターの詳細については、「MaxCompute データソース」をご参照ください。

    2. ターゲット: を選択ClickHouse.

      选择数据源

      下表に、各パラメーターを説明します。

      パラメーター

      説明

      接続

      データソースのタイプと名前。 [ClickHouse] を選択します。

      Table

      同期されたデータをインポートするテーブル。

      主キーまたは一意キーの競合処理

      この値をinsert into (Insert) に設定します。

      Pre sql

      同期タスクが実行される前に実行するSQL文。

      ポストsql

      同期タスクの実行後に実行するSQL文。

      一括挿入バイトサイズ

      挿入される最大バイト数。

      バッチ数

      1つのバッチに挿入されるデータエントリの数。

    3. (オプション) マッピング: フィールドマッピングを選択できます。 左側のフィールドは右側のフィールドに対応します。

      字段映射

      説明

      パラメーターの詳細については、「コードレスUIを使用したバッチ同期タスクの設定」トピックの「手順4: ソースフィールドと宛先フィールド間のマッピングの設定」をご参照ください。

    4. (オプション)チャンネル: 最大伝送速度とダーティデータチェックルールを設定します。

      通道控制

      説明

      パラメーターの詳細については、コードレスUIを使用したバッチ同期タスクの設定の手順5: チャネル制御ポリシーの設定セクションをご参照ください。

  8. Data Integrationのリソースグループを設定します。

    右側の [リソースグループの設定] をクリックし、[排他的リソースグループ] ドロップダウンリストからグループを選択します。集成资源组配置

  9. 同期タスクを実行して保存します。

    1. をクリックし、保存ツールバーのアイコンをクリックして、同期タスクを保存します。

    2. ツールバーの运行アイコンをクリックして、同期タスクを実行します。p353650.png

データ同期結果の確認

  1. ApsaraDB for ClickHouse コンソールにログインします。

  2. 上部のナビゲーションバーで、目的のクラスターがデプロイされているリージョンを選択します。

  3. On theクラスターページで、クラスターエディションに基づいてタブをクリックし、管理するクラスターのIDをクリックします。

  4. On theクラスター情報ページをクリックします。データベースへのログオン右上隅にあります。

  5. では、データベースインスタンスにログインダイアログボックスで、データベースアカウントのユーザー名とパスワードを入力し、ログイン.

  6. 次のクエリステートメントを入力し、[実行] (F8) をクリックして、データが同期されているかどうかを確認します。

    SELECT * FROM dataworktest;

    次の結果が返されます。查询结果

    説明

    クエリステートメントの実行後に結果が返された場合、データはMaxComputからApsaraDB for ClickHouseに同期されています。