AnalyticDB for MySQL カタログを作成すると、フルマネージド Flink のコンソールで AnalyticDB for MySQL カタログ内のテーブルに直接アクセスできます。このトピックでは、フルマネージド Flink のコンソールで AnalyticDB for MySQL カタログを作成、表示、使用、および削除する方法について説明します。
背景情報
AnalyticDB for MySQL カタログを作成すると、次の機能がサポートされます。
DDL ステートメントを使用してテーブルを手動で登録することなく、AnalyticDB for MySQL カタログ内のテーブルに直接アクセスできます。これにより、開発効率と正確性が向上します。
Flink SQL デプロイメントで、AnalyticDB for MySQL カタログ内のテーブルを AnalyticDB for MySQL V3.0 ディメンションテーブルおよび AnalyticDB for MySQL V3.0 結果テーブルとして直接使用できます。
このトピックでは、AnalyticDB for MySQL カタログを管理するために行うことができる次の操作について説明します。
制限事項
Ververica Runtime (VVR) 6.0.2 以降を使用する Realtime Compute for Apache Flink のみで、AnalyticDB for MySQL カタログを設定できます。
カタログに関連する DDL ステートメントを変更することはできません。
AnalyticDB for MySQL カタログを使用して、データテーブルをクエリすることのみができます。 AnalyticDB for MySQL カタログを使用して、データベースとテーブルを作成、変更、または削除することはできません。
AnalyticDB for MySQL カタログ内のテーブルは、ディメンションテーブルと結果テーブルとしてのみ使用できます。ソーステーブルとして使用することはできません。
AnalyticDB for MySQL カタログの作成
スクリプト タブの SQL エディターページのコードエディターで、次のステートメントを入力して AnalyticDB for MySQL カタログを作成します。
CREATE CATALOG <catalogName> WITH ( 'type' = 'adb3.0', 'hostName' = '<hostname>', 'port' = '<port>', 'userName' = '<username>', 'password' = '<password>', 'defaultDatabase' = '<dbname>' );パラメーター
データ型
説明
必須
catalogName
STRING
AnalyticDB for MySQL カタログの名前。
はい
type
STRING
カタログのタイプ。値を adb3.0 に設定します。
はい
hostName
STRING
AnalyticDB for MySQL データベースの IP アドレスまたはホスト名。
はい
port
INTEGER
AnalyticDB for MySQL データベースへのアクセスに使用されるポート番号。デフォルト値: 3306。
いいえ
userName
STRING
AnalyticDB for MySQL データベースへのアクセスに使用されるユーザー名。
はい
password
STRING
AnalyticDB for MySQL データベースへのアクセスに使用されるパスワード。
はい
defaultDatabase
STRING
デフォルトの AnalyticDB for MySQL データベースの名前。
はい
カタログを作成するために使用するコードを選択し、コードの左側に表示される [実行] をクリックします。

AnalyticDB for MySQL カタログのメタデータの表示
AnalyticDB for MySQL カタログを作成した後、次の手順を実行して AnalyticDB for MySQL のメタデータを表示できます。
カタログページに移動します。
Realtime Compute for Apache Flink コンソール にログオンします。
[フルマネージド Flink] タブで、管理するワークスペースを見つけ、[アクション] 列の [コンソール] をクリックします。
左側のナビゲーションペインで、[カタログ] をクリックします。
[カタログリスト] ページで、目的のカタログを見つけ、カタログの [カタログ名] 列と [タイプ] 列を表示します。
説明カタログ内のデータベースとテーブルを表示するには、[アクション] 列の [表示] をクリックします。
AnalyticDB for MySQL カタログの使用
AnalyticDB for MySQL カタログ内のテーブルをディメンションテーブルとして使用します。
INSERT INTO ${other_sink_table} SELECT ... FROM ${other_source_table} AS e JOIN `${adb_mysql_catalog}`.`${db_name}`.`${table_name}` FOR SYSTEM_TIME AS OF e.proctime AS w ON e.id = w.id;AnalyticDB for MySQL カタログ内のテーブルを結果テーブルとして使用します。
INSERT INTO `${adb_mysql_catalog}`.`${db_name}`.`${table_name}` SELECT ... FROM ${other_source_table}AnalyticDB for MySQL カタログ内のテーブルを使用する際に WITH 句で他のパラメーターを指定する必要がある場合は、SQL ヒント を使用してパラメーターを追加することをお勧めします。その他のパラメーターの詳細については、「AnalyticDB for MySQL V3.0 コネクター」をご参照ください。次のサンプルコードは、AnalyticDB for MySQL V3.0 結果テーブルに replaceMode パラメーターを追加する方法の例を示しています。
INSERT INTO `${adb_mysql_catalog}`.`${db_name}`.`${table_name}` /*+ OPTIONS('replaceMode'='true') */ SELECT ... FROM ${other_source_table}
AnalyticDB for MySQL カタログの削除
AnalyticDB for MySQL カタログを削除した後も、実行中のデプロイメントは影響を受けません。ただし、カタログ内のテーブルを使用するドラフトは、ドラフトが公開された場合、またはドラフトから変換されたデプロイメントが再起動された場合、テーブルを見つけることができなくなります。ご注意ください。
AnalyticDB for MySQL カタログは、UI 上または SQL ステートメントを使用して削除できます。 UI 上で AnalyticDB for MySQL カタログを削除することをお勧めします。
UI 上での AnalyticDB for MySQL カタログの削除
カタログページに移動します。
Realtime Compute for Apache Flink コンソール にログオンします。
[フルマネージド Flink] タブで、管理するワークスペースを見つけ、[アクション] 列の [コンソール] をクリックします。
左側のナビゲーションペインで、[カタログ] をクリックします。
[カタログリスト] ページで、目的のカタログを見つけ、削除[アクション] 列の をクリックします。
表示されるメッセージで、[削除] をクリックします。
カタログリストページの左側にある [カタログ] ペインで、カタログが削除されているかどうかを確認します。
SQL ステートメントを使用した AnalyticDB for MySQL カタログの削除
スクリプト タブの SQL エディターページのコードエディターで、次のステートメントを入力します。
DROP CATALOG <catalogName>;上記のステートメントで、catalogName を削除する AnalyticDB for MySQL カタログの名前に置き換えます。
カタログを削除するために使用するステートメントを右クリックし、[実行] を選択します。
カタログリストページの左側にある [カタログ] ペインで、カタログが削除されているかどうかを確認します。