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

Hologres:Hologresソーステーブル

最終更新日:Jan 11, 2025

このトピックでは、排他モードのBlinkを使用してHologresソーステーブルを作成する方法について説明します。

使用上の注意

デフォルトでは、HologresソーステーブルはバッチモードでHologresテーブルからデータを読み取ります。この場合、Hologresテーブルのすべてのデータは1回だけスキャンされます。 Hologresソーステーブルは、スキャン後にHologresテーブルにインポートされたデータを読み取りません。 Hologresのデータをリアルタイムで消費する場合は、Hologresバイナリログをサブスクライブする必要があります。 詳細については、「Hologresバイナリログのサブスクライブ」をご参照ください。

制限事項

Hologresでは、Holo-blinkコネクタを使用して、Hologresソーステーブルからデータを読み取り、ディメンションテーブルを結合できます。 Holo-blinkコネクタには、次の制限があります。

  • デフォルトでは、Holo-blinkコネクタを使用して、[行指向] テーブルからのみデータを読み取ることができます。 列指向テーブルからデータを読み取る場合は、コードに bulkread='true' を追加する必要があります。

  • プライマリキーを持つ行指向テーブルを作成する場合は、プライマリキーをテーブルの [クラスタリングキー] として構成する必要があります。 たとえば、次のステートメントを実行して、Hologresソーステーブルを作成できます。

    begin;
    create table test(a int primary key, b text, c text[], d float8, e int8);
    call set_table_property('test', 'orientation', 'row');
    call set_table_property('test', 'clustering_key', 'a');
    commit;
  • Hologres接続は、 V3.6より前のバージョンの排他モードのBlinkではサポートされていません。 Holo-blinkコネクタを使用し、関連するJARファイルを参照して、Hologresソーステーブルを作成する必要があります。 JARファイルを取得し、データ定義言語(DDL)ステートメントを実行してHologresソーステーブルを作成するには、DingTalkグループのテクニカルサポートにお問い合わせください。 オンラインテクニカルサポートの入手方法の詳細については、「Hologresのオンラインサポートの入手」をご参照ください。

DDL構文

  • Hologres接続は、 V3.6以降の排他モードのBlinkでサポートされています。 たとえば、次のステートメントを実行して、Hologresソーステーブルを作成できます。

    CREATE TABLE holo_dim_table 
    (
        pk VARCHAR
        ,seller_id VARCHAR
        ,seller_bc_type VARCHAR
        ,seller_tag  VARCHAR
        ,PRIMARY KEY (pk)
    ) with (
        type = 'hologres',
        `endpoint` = '<yourEndpoint>', -- Hologresインスタンスの仮想プライベートクラウド(VPC)エンドポイント。
        `username` = '<yourUsername>', -- Alibaba CloudアカウントのAccessKey ID。
        `password` = '<yourPassword>', -- Alibaba CloudアカウントのAccessKeyシークレット。
        `dbname` = '<yourDbname>', -- 接続先のHologresデータベースの名前。
        `tablename` = '<yourTablename>', -- データを読み取るHologresテーブルの名前。
        `bulkread`='true'
    );

次の表に、withオブジェクトのパラメーターを示します。

パラメーター

説明

必須

type

データソースのタイプ。

デフォルト値:[hologres]

はい

dbname

接続先のHologresデータベースの名前。

はい

tablename

データを読み取るHologresテーブルの名前。

はい

username

Alibaba CloudアカウントのAccessKey ID。

[アクセスキーペア] ページでAccessKey IDを取得できます。

はい

password

Alibaba CloudアカウントのAccessKeyシークレット。

[アクセスキーペア] ページでAccessKeyシークレットを取得できます。

はい

endpoint

HologresインスタンスのVPCエンドポイント。

[Hologresコンソール] のインスタンス詳細ページの [ネットワーク情報] セクションで、Hologresインスタンスのエンドポイントを表示できます。 VPCエンドポイントにはポート番号を含める必要があり、IPアドレス:ポート番号の形式に従う必要があります。

はい

bulkread

有効な値:

  • true:列指向テーブルをHologresソーステーブルとして使用できます。

  • false:列指向テーブルをHologresソーステーブルとして使用することはできません。 Hologresソーステーブルは、行指向ストレージモードを使用する必要があります。

説明

列指向テーブルをHologresソーステーブルとして使用する必要がある場合は、このパラメーターを [true] に設定します。

はい

データ型のマッピング

排他モードのBlinkでサポートされているデータ型とHologresでサポートされているデータ型のマッピングについては、「データ型」をご参照ください。

排他モードのBlinkを使用してHologresバイナリログをリアルタイムで消費する

BlinkベースのRealtime Compute V3.7以降では、Holo-blinkコネクタを使用してバイナリログをリアルタイムで消費できます。 詳細については、「Realtime Compute for Apache FlinkまたはBlinkを使用してHologresバイナリログをリアルタイムで消費する」をご参照ください。