Paimon Catalog 實現了 Flink 對 資料湖構建(DLF) 資料的直接存取。本文介紹 Catalog 的建立與管理,以及資料庫與表的操作流程。
注意事項
引擎版本要求
基礎功能:建立 Paimon Catalog 和表,需使用Realtime Compute引擎 VVR 8.0.5 及以上版本。
DLF 整合:若將中繼資料存放區類型設定為 DLF,需使用 VVR 11.1 及以上版本。
OSS 儲存配置
儲存類型:Paimon 資料檔案與中繼資料檔案儲存體於 OSS。必須使用標準儲存類型的 Bucket。詳情請參見儲存類型。
部署建議:建議建立一個位於同一地區的獨立 Bucket。避免複用系統預設 Bucket,以防止資料混淆及誤操作。
許可權管理
配置 Catalog 時使用的 AccessKey,必須擁有目標 OSS Bucket 或 DLF 目錄的讀寫權限。格式相容性
Paimon Catalog 專用於管理 Paimon 格式資料。它不支援訪問 Lance、Iceberg 等其他資料湖格式的表。
中繼資料同步
通過 SQL 陳述式建立或刪除 Catalog、資料庫及表後,控制台視圖可能不會立即變更。請點擊頁面上的重新整理
按鈕以擷取最新中繼資料狀態。
Paimon對應版本
Paimon社區版本
Realtime ComputeFlink版引擎版本(VVR )
1.3
11.4
1.2
11.2、11.3
1.1
11.1
1.0
8.0.11
0.9
8.0.7、8.0.8、8.0.9、8.0.10
0.8
8.0.6
0.7
8.0.5
0.6
8.0.4
0.6
8.0.3
建立Paimon Catalog
建立Paimon Filesystem Catalog
UI方式
進入資料管理頁面。
登入Realtime Compute管理主控台,單擊目標工作空間操作列下的控制台。
單擊資料管理。
單擊建立Catalog,選擇Apache Paimon,單擊下一步。
填寫參數配置資訊。
SQL方式
在資料查詢文本編輯地區,輸入以下命令。
CREATE CATALOG `my-catalog` WITH (
'type' = 'paimon',
'metastore' = 'filesystem',
'warehouse' = '<warehouse>',
'fs.oss.endpoint' = '<fs.oss.endpoint>',
'fs.oss.accessKeyId' = '<fs.oss.accessKeyId>',
'fs.oss.accessKeySecret' = '<fs.oss.accessKeySecret>'
);配置項參數說明如下。
通用
配置項
說明
是否必填
備忘
my-catalog
Paimon Catalog名稱。
是
請填寫為自訂的英文名。
type
Catalog類型。
是
固定值為paimon。
metastore
中繼資料存放區類型。
是
參數取值如下:
filesystem:配置為Paimon Filesystem Catalog類型時填寫。
dlf:配置為Paimon DLF Catalog類型時填寫。
OSS
配置項
說明
是否必填
備忘
warehouse
OSS服務中所指定的數倉目錄。
是
格式為oss://<bucket>/<object>。其中:
bucket:表示您建立的OSS Bucket名稱。
object:表示您存放資料的路徑。
請在OSS管理主控台上查看您的bucket和object名稱。
fs.oss.endpoint
OSS服務的串連地址。
是
如果Flink與DLF位於同一地區,則使用VPC網路Endpoint,否則使用公網Endpoint。
當warehouse指定的OSS Bucket與Flink工作空間不在同一地區,或使用其它帳號下的OSS Bucket時需要填寫。
擷取方法請參見地區和Endpoint和建立AccessKey。
fs.oss.accessKeyId
擁有讀寫OSS許可權的阿里雲帳號或RAM帳號的Accesskey ID。
是
fs.oss.accessKeySecret
擁有讀寫OSS許可權的阿里雲帳號或RAM帳號的Accesskey secret。
是
建立Paimon DLF Catalog
DLF
在DLF上建立Paimon Catalog,詳情請參見快速使用DLF。
DLF Catalog需要和Flink工作空間位於同一地區,否則無法在後續流程中完成關聯。
在Realtime Compute開發控制台上,建立Paimon Catalog。
說明這裡僅用於建立與DLF Catalog的映射串連,建立或刪除Catalog僅影響映射關係,不會對DLF中的實際資料產生影響。
單擊Flink全託管工作空間列表中的工作空間名稱,進入對應的工作空間。
可以通過UI或者SQL方式來添加Catalog。
UI方式
在左側導覽列,單擊資料管理。
在Catalog列表頁,單擊建立Catalog。
選擇Apache Paimon,單擊下一步。
metastore 選擇 dlf,catalog name 選擇需要關聯版本的DLF Catalog,單擊確定,即可建立Catalog。
SQL命令
在資料查詢文本編輯地區,輸入以下SQL並執行,即可建立Catalog。
CREATE CATALOG `flink_catalog_name` WITH ( 'type' = 'paimon', 'metastore' = 'rest', 'token.provider' = 'dlf', 'uri' = 'http://cn-hangzhou-vpc.dlf.aliyuncs.com', 'warehouse' = 'dlf_test' );參數說明如下:
參數
描述
是否必填
樣本
type
Catalog類型,固定為paimon。
是
paimon
metastore
metastore類型,固定為rest。
是
rest
token.provider
Token提供方,固定為dlf。
是
dlf
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
DLF-Legacy
在DLF上建立Paimon Catalog,詳情請參見快速入門。
DLF Catalog需要和Flink工作空間位於同一地區,否則無法在後續流程中完成關聯。
在Realtime Compute開發控制台上,建立Paimon Catalog。
UI方式
進入資料管理頁面。
登入Realtime Compute控制台,單擊目標工作空間操作列下的控制台。
單擊資料管理。
單擊建立Catalog,選擇Apache Paimon,單擊下一步。
metastore 選擇 dlf,catalog name 選擇需要關聯的V1.0版本的DLF Catalog,然後填寫參數配置(所需參數與SQL方式一致)。
SQL命令
在資料查詢文本編輯地區,輸入以下命令。
CREATE CATALOG `my-catalog` WITH ( 'type' = 'paimon', 'metastore' = 'dlf', 'warehouse' = '<warehouse>', 'dlf.catalog.id' = '<dlf.catalog.id>', 'dlf.catalog.accessKeyId' = '<dlf.catalog.accessKeyId>', 'dlf.catalog.accessKeySecret' = '<dlf.catalog.accessKeySecret>', 'dlf.catalog.endpoint' = '<dlf.catalog.endpoint>', 'dlf.catalog.region' = '<dlf.catalog.region>', 'fs.oss.endpoint' = '<fs.oss.endpoint>', 'fs.oss.accessKeyId' = '<fs.oss.accessKeyId>', 'fs.oss.accessKeySecret' = '<fs.oss.accessKeySecret>' );配置項參數說明如下。
通用
配置項
說明
是否必填
備忘
my-catalog
Paimon Catalog名稱。
是
請填寫為自訂的英文名。
type
Catalog類型。
是
固定值為paimon。
metastore
中繼資料存放區類型。
是
固定值為dlf。
OSS
配置項
說明
是否必填
備忘
warehouse
OSS服務中所指定的數倉目錄。
是
格式為oss://<bucket>/<object>。其中:
bucket:表示您建立的OSS Bucket名稱。
object:表示您存放資料的路徑。
請在OSS管理主控台上查看您的bucket和object名稱。
fs.oss.endpoint
OSS服務的串連地址。
是
如果Flink與DLF位於同一地區,則使用VPC網路Endpoint,否則使用公網Endpoint。
如果需要將Paimon表格儲存體在OSS-HDFS中,則fs.oss.endpoint的值為
cn-<region>.oss-dls.aliyuncs.com,例如cn-hangzhou.oss-dls.aliyuncs.com。
fs.oss.accessKeyId
擁有讀寫OSS許可權的阿里雲帳號或RAM帳號的Accesskey ID。
是
擷取方法請參見地區和Endpoint和建立AccessKey。
fs.oss.accessKeySecret
擁有讀寫OSS許可權的阿里雲帳號或RAM帳號的Accesskey secret。
是
DLF
配置項
說明
是否必填
備忘
dlf.catalog.id
DLF資料目錄ID。
是
請在資料湖構建控制台上查看資料目錄對應的ID。
dlf.catalog.accessKeyId
訪問DLF服務所需的Access Key ID。
是
擷取方法請參見建立AccessKey。
dlf.catalog.accessKeySecret
訪問DLF服務所需的Access Key Secret。
是
擷取方法請參見建立AccessKey。
dlf.catalog.endpoint
DLF服務的Endpoint。
是
詳情請參見已開通的地區和訪問網域名稱。
說明如果Flink與DLF位於同一地區,則使用VPC網路Endpoint,否則使用公網Endpoint。
dlf.catalog.region
DLF所在地區。
是
詳情請參見已開通的地區和訪問網域名稱。
說明請和dlf.catalog.endpoint選擇的地區保持一致
管理Paimon資料庫
在資料查詢文本編輯地區輸入如下命令,選中代碼後單擊運行。
建立資料庫
建立Paimon Catalog後,Catalog中會自動建立名為
default的資料庫。--my-catalog需要替換為您建立的Paimon Catalog名稱。 USE CATALOG `my-catalog`; --my_db需要替換為自訂的database英文名稱。 CREATE DATABASE `my_db`;刪除資料庫
重要無法刪除DLF類型Catalog下的default資料庫,允許刪除Filesystem類型Catalog下的default資料庫。
--my-catalog需要替換為您建立的Paimon Catalog名稱。 USE CATALOG `my-catalog`; --my_db需要替換為您想要刪除的資料庫名稱。 DROP DATABASE `my_db`; --只需要刪除內部沒有任何錶的資料庫。 DROP DATABASE `my_db` CASCADE; --刪除資料庫且同時刪除資料庫下的所有表。
管理Paimon表
建立表
修改表結構
刪除表
查看或刪除Paimon Catalog
在Realtime Compute管理主控台,單擊目標工作空間操作列的控制台。
在資料管理頁面,查看或刪除Paimon Catalog。
查看:在Catalog列表頁面,查看Catalog名稱和類型。如果您需要查看Catalog下的資料庫和表,請單擊查看。
刪除:在Catalog列表頁面,單擊目標Catalog名稱對應操作列的刪除。
說明刪除Paimon Catalog只會刪除Flink專案空間資料管理中的記錄,不會影響Paimon表的資料檔案。刪除Catalog後,只需要重新執行建立Paimon Catalog,即可重新使用Catalog中的Paimon表。
您也可以在資料查詢文本編輯地區輸入
DROP CATALOG <catalog name>;,選中代碼後單擊運行。
相關文檔
建立Paimon表後,您可以從Paimon表中消費資料或向Paimon表中寫入資料,詳情請參見Paimon表資料寫入和消費。
如果內建的Catalog無法滿足您的業務需求,您可以使用自訂Catalog,詳情請參見管理自訂Catalog。
不同情境下Paimon主鍵表和Append Scalable表的常用最佳化,詳情請參見Paimon效能最佳化。
