全部产品
Search
文档中心

实时计算Flink版:管理AnalyticDB MySQL(ADB)Catalog

更新时间:Jan 26, 2024

配置AnalyticDB MySQL Catalog后,您就可以在Flink全托管控制台直接访问AnalyticDB MySQL实例中的表。本文为您介绍如何在Flink全托管模式下创建、查看、使用及删除AnalyticDB MySQL Catalog。

背景信息

AnalyticDB MySQL Catalog具有以下功能特点:

  • 直接访问AnalyticDB MySQL Catalog实例中的表,无需通过DDL语句手动注册AnalyticDB MySQL Catalog表,提升开发效率和正确性。

  • AnalyticDB MySQL Catalog提供的表可以直接作为Flink SQL作业中的AnalyticDB 3.0维表和AnalyticDB 3.0结果表。

使用限制

  • 仅实时计算引擎VVR 6.0.2及以上版本支持配置AnalyticDB MySQL Catalog。

  • 不支持修改Catalog DDL。

  • 仅支持查询数据表,不支持创建、修改和删除数据库和表。

  • 仅支持作为维表和结果表,不支持作为源表。

创建AnalyticDB MySQL Catalog

  1. 查询脚本文本编辑区域,输入配置AnalyticDB MySQL Catalog的命令。

    CREATE CATALOG <catalogName> WITH (
      'type' = 'adb3.0',
      'hostName' = '<hostname>',
      'port' = '<port>',
      'userName' = '<username>',
      'password' = '<password>',
      'defaultDatabase' = '<dbname>'
    );

    参数

    类型

    说明

    是否必填

    catalogName

    String

    AnalyticDB MySQL Catalog名称。

    type

    String

    Catalog类型,固定值为adb3.0。

    hostName

    String

    AnalyticDB MySQL数据库的IP地址或者Hostname。

    port

    Integer

    AnalyticDB MySQL数据库服务的端口号,默认值为3306。

    userName

    String

    AnalyticDB MySQL数据库服务的用户名。

    password

    String

    AnalyticDB MySQL数据库服务的密码。

    defaultDatabase

    String

    默认的AnalyticDB MySQL数据库名称。

  2. 选中创建Catalog的代码后,单击左侧代码行数上的运行

    image..png

查看AnalyticDB MySQL Catalog

AnalyticDB MySQL Catalog配置成功后,您可以通过以下步骤查看AnalyticDB MySQL元数据。

  1. 进入元数据管理页面。

    1. 登录实时计算控制台

    2. Flink全托管页签,单击目标工作空间操作列下的控制台

    3. 单击元数据管理

  2. Catalog列表页面,查看Catalog名称类型

    说明

    如果您需要查看目标Catalog下的数据库和表,请单击查看

使用AnalyticDB MySQL Catalog

  • AnalyticDB MySQL Catalog提供的表作为维表使用

    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 MySQL Catalog提供的表作为结果表使用

    INSERT INTO `${adb_mysql_catalog}`.`${db_name}`.`${table_name}`
    SELECT ...
    FROM ${other_source_table}

    如果AnalyticDB MySQL Catalog的表使用时需要指定其他WITH参数,则建议使用SQL Hints方式来添加其他参数。其他参数的详情请参见WITH参数。以AnalyticDB MySQL 3.0结果表中添加replaceMode参数为例,代码示例如下。

    INSERT INTO `${adb_mysql_catalog}`.`${db_name}`.`${table_name}` /*+ OPTIONS('replaceMode'='true') */
    SELECT ...
    FROM ${other_source_table}

删除AnalyticDB MySQL Catalog

警告

删除AnalyticDB MySQL Catalog不会影响已运行的作业,但会导致使用该Catalog下表的作业,在上线或重启时报无法找到该表的错误,请您谨慎操作。

支持UI与SQL命令两种方式删除AnalyticDB MySQL Catalog,推荐通过UI方式删除AnalyticDB MySQL Catalog。

UI方式

  1. 进入元数据管理页面。

    1. 登录实时计算控制台

    2. Flink全托管页签,单击目标工作空间操作列下的控制台

    3. 单击元数据管理

  2. Catalog列表页面,单击目标Catalog名称对应操作列下的删除

  3. 在弹出的提示页面中,单击删除

  4. 在左侧元数据区域下,查看目标Catalog是否已被删除。

SQL命令方式

  1. 查询脚本文本编辑区域,输入以下命令。

    DROP CATALOG <catalogName>;

    其中,catalogName为您要删除的目标AnalyticDB MySQL Catalog名称。

  2. 选中删除Catalog的命令,鼠标右键选择运行

  3. 在左侧元数据区域,查看目标Catalog是否已删除。