Apache Flink を LindormTable に接続し、Flink ジョブで Lindorm テーブルをディメンションテーブルまたは結果テーブルとして利用します。これらのテーブルには、Flink SQL または Flink DataStream を使用してアクセスできます。
使用する Flink のバリアントの選択
LindormTable では、機能が異なる 2 種類の Flink バリアントをサポートしています。
| オープンソース Apache Flink | Realtime Compute for Apache Flink | |
|---|---|---|
| サポートされるテーブルタイプ | HBase 構造のテーブルのみ | すべての Lindorm テーブル |
| 必要な LindormTable バージョン | 2.4.3 以降 | バージョン制限なし |
| コネクタの変更が必要です | 該当なし | 不要(Flink SQL で Lindorm コネクタをそのまま使用可能) |
| lindorm-cli による SQL テーブルのディメンション/結果テーブルとしての利用 | 非対応 | 対応 |
オープンソース Flink の制限事項:ディメンションテーブルまたは結果テーブルとして指定できるのは、HBase Shell を使用して作成された HBase 構造のテーブルのみです。lindorm-cli で作成された SQL テーブルはサポートされていません。
前提条件
開始する前に、以下の条件を満たしていることを確認してください。
ご使用の Flink バリアントに対応する LindormTable のバージョンであること(上記の表をご参照ください)
Flink クライアントの IP アドレスが Lindorm インスタンスのホワイトリストに登録されていること — 「ホワイトリストの設定」をご参照ください
Lindorm テーブルへのアクセスに使用する新規アカウントに対して、読み取りおよび書き込み権限が付与されていること — 「ユーザーへの権限付与」をご参照ください
ネットワーク要件
インターネット経由のアクセスまたはシングルノードインスタンスの場合:インターネット経由で Lindorm にアクセスする場合、または対象の Lindorm インスタンスがシングルノードインスタンスである場合は、SDK をスペックアップし、接続構成を更新してから作業を進めてください。詳細については、「ApsaraDB for HBase API for Java を使用した LindormTable への接続と利用」のステップ 1 をご参照ください。
ECS 上でデプロイされたアプリケーションの場合: Lindorm インスタンスと ECS インスタンスを同一リージョンおよび同一 Virtual Private Cloud (VPC) 内にデプロイしてください。さらに、同一ゾーン内にデプロイすることで、ネットワーク遅延を低減できます。
LindormTable エンドポイントの取得
Flink は、HBase API 向けの LindormTable エンドポイントを使用して Lindorm テーブルにアクセスします。エンドポイントを確認するには、Lindorm コンソール に移動してください。
新規に作成したアカウントを使用して Lindorm テーブルにアクセスする場合は、接続前に、そのアカウントが Flink テーブルに対する読み取りおよび書き込み権限を有していることを確認してください。詳細については、「ユーザーへの権限付与」をご参照ください。

ディメンションテーブルの作成
オープンソース Apache Flink: Apache Flink ドキュメント内の「ディメンションテーブルの作成」の手順に従ってください。
Realtime Compute for Apache Flink: Alibaba Cloud ドキュメントの「Lindorm ディメンションテーブルの作成」の手順に従ってください。
結果テーブルの作成
オープンソース Apache Flink: Apache Flink ドキュメント内の「結果テーブルの作成」の手順に従ってください。
Realtime Compute for Apache Flink: Alibaba Cloud ドキュメントの「Lindorm 結果テーブルの作成」の手順に従ってください。
次のステップ
LindormTable のバージョンを確認またはスペックアップするには、「LindormTable のリリースノート」および「Lindorm インスタンスのマイナーエンジンバージョンのスペックアップ」をご参照ください。