External Catalog採集方式
資料地圖針對External Catalog的中繼資料採集目前為間接關聯形式,如果您在StarRocks類型資料庫中已使用External Catalog能力,並期望在資料地圖中通過StarRocks資料來源類型作為來源,查看其External Catalog下的表及中繼資料詳情,可通過本文進行操作配置。配置並採集完成後,可利用資料地圖的搜尋功能,搜尋和查看StarRocks External Catalog所關聯的表、欄位等中繼資料資訊。
背景資訊
當使用者在DataWorks中配置StarRocks資料來源並啟動中繼資料採集後,資料地圖預設僅針對StarRocks內部Catalog進行中繼資料擷取。如使用者期望擷取StarRocks External Catalog相應中繼資料,需使用者在DataWorks中配置目錄所關聯的資料來源串連,並進行中繼資料採集。採集完成後,資料地圖將自動進行中繼資料關聯,使用者可在StarRocks類型來源中查看External Catalog及其關聯中繼資料。
前提條件
-
已將您的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管理主控台,單擊進入EMR Serverless > StarRocks裡面的實例列表。
-
找到您所建立的StarRocks執行個體,單擊操作列中的串連執行個體。進入建立串連頁簽。
-
在建立串連頁簽,選擇您所建立的StarRocks執行個體地域、實例名稱資訊,輸入串連名稱、使用者名、密碼資訊,單擊測試連通性。串連成功後,點擊確定後進入StarRocks執行個體查詢列表頁面。
-
-
在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:您需填寫您所建立的資料庫連結路徑。
-
-
編輯完成後,您可單擊運行指令碼,等待執行成功後,您可在數據庫頁簽查看相關表資訊。
單擊External Catalog頁簽,在Catalog下拉框中選擇已建立的Catalog(如
mysql_db_catalog),即可展開查看對應的資料庫及表結構。
-
步驟三:資料來源配置
-
您需登入DataWorks控制台,切換至目標地區後,單擊左側導覽列的工作空間,在工作空間列表選擇您所建立的工作空間,單擊操作欄中的管理,進入管理中心。
-
在管理中心頁面單擊左側導覽列的,在資料來源頁面新增StarRocks與MySQL資料來源,詳情請參見【下線】配置StarRocks資料來源、配置MySQL資料來源。
說明MySQL資料來源配置模式需選擇串連串模式,同樣您選擇的外部資料源為JDBC類型的,配置模式都需選擇串連串模式。
步驟四:中繼資料採集配置
您需登入DataWorks控制台,切換至目標地區後,單擊左側導覽列的,單擊進入資料地圖。在資料地圖中配置中繼資料採集。
StarRocks內部Catalog中繼資料的採集配置
請參照建立自訂採集器步驟,建立StarRocks採集器。
StarRocks External Catalog中繼資料採集配置
同理,您需參照完成MySQL資料來源中繼資料採集。否則無法搜尋到MySQL資料來源External Catalog資訊。
MySQL資料來源中繼資料採集的已創建採集器的數據源選擇MySQL。
步驟五:中繼資料搜尋
等待StarRocks中繼資料採集任務、MySQL中繼資料採集任務執行完成,單擊左側
表徵圖進入搜尋網頁。
-
找到類型頁面,在資料來源頁簽下選擇StarRocks資料來源,在篩選條件裡面下拉選擇您所建立的StarRocks實例、StarRocks執行個體中MySQL資料來源的外部儲存數據目錄名稱、以及對應的MySQL數據庫。您可在StarRocks資料來源中查看MySQL Catalog資訊。結果如下:
搜尋結果中顯示一條 MySQL Catalog 表記錄(如
mysql_catalog_table),表明 MySQL Catalog 中繼資料已成功採集至 StarRocks 資料來源中。 -
您也可找到類型頁面,在資料來源頁簽下選擇MySQL資料來源,在篩選條件裡面下拉選擇您所建立的MySQL資料庫名稱,驗證表資訊是否一致。
搜尋結果中顯示MySQL資料來源下的表記錄(如
mysql_catalog_table),表名及記錄條數與StarRocks External Catalog中的搜尋結果一致,表明MySQL資料來源中繼資料採集配置正確。 -
查看錶詳情資訊。
您可單擊目標表名稱查看錶詳情資訊。
單擊目標表名稱(例如 mysql catalog db.mysql catalog table)進入表詳情頁。
表詳情頁麵包含明細資訊、關聯資訊、使用說明三個頁簽。在明細資訊頁簽的欄位資訊地區,以表格形式展示各欄位的欄位名稱、類型和描述,例如欄位
catalog_table_id(類型為 int)和catalog_table_name(類型為 varchar)。
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 |
當採集方式設定為Default Catalog時,預設會採集StarRocks的內部中繼資料資訊,因此無需配置External Catalog樣本,詳情請參見資料分析。 |
|
ODPS Catalog |
VPC |
說明
您在配置過程中,需要將 |
|
Hive Catalog |
Hive Metastore (HMS) |
說明
請將樣本中的 |
|
Data Lake Formation (DLF) |
說明
請將樣本中的 |
|
|
Iceberg Catalog |
Hive |
說明
使用Hive MetaStore作為中繼資料服務,配置Iceberg外部Catalog時,請將樣本中的 |
|
Hudi Catalog |
Hive |
說明
使用Hive MetaStore作為中繼資料服務,配置Hudi外部Catalog時,請將樣本中的 |
|
Data Lake Formation (DLF) |
說明
使用dlf作為中繼資料服務,配置Hudi外部Catalog時,請將樣本中的 |
|
|
Delta Lake Catalog |
Hive |
說明
|
|
Data Lake Formation (DLF) |
說明
請將樣本中的 |
|
|
JDBC Catalog |
MySQL |
說明
|
|
PostgreSQL |
說明
|
|
|
Paimon Catalog |
Hive(StarRocks3.1 版本起支援) |
說明
採用Hive作為中繼資料服務,配置Paimon Catalog時:
|
|
Data Lake Formation (DLF,StarRocks3.1 版本起支援) |
說明
採用dlf作為中繼資料服務,配置Paimon Catalog時:
|
|
|
Unified Catalog |
Hive(StarRocks3.2版本起支援) |
說明
採用Hive作為中繼資料服務,配置Unified Catalog時,請將樣本中的 |