如何在阿里雲Realtime ComputeFlink版上通過Flink Datastream以Paimon REST訪問DLF Catalog。
前提條件
已建立Flink全託管工作空間。如未建立,詳情請參見開通Realtime ComputeFlink版。
請確保Flink工作空間與DLF位於同一地區下,且添加Flink所在VPC為白名單,請參見配置VPC白名單。
請在Apache Paimon官網下載1.1+版本的
paimon-flink-*.jar。請在Apache Paimon官網的Filesystems下載1.1+版本的
paimon-oss-*.jar。
建立DLF Catalog
詳情請參見DLF 快速入門。
在DataStream作業對接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>
建立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。
是
-
dlf.access-key-secret
阿里雲帳號或者RAM使用者的AccessKey Secret。
是
-
重要由於DLF目前僅支援VPC接入,本地測試暫時不能運行DataStream作業,請到DLF同VPC的叢集環境中叢集進行測試。