Hologres で MaxCompute データに対するクエリを高速化する必要がある場合は、データカタログが提供する MaxCompute メタデータマッピング機能を使用して、MaxCompute テーブルのメタデータを Hologres にマッピングできます。 これにより、Hologres 外部テーブルを使用して MaxCompute データに対するクエリを高速化できます。
背景情報
Hologres の外部テーブルと外部データベースを使用すると、MaxCompute などの外部データソースのデータに対するクエリを高速化できます。 データを Hologres 内部ストレージにインポートすることなく、Hologres の外部データに対して直接操作を実行できます。
DataWorks の MaxCompute メタデータマッピング機能は、Hologres の外部テーブル機能を活用して、Hologres に MaxCompute 外部テーブルを作成することにより、指定された MaxCompute データを Hologres にマッピングします。 これにより、MaxCompute データに対するクエリが高速化されます。
DataWorks を使用すると、プロジェクト、スキーマ、およびテーブルレベルの MaxCompute メタデータを視覚的に Hologres にすばやくマッピングできます。
プロジェクトレベルのメタデータマッピング: このタイプのマッピングは、Hologres 外部データベースに基づいて実装されます。 Hologres 外部データベースの作成方法については、「CREATE EXTERNAL DATABASE」をご参照ください。
スキーマレベルのメタデータマッピング: このタイプのマッピングは、自動ロード機能を使用して作成された Hologres 外部テーブルに基づいて実装されます。
テーブルレベルのメタデータマッピング: このタイプのマッピングは、CREATE FOREIGN TABLE 文を使用して作成された Hologres 外部テーブルに基づいて実装されます。
Hologres を使用した MaxCompute データに対するクエリの高速化については、「MaxCompute データに対するクエリの高速化」をご参照ください。
制限事項
MaxCompute 内部プロジェクトのみが、MaxCompute メタデータの Hologres へのマッピングをサポートしています。
Hologres V3.0.7 以降のみが、MaxCompute メタデータの Hologres へのマッピングをサポートしています。
MaxCompute メタデータは、Hologres 専用インスタンスにのみマッピングできます。
注意事項
MaxCompute でサポートされているデータ型と Hologres でサポートされているデータ型は異なり、一部のデータ型はマッピングをサポートしていません。 MaxCompute メタデータを Hologres にマッピングする前に、「MaxCompute と Hologres 間のデータ型マッピング」をよく読んで、ビジネス要件が期待どおりに満たされるかどうかを確認する必要があります。
機能のエントリポイント
DataWorks コンソールの ワークスペースアクション
Data Studio ページの左側のナビゲーションウィンドウで、
アイコンをクリックして、[データカタログ] ペインに移動します。[データカタログ] ウィンドウの MaxCompute ディレクトリで、メタデータを Hologres にマッピングする必要がある MaxCompute プロジェクト、スキーマ、またはテーブルを見つけ、プロジェクト、スキーマ、またはテーブル名を右クリックして、[Hologres へのメタデータマッピング] を選択します。
プロジェクトレベルのメタデータマッピング
MaxCompute プロジェクトレベルのメタデータマッピング機能は、指定された Hologres インスタンスに MaxCompute プロジェクトと同じ名前の Hologres 外部データベースを作成し、外部テーブルを使用して MaxCompute プロジェクトのメタデータを Hologres インスタンスにマッピングします。
[データカタログ] ウィンドウの MaxCompute ディレクトリで、メタデータを Hologres にマッピングする必要がある MaxCompute プロジェクトを見つけ、
アイコンをクリックして、Hologres へのメタデータマッピング を選択します。[Hologres へのメタデータマッピング] タブで、パラメータを設定します。
MaxCompute ソース
パラメータ
説明
ソースオブジェクトタイプ
メタデータを Hologres にマッピングする必要があるオブジェクトのタイプ。 このパラメータの値は
MaxCompute Projectに固定されています。ソースオブジェクト名
メタデータを Hologres にマッピングする必要があるプロジェクトの名前。 デフォルトでは、このパラメータの値は現在の MaxCompute プロジェクトの名前であり、値を変更することはできません。
Hologres デスティネーション
パラメータ
説明
インスタンス検索方法
Hologres インスタンスを検索する方法。 有効な値:
[DataWorks データソースから]: 現在のワークスペースに関連付けられている Hologres データソースを選択して、目的の Hologres インスタンスを選択します。 この値を選択する場合は、データソース パラメータも設定して、Hologres インスタンスを指定する必要があります。 また、データソースに指定されたアクセス ID に、Hologres スーパーユーザーの権限と、ソース MaxCompute テーブルに対する読み取りおよび書き込み権限があることを確認する必要があります。
説明運用環境またはワークスペース管理者ロールが割り当てられているユーザーのみが、運用環境に追加されたデータソースを選択できます。
[承認済み]: 現在の Alibaba Cloud アカウント内でアクセス権限を持つ目的の Hologres インスタンスを選択します。 この値を選択する場合は、[Hologres インスタンス] パラメータも設定する必要があります。 また、Hologres スーパーユーザーの権限と、ソース MaxCompute テーブルに対する読み取りおよび書き込み権限があることを確認する必要があります。
説明Hologres V3.0.7 以降のみが、MaxCompute メタデータの Hologres へのマッピングをサポートしています。
MaxCompute メタデータは、Hologres 専用インスタンスにのみマッピングできます。
外部データベース
指定された Hologres 専用インスタンスに作成される外部データベースの名前。 MaxCompute プロジェクトのメタデータは、リアルタイムで Hologres 外部データベースにマッピングされます。 MaxCompute プロジェクトのメタデータを Hologres 外部データベースにマッピングし続ける必要がない場合は、外部データベースを削除できます。
[Hologres へのメタデータマッピング] タブの上部ツールバーにある [実行] をクリックします。 システムは CREATE EXTERNAL DATABASE 文を実行して Hologres 外部データベースを作成し、MaxCompute プロジェクトのメタデータを Hologres 外部データベースにマッピングします。
スキーマレベルのメタデータマッピング
MaxCompute スキーマレベルのメタデータマッピング機能は、外部テーブルを使用して MaxCompute スキーマのメタデータを Hologres にマッピングします。
システムが [データカタログ] ウィンドウに MaxCompute スキーマを表示できるようにするには、関連する MaxCompute プロジェクトのスキーマ機能を有効にする必要があります。 詳細については、「スキーマ関連の操作」をご参照ください。
[データカタログ] ウィンドウの MaxCompute ディレクトリで、メタデータを Hologres にマッピングする必要があるスキーマを見つけ、
アイコンをクリックして、Hologres へのメタデータマッピング を選択します。[Hologres へのメタデータマッピング] タブで、次のパラメータを設定します。
MaxCompute ソース
パラメータ
説明
ソースオブジェクトタイプ
メタデータを Hologres にマッピングする必要があるオブジェクトのタイプ。 このパラメータの値は
MaxCompute Schemaに固定されています。ソースオブジェクト名
メタデータを Hologres にマッピングする必要がある MaxCompute スキーマの名前。 デフォルトでは、このパラメータの値は現在の MaxCompute スキーマの名前であり、値を変更することはできません。
Hologres デスティネーション
パラメータ
説明
インスタンス検索方法
Hologres インスタンスを検索する方法。 有効な値:
DataWorks データソースから: 現在のワークスペースに関連付けられている Hologres データソースを選択して、目的の Hologres インスタンスを選択します。この値を選択した場合、[データソース] パラメーターと [スキーマ] パラメーターを構成して、Hologres インスタンスと Hologres インスタンスのスキーマを指定する必要もあります。さらに、データソースに指定されたアクセス ID に、ソースの MaxCompute テーブルと Hologres インスタンスに対する読み取りおよび書き込み権限があることを確認する必要があります。
説明運用環境またはワークスペース管理者ロールが割り当てられているユーザーのみが、運用環境に追加されたデータソースを選択できます。
[自分が承認されている]: 現在の Alibaba Cloud アカウント内でアクセス権限を持つ Hologres インスタンスを選択します。この値を選択した場合、[Hologres インスタンス]、[データベース]、および [スキーマ] パラメーターも構成する必要があります。さらに、ソースの MaxCompute テーブルと Hologres インスタンスに対する読み取りおよび書き込み権限を持っていることを確認する必要があります。
説明Hologres V3.0.7 以降のみが、MaxCompute メタデータの Hologres へのマッピングをサポートしています。
MaxCompute メタデータは、Hologres 専用インスタンスにのみマッピングできます。
データベース
Hologres インスタンス内の既存のデータベースを選択します。
スキーマ
Hologres 専用インスタンスに作成されるスキーマの名前。 MaxCompute スキーマのメタデータは、Hologres スキーマにマッピングされます。
説明Hologres 専用インスタンスでのスキーマの作成は 1 回限りの操作です。 スキーマが作成された後、スキーマにマッピングされたメタデータは自動的にリフレッシュされません。 メタデータをリフレッシュするには、スキーマを削除し、スキーマレベルのメタデータマッピングを手動で作成する必要があります。
[Hologres へのメタデータマッピング] タブの上部ツールバーにある [実行] をクリックします。 システムは 自動ロード機能を使用して Hologres 外部テーブルを作成し、Hologres 外部テーブルを使用して MaxCompute スキーマのメタデータを Hologres スキーマにマッピングします。
テーブルレベルのメタデータマッピング
MaxCompute テーブルレベルのメタデータマッピング機能は、Hologres 外部テーブルを使用して、指定された MaxCompute テーブルを指定された Hologres テーブルにマッピングします。 ビジネス要件に基づいて、Hologres 外部テーブルのパスと名前を指定できます。
[データカタログ] ウィンドウの MaxCompute ディレクトリで、メタデータを Hologres にマッピングする必要がある MaxCompute テーブルを見つけ、テーブル名を右クリックして、[Hologres へのメタデータマッピング] を選択します。
[Hologres へのメタデータマッピング] タブで、次のパラメータを設定します。
MaxCompute ソース
パラメータ
説明
ソースオブジェクトタイプ
メタデータを Hologres にマッピングする必要があるオブジェクトのタイプ。 このパラメータの値は
MaxCompute Tableに固定されています。ソースオブジェクト名
メタデータを Hologres にマッピングする必要がある MaxCompute テーブルの名前。 デフォルトでは、このパラメータの値は現在の MaxCompute テーブルの名前であり、値を変更することはできません。
Hologres デスティネーション
パラメータ
説明
インスタンス検索方法
Hologres インスタンスを検索する方法。 有効な値:
DataWorks データソースからデータソーススキーマ、外部テーブル: 現在のワークスペースに関連付けられている Hologres データソースを選択して、目的の Hologres インスタンスを選択します。 この値を選択する場合は、、、および パラメータも設定して、Hologres インスタンス、Hologres インスタンスのスキーマ、および Hologres 外部テーブルを指定する必要があります。 また、データソースに指定されたアクセス ID に、ソース MaxCompute テーブルと Hologres インスタンスに対する読み取りおよび書き込み権限があることを確認する必要があります。
説明運用環境またはワークスペース管理者ロールが割り当てられているユーザーのみが、運用環境に追加されたデータソースを選択できます。
[承認済み]: 現在の Alibaba Cloud アカウント内でアクセス権限を持つ Hologres インスタンスを選択します。この値を選択した場合、[Hologres インスタンス]、[データベース]、[スキーマ]、および [外部テーブル] パラメーターも構成する必要があります。さらに、ソースの MaxCompute テーブルと Hologres インスタンスに対する読み取りおよび書き込み権限を持っていることを確認する必要があります。
説明Hologres V3.0.7 以降のみが、MaxCompute メタデータの Hologres へのマッピングをサポートしています。
MaxCompute メタデータは、Hologres 専用インスタンスにのみマッピングできます。
データベース
Hologres インスタンス内の既存のデータベースを選択します。
スキーマ
Hologres インスタンスの指定されたデータベース内の既存のスキーマを選択します。
外部テーブル
指定された Hologres 専用インスタンスのデータベースに作成される外部テーブルの名前。 MaxCompute テーブルのメタデータは、Hologres 外部テーブルにマッピングされます。
説明Hologres 専用インスタンスでの外部テーブルの作成は 1 回限りの操作です。 外部テーブルが作成された後、外部テーブルにマッピングされたメタデータは自動的にリフレッシュされません。 メタデータをリフレッシュするには、外部テーブルを削除し、テーブルレベルのメタデータマッピングを手動で作成する必要があります。
フィールド
[マッピングフィールド] タブと [パーティション構成] タブで、ビジネス要件に基づいて Hologres 外部テーブルのパラメーターを構成します。
テーブル名競合の操作
テーブル名競合の処理に使用するポリシー。 有効な値:
スキップしてテーブルを作成しない
上書き、既存のテーブルを削除して別のテーブルを作成する
エラーを報告する
[Hologres へのメタデータマッピング] タブの上部ツールバーにある [実行] をクリックします。 システムは CREATE FOREIGN TABLE 文を実行して Hologres 外部テーブルを作成し、MaxCompute テーブルのメタデータを Hologres 外部テーブルにマッピングします。
次のステップ
Hologresデータカタログ ウィンドウに表示される ディレクトリで、作成された外部テーブルを表示します。
Hologres SQLData Studio ページで ノードを作成し、Hologres SQL ノードを使用して、外部テーブルを使用して MaxCompute データに対するクエリを高速化します。