本文为您介绍如何通过Flink DataStream作业将数据高效写入DLF Paimon Catalog,实现数据湖存储与管理。
前提条件
已创建Flink全托管工作空间。如未创建,详情请参见开通实时计算Flink版。
请在Apache Paimon官网下载1.1+版本的
paimon-flink-*.jar
。请在Apache Paimon官网的Filesystems下载1.1+版本的
paimon-oss-*.jar
。
创建DLF Paimon Catalog
详情请参见DLF 快速入门。
在DataStream作业对接Paimon Catalog
关于Flink JAR作业的开发方法和调试方法,详情请参见JAR作业开发。
在DataStream作业中,您可以通过以下两种方式引入
paimon-oss-*.jar
和paimon-flink-*.jar
:作为附加文件上传:在提交Flink作业时,将这两个JAR文件作为附加依赖上传。
通过Maven依赖引入:以Maven依赖的方式添加
paimon-oss-*.jar
和paimon-flink-*.jar
的依赖配置,格式如下。<dependencies> <dependency> <groupId>org.apache.paimon</groupId> <artifactId>paimon-flink-${flink.main.version}</artifactId> <version>${paimon.version}</version> </dependency> <dependency> <groupId>org.apache.paimon</groupId> <artifactId>paimon-oss</artifactId> <version>${paimon.version}</version> </dependency> </dependencies>
参数说明:
${paimon.version}
:表示Paimon的版本号,根据需求填写1.1+
版本号。${flink.main.version}
:表示Flink的主版本号,需按提交作业的VVR版本进行替换。提交作业到VVR 8.x
<properties> <paimon.version><!-- 在这里填写1.1+版本 --></paimon.version> <flink.main.version>1.17</flink.main.version> </properties>
提交作业到VVR 11.x
<properties> <paimon.version><!-- 在这里填写1.1+版本 --></paimon.version> <flink.main.version>1.20</flink.main.version> </properties>
创建Paimon Catalog时,使用下面的配置。
Options options = new Options(); options.set("type", "paimon"); options.set("metastore", "rest"); options.set("uri", "dlf_uri"); options.set("warehouse", "your_catalog"); options.set("token.provider", "dlf"); options.set("dlf.access-key-id", "***"); options.set("dlf.access-key-secret", "***"); Catalog catalog = FlinkCatalogFactory.createPaimonCatalog(options);
参数说明如下。
参数
描述
是否必填
示例
type
Catalog类型,从自定义JAR自动解析,请勿更改。
是
paimon-1-ali-11.0
metastore
metastore类型,固定为rest。
是
rest
uri
访问DLF Rest Catalog Server的URI,格式为
http://[region-id]-vpc.dlf.aliyuncs.com
。详见服务接入点中的Region ID。是
http://cn-hangzhou-vpc.dlf.aliyuncs.com
warehouse
DLF Catalog名称。
是
dlf_test
token.provider
Token提供方,固定为dlf。
是
dlf
dlf.access-key-id
阿里云账号或者RAM用户的AccessKey ID。详情请参见查看RAM用户的AccessKey信息。
是
-
dlf.access-key-secret
阿里云账号或者RAM用户的AccessKey Secret。
是
-
重要由于DLF目前仅支持VPC接入,本地测试暂时不能运行DataStream作业,请到DLF同VPC的集群环境中集群进行测试。