数据地图针对External Catalog的元数据采集目前为间接关联形式,如果您在StarRocks类型数据库中已使用External Catalog能力,并期望在数据地图中通过StarRocks数据源类型为来源,查看其External Catalog下的表及元数据详情,可通过本文进行操作配置。配置并采集完成后,可利用数据地图的搜索功能,搜索和查看StarRocks External Catalog所关联的表、字段等元数据信息。
背景信息
当用户在DataWorks中配置StarRocks数据源并启动元数据采集后,数据地图默认仅针对StarRocks内部Catalog进行元数据获取。如用户期望获取StarRocks External Catalog相应元数据,需用户同时在DataWorks中配置目录所关联的数据源连接,并进行元数据采集。采集完成后,数据地图将自动进行元数据关联,用户可在StarRocks类型来源中查看External Catalog及其关联元数据。
前提条件
已创建工作空间,详情请参见创建并管理DataWorks工作空间。
已将您的StarRocks数据库创建为DataWorks的StarRocks数据源,详情请参见创建StarRocks数据源。
若需采集开启了白名单访问控制的数据源,应事先配置好相应的白名单权限。详情请参见元数据采集的数据源有白名单访问控制时需要配置的白名单。
使用限制
暂不支持外部目录为Elasticsearch Catalog类型。
暂不支持外部目录来源为OSS的Paimon Catalog类型。
操作步骤
以StarRocks中MySQL External Catalog为例,您如配置某MySQL_DB为mysql_catalog_db
,则需您在数据地图中配置并建立MySQL类型元数据采集器,采集MySQL_DB相应元数据信息后,对应StarRocks中的mysql_catalog_db
下元数据信息亦可被搜索和查看。
步骤一:数据准备
创建MySQL数据源
创建MySQL数据源,数据库名为mysql_catalog_db
,并创建示例表mysql_catalog_table
,示例脚本如下:
CREATE TABLE mysql_catalog_table(
catalog_table_id INT,
catalog_table_name VARCHAR(255)
)
准备MySQL JDBC驱动包
您需将对应版本的MySQL JDBC驱动上传到OSS中。
将与您MySQL版本一致的JDBC驱动JAR包上传到OSS中,您需登录OSS管理控制台,单击所在地域左侧导航栏的Bucket列表。
单击目标Bucket名称,进入文件管理页面。本文示例使用的Bucket为
catalog-bucket-oss
。单击新建目录,创建JAR包的存放目录。配置目录名为
libs
,创建JAR资源的存放目录。进入JDBC驱动JAR包的存放目录。单击上传文件,在待上传文件区域单击扫描文件,添加JDBC驱动JAR包
mysql-connector-java-8.0.28.jar
文件至Bucket,单击上传文件。找到您所上传的JDBC驱动JAR包文件,单击文件对应的操作项的详情,单击详情页面的设置读写权限,进入设置读写权限页面,将文件权限设置为公共读写,单击确定以供后续配置外部引用。
步骤二:外部数据源连接配置
登录StarRocks实例查询列表。
登录EMR管理控制台,单击进入 里面的实例列表。
找到您所创建的StarRocks实例,单击操作列中的连接实例。进入新建连接页签。
在新建连接页签选择您创建StarRocks实例时,选择的地域、创建的实例名称信息,输入连接名称、用户名、密码信息,单击测试连通性。连接成功后,点击确定后进入StarRocks实例查询列表。
在StarRocks数据源配置MySQL外部连接。
单击查询列表下面的+文件创建按钮,进入新建文件对话框,输入名称、选择存储路径,单击确定创建文件。
选择全部文件下你所创建的文件名,进入到StarRocks实例编辑页面,输入MySQL数据源为StarRocks外部连接脚本,详情请参见StarRocks配置External Catalog示例说明。
CREATE EXTERNAL CATALOG mysql_db_catalog PROPERTIES ( "driver_class" = "com.mysql.cj.jdbc.Driver", "driver_url" = "https://catalog-bucket-oss.oss-cn-hangzhou-internal.aliyuncs.com/libs/mysql-connector-java-8.0.28.jar", "type" = "jdbc", "user" = "<UserName>", "password"="<PassWord>", "jdbc_uri" = "jdbc:mysql://xxx:3306/mysql_catalog_db" );
说明mysql_db_catalog
参数为您为MySQL数据源创建的外部存储数据目录名称。UserName
、PassWord
信息您需根据实际情况填写。jdbc_uri
:您需填写您所创建的数据库链接路径。
编辑完成后,您可单击运行脚本,等待执行成功后,您可在数据库页签查看相关表信息。
步骤三:数据源配置
您需登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的工作空间,在工作空间列表选择您所创建的工作空间,单击操作栏中的管理,进入管理中心。
在管理中心页面单击左侧导航栏的配置StarRocks数据源、配置MySQL数据源。
,在数据源页面添加配置您所创建的StarRocks数据源与MySQL数据源,详情请参见说明MySQL数据源配置模式需选择连接串模式。同样您选择的外部数据源为JDBC类型的,配置模式都需选择连接串模式。
步骤四:元数据采集配置
您需登录DataWorks控制台,切换至目标地域后,单击左侧导航栏的 ,单击进入数据地图。在数据地图中配置元数据采集。
采集StarRocks内部目录的采集配置
找到数据地图左侧的图标,单击StarRocks数据源的管理按钮。
进入到StarRocks元数据采集配置页面,单击切换到未采集列表页签,输入您所在工作空间以及工作空间管理里面配置的StarRocks数据源名称。
配置元数据采集。
选择您所创建的资源组名称、点击测试连通性,等待连通性测试成功,设置采集计划,单击确认完成元数据采集配置。
运行元数据采集。
单击切换到已采集列表页签,找到您所设置的采集计划。单击右侧操作栏中的运行。等待采集计划状态变为运行成功。
采集StarRocks External Catalog相关的MySQL元数据
同理您需参照步骤四:元数据采集配置,完成MySQL数据源元数据采集。否则无法搜索到MySQL数据源External Catalog信息。
MySQL数据源元数据采集的已创建采集器的数据源选择MySQL
。
步骤五:元数据搜索
等待StarRocks元数据采集任务、MySQL元数据采集任务执行完成,单击左侧图标进入搜索页。
找到类型页面,在数据源页签下选择StarRocks数据源,在筛选条件里面下拉选择您所创建的StarRocks实例、您为MySQL数据源创建的外部存储数据目录名称、以及对应的MySQL数据库。您可在StarRocks数据源中查看MySQL Catalog信息。结果如下:
您也可找到类型页面,在数据源页签下选择MySQL数据源,在筛选条件里面下拉选择您所创建的MySQL数据库名称,验证表信息是否一致。
查看表详情信息。
您可单击如下图所示位置查看表详情信息。
详情信息如下:
StarRocks配置External Catalog示例说明
StarRocks配置External Catalog示例,语法如下所示:
CREATE EXTERNAL CATALOG <Catalog_Name> COMMENT '' PROPERTIES("type"="","xxx1"="","xxx2"="");
Catalog_Name
参数为外部存储数据目录名称。可自定义命名。
StarRocks配置External Catalog示例如下,详情请参见数据目录:
采集方式 | 连接方式 | StarRocks配置External Catalog示例 |
Default Catalog | default | 保存在StarRocks中的数据,默认可以查询。详情请参见Catalog概述。 |
ODPS Catalog | VPC |
说明 您在使用过程中,需要将 |
Hive Catalog | Hive Metastore (HMS) |
说明
|
Data Lake Framework (DLF) |
说明
| |
Iceberg Catalog | Hive |
说明 使用Hive MetaStore作为元数据服务的Iceberg外部Catalog, |
Hudi Catalog | Hive |
说明 使用Hive MetaStore作为元数据服务的Hudi外部Catalog, |
Data Lake Framework (DLF) |
说明 使用dlf为元数据服务的Hudi外部Catalog, | |
Delta Lake Catalog | Hive |
说明
|
Data Lake Framework (DLF) |
说明
| |
JDBC Catalog | MySQL |
说明
|
PostgreSQL |
说明
| |
Paimon Catalog | Hive(StarRocks3.1 版本起支持) |
说明 采用Hive作为管理元数据的Paimon Catalog。
|
Data Lake Framework (DLF,StarRocks3.1 版本起支持) |
说明 采用dlf作为管理元数据的Paimon Catalog。
| |
Unified Catalog | Hive(StarRocks3.2版本起支持) |
说明 采用Hive作为管理元数据的Unified Catalog。
|