DataWorks は、ワンクリック MaxCompute データ同期ノードを提供し、MaxCompute から Hologres データベースにデータを同期します。これにより、Hologres で MaxCompute テーブルデータを効率的にクエリできます。このトピックでは、ワンクリック MaxCompute データ同期ノードの使用方法について説明します。
背景情報
SQL ステートメントを使用して MaxCompute から Hologres に直接データをインポートすることもできます。通常、こちらの方がパフォーマンスが向上します。詳細については、「SQL ステートメントを使用した MaxCompute からのデータインポート」をご参照ください。
前提条件
-
MaxCompute プロジェクトと Hologres インスタンスが作成されていること。
-
MaxCompute プロジェクトと Hologres インスタンスが DataWorks コンピューティングリソースとしてバインドされており、接続性テストが成功していること。
ワンクリック MaxCompute データ同期ノードの作成
ワンクリック MaxCompute データ同期ノードを作成済みであること。
同期ノードの設定
ワンクリック MaxCompute データ同期ノードのエディターページに移動し、パラメーターを設定します。
ソース MaxCompute テーブルの選択
ソーステーブルに対して、以下のパラメーターを設定します。
|
パラメーター |
説明 |
|
プロジェクト |
作成した MaxCompute プロジェクトの名前。 |
|
スキーマ |
MaxCompute プロジェクトのスキーマ。 |
|
テーブル名 |
ソース MaxCompute テーブルの名前。 |
|
フィルター条件 |
システムは、選択されたパーティションテーブルに対してフィルター条件を自動的に生成します。必要に応じてこの条件を調整することもできます。フィルター条件を満たすデータのみが同期されます。 説明
フィルター条件は、SQL ステートメントの |
送信先 Hologres テーブルの設定
送信先テーブルに対して、以下のパラメーターを設定します。
|
パラメーター |
説明 |
|
インスタンス |
送信先の Hologres インスタンス。Select a data source セクションで Hologres データソースを選択すると、システムが特定のインスタンスを自動的に識別します。 説明
Select a data source の横にある Pages for Managing Destination をクリックして、Holo console (instance monitoring)、Slow Query、Active connection management、DB authorization、および User Management ページを開きます。 |
|
データベース |
送信先 Hologres インスタンス内のデータベース。 |
|
スキーマ |
送信先 Hologres インスタンスの |
|
テーブル名 |
Hologres の内部テーブルの名前。同じ名前のテーブルがすでに存在する場合、以下のポリシーが適用されます:
|
|
同期フィールド |
同期するフィールドを選択します。 |
|
パーティション設定 |
同期する MaxCompute テーブルのパーティションを選択します。 説明
現在、Hologres は第 1 レベルのパーティションからのデータ同期のみをサポートしています。MaxCompute テーブルに複数のパーティションレベルがある場合、システムはそれらを Hologres の単一のパーティションレベルにマッピングし、余分なパーティションフィールドを自動的に通常フィールドに変換します。 |
|
インデックス設定 |
Hologres 内部テーブルにインデックスを作成して、同期されたデータに対するクエリを高速化します。インデックスの作成方法の詳細については、「CREATE TABLE」をご参照ください。 |
追加パラメーターの設定
|
パラメーター |
説明 |
|
GUC パラメーター |
MaxCompute からデータをインポートする前に設定する GUC パラメーター。サポートされている GUC パラメーターのリストについては、「GUC パラメーター」をご参照ください。他の SQL ステートメントはサポートされていません。 |
|
外部サーバー |
デフォルト値は |
|
SQL スクリプト |
|
同期ノードのテスト
同期ノードをテストするには、ビジネス要件に基づいてテストパラメーターを設定します。
-
ノードのデバッグ設定を行います。
エディターの右側にあるRun Configuration セクションで、Compute Resource と Resource Group を設定します。以下の表でパラメーターについて説明します。
パラメーター
説明
Compute Resource
バインドした Hologres コンピューティングリソースを選択します。
Resource Group
Hologres コンピューティングリソースをバインドした際に接続性テストに合格したリソースグループを選択します。
CUs for Scheduling
このノードはデフォルトの CU 値を使用します。変更は不要です。
スクリプトパラメーター
フィルター条件で ${Parameter Name} フォーマットを使用して変数を定義する場合、Parameter name と Parameter Value を Script Parameters セクションで指定する必要があります。 タスクが実行されると、システムは変数を指定された値で置き換えます。 詳細については、「ノードスケジューリング構成」をご参照ください。
-
ノードをテストするには、Save をクリックし、次に Run をクリックして同期タスクを開始します。
次のステップ
-
ノードのスケジューリング設定:ノードを定期的に実行する必要がある場合は、エディターの右側にある Scheduling Settings ペインでその Scheduling Policy を設定します。
-
ノードの公開:タスクを本番環境に公開するには、
アイコンをクリックして公開プロセスを開始します。プロジェクトディレクトリ内のノードは、本番環境に公開された後にのみ定期的にスケジュールされます。 -
データが MaxCompute から同期された後、HoloWeb を使用して Hologres テーブルのデータをクエリできます。詳細については、「HoloWeb」をご参照ください。
よくある質問
-
エラーメッセージ:
get table columns occurs Invalid name:xxx。 -
解決策:ソースプロジェクト名が正しく、スペースやその他の無効な文字が含まれていないことを確認してください。