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

DataWorks:Hologres へのデータ同期

最終更新日:Aug 21, 2026

DataWorks のデータ同期ノードを使用すると、単一の MaxCompute テーブルから Hologres にデータを同期して、効率的なビッグデータ分析とリアルタイムクエリを実現できます。 このトピックでは、データを簡単に移行し、Hologres を活用して高性能なクエリを実行するための設定プロセスについて説明します。

背景情報

この機能は、まず MaxCompute の内部テーブルから Hologres の外部テーブルにデータをインポートし、次にそのデータを Hologres の内部テーブルに同期します。 MaxCompute から Hologres の外部テーブルへのデータ同期は、IMPORT FOREIGN SCHEMA コマンドを実行することで行われます。

前提条件

制限事項

データを読み取るための外部テーブルを作成する前に、MaxCompute のソーステーブルが存在する必要があります。

データ同期ノードの作成

Hologres のデータ同期ノードを作成し、その設定ページに移動してから、データ同期ノードを設定します。

宛先データソースの管理

ノード設定ページで、次の手順に従って宛先データソースを管理できます。

  1. ノード設定ページで、データソース の横にあるドロップダウンリストから、バインド済みの宛先 Hologres データソースを選択します。

  2. ターゲット管理 をクリックします。 表示されたダイアログボックスで、必要な操作を選択します。

    • HoloWeb (インスタンス監視):HoloWeb で宛先 Hologres インスタンスを管理します。

    • スロークエリ:宛先 Hologres インスタンスの過去のスロークエリを表示および分析します。

    • アクティブな接続管理:宛先 Hologres インスタンスへの接続を診断および管理します。

    • データベースの権限付与:宛先 Hologres インスタンスにデータベースを追加するか、データベース権限を付与します。

    • ユーザー管理:HoloWeb のユーザー管理モジュールで、宛先 Hologres インスタンスのユーザーを追加または削除し、権限を付与します。

データ同期ノードの設定

宛先データソースを選択した後、ノード設定ページで次の手順に従って同期タスクを設定します。

MaxCompute ソーステーブルの選択

次のパラメーターを使用して、MaxCompute ソーステーブルを選択します。

パラメーター

説明

[ソースオブジェクトタイプ]

デフォルト値は MaxCompute Table です。

[プロジェクト]

同期する MaxCompute プロジェクトを選択します。

[スキーマ]

使用するスキーマを選択します。

[テーブル名]

同期するテーブルを選択します。

[フィルター条件]

システムはパーティションテーブルのフィルター条件を生成します。 この条件は必要に応じて変更できます。 条件を満たすデータのみが同期されます。

説明

フィルター条件は、SQL ステートメントの WHERE 句に続く内容です。

Hologres 宛先テーブルの設定

次のパラメーターを使用して、Hologres 宛先テーブルを設定します。

パラメーター

説明

[インスタンス]

選択したデータソースに基づいて、このフィールドはシステムによって自動的に入力されます。

[データベース]

選択したデータソースに基づいて、このフィールドはシステムによって自動的に入力されます。

[スキーマ]

Hologres 内部テーブルのスキーマを指定します。

[テーブル名]

Hologres 内部テーブルの名前を指定します。 指定した名前のテーブルが既に存在する場合、次のように処理されます。

  • 非パーティションテーブルの場合:既存のテーブルとそのデータは削除され、新しいテーブルが作成されます。

  • パーティションテーブルの場合:既存のテーブルは保持されます。 Hologres は新しいパーティションを作成し、そこにデータをインポートします。

説明

新しいテーブルと既存のテーブルのスキーマが異なる場合、エラーが発生します。

[フィールド]

[フィールドの同期]

同期するフィールドを選択し、Hologres 宛先テーブルのフィールドのデータ型を設定します。

[パーティション設定]

新しいテーブルのパーティションキーフィールドを選択します。

[インデックスの設定]

Hologres 内部テーブルにインデックスを作成して、データクエリを高速化します。 インデックスの作成方法の詳細については、「CREATE TABLE」をご参照ください。

  • ストレージモード:Hologres は、行ストア、列ストア、ハイブリッド行・列ストアの 3 つのテーブルストレージ形式をサポートしています。 ユースケースに基づいてストレージ形式を設定します。

  • Time to Live (TTL) (秒):TTL は、データが最初に書き込まれたときに開始されます。 TTL 期間が経過すると、データは自動的に削除されます。 デフォルトの TTL は[無期限]です。

  • Binlog:テーブルの Binlog を有効にするかどうかを設定します。 詳細については、「Hologres Binlog のサブスクライブ」をご参照ください。

  • Binlog Time to Live:デフォルトの TTL は[無期限]です。

  • フィールドプロパティの設定:特定のフィールドを検索し、そのプロパティを設定できます。

詳細設定

データを同期する際、高度な設定 セクションで GUC パラメーターと外部サーバーを設定できます。

パラメーター

説明

[GUC パラメーター]

MaxCompute からデータをインポートする前に、いくつかの GUC パラメーターを設定する必要があります。 サポートされる GUC パラメーターの詳細については、「GUC パラメーター」をご参照ください。 その他の SQL ステートメントはサポートされていません。

[外部サーバー]

デフォルト値は odps_server です。

データ同期ノードのデバッグ

同期タスクをデバッグするには、要件に応じて適切なデバッグ情報を設定します。

  1. デバッグ用のノードプロパティを設定します。

    ノード設定ページの右側にあるデバッグの構成 ペインで、計算リソース とリソースグループ を設定します。 次の表にパラメーターを示します。

    パラメーター

    説明

    [計算リソース]

    バインドした Hologres コンピューティングリソースを選択します。

    [リソースグループ]

    Hologres コンピューティングリソースをバインドした際に接続テストに合格したリソースグループを選択します。

    [スケジューリング CU]

    タスクに必要な CU 数を設定します。 デフォルト値は 0.25 です。

    パラメーター

    フィルター条件で ${ParameterName} 形式を使用して変数を定義する場合、スクリプトパラメーター セクションでパラメーター名 とパラメーター値 を指定する必要があります。 実行時に、変数が実際の値に動的に置き換えられます。 詳細については、「ノードのスケジューリング設定」をご参照ください。

  2. ノードをデバッグして実行するには、保存 をクリックしてから実行 をクリックします。

次のステップ

  • ノードのスケジューリング設定:ノードが定期的なスケジューリングを必要とする場合は、右側のスケジューリングポリシー ペインでスケジューリング設定 を設定し、スケジューリングプロパティを設定します。

  • ノードのデプロイ:タスクを本番環境にデプロイする必要がある場合は、image アイコンをクリックしてデプロイプロセスを開始します。 ノードは、本番環境にデプロイされた後にのみ定期的に実行されます。

よくある質問

  • フィールドタイプの不一致:設定中にフィールドのデータ型が一致しないと、同期タスクは失敗します。 Hologres テーブルのフィールドタイプ設定が正確であることを確認してください。

  • 同期した単一パーティションのデータが実際のデータと一致しない:ソースで設定したフィルター条件が正しいかどうかを確認してください。