Hologres外部表允許您訪問存儲在外部數據源(OSS)中的數據。外部表的創建通常依賴于已經設置好的外部服務器(Foreign Server),本文為您介紹如何使用HoloWeb可視化操作外部表,并進行數據預覽。
前提條件
實例已創建Foreign Server,詳情請參見創建Foreign Server。
Foreign Server的DLF Catalog中已存在數據庫和數據表,創建數據庫和數據表的操作請參見元數據管理。
使用限制
Hologres不支持跨地域查詢外部表數據。
創建外部表
在頂部菜單欄左側,選擇相應的地域。
在左側導航欄單擊前往HoloWeb,進入HoloWeb開發頁面。
在HoloWeb頂部菜單欄單擊元數據管理 > OSS數據湖加速 > 創建外部表。
您可根據需要選擇加速方式為整庫加速、部分加速或單表加速,參數說明如下:
整庫加速
類別
參數名
描述
加速方式
整庫加速
將DLF指定數據庫下的表全量創建為Hologres外部表。
DLF數據源
Server Name
已創建的Foreign Server,用于指定外部數據源的連接信息。
DB Name
Foreign Server中指定DLF Catalog下的數據庫名稱。
目標位置
Holo Schema
默認為public,可在下拉列表中選擇有權限的其他Schema。
高級選項
表名沖突
創建表時,如果數據庫中已存在當前創建的表名稱,您可以根據需要選擇如下處理方式:
忽略,繼續創建其他表:忽略當前創建的表,繼續創建其他表。
更新,修改同名表:更新已有表的數據。
報錯,不再重復創建:產生報錯,不再重復創建。
數據類型不支持
創建表時,如果存在不支持的數據類型,您可根據需要選擇如下處理方式:
報錯,導入失敗:產生報錯,數據導入失敗。
忽略,跳過不支持字段所在表:忽略不支持字段所在的表,繼續導入數據。
部分加速
類別
參數名
描述
加速方式
部分加速
支持選擇部分表來創建外部表,可通過表名模糊搜索。
DLF數據源
Server Name
已創建的Foreign Server,用于指定外部數據源的連接信息。
DB Name
Foreign Server中指定DLF Catalog下的數據庫名稱。
目標位置
Holo Schema
默認為public,可在下拉列表中選擇有權限的其他Schema。
高級選項
表名沖突
創建表時,如果數據庫中已存在當前創建的表名稱,您可以根據需要選擇如下處理方式:
忽略,繼續創建其他表:忽略當前創建的表,繼續創建其他表。
更新,修改同名表:更新已有表的數據。
報錯,不再重復創建:產生報錯,不再重復創建。
數據類型不支持
創建表時,如果存在不支持的數據類型,您可根據需要選擇如下處理方式:
報錯,導入失敗:產生報錯,數據導入失敗。
忽略,跳過不支持字段所在表:忽略不支持字段所在的表,繼續導入數據。
搜索
通過表名模糊搜索目標表進行勾選。
單表加速
類別
參數名
描述
加速方式
單表加速
給指定的某一張表創建Hologres外部表。
DLF數據源
Server Name
已創建的Foreign Server,用于指定外部數據源的連接信息。
DB Name
Foreign Server中指定DLF Catalog下的數據庫名稱。
Table Name
DLF數據庫中創建的表名。
Hologres目標表
Schema
默認為public,可在下拉列表中選擇有權限的其他Schema。
表名
新建的Hologres外部表名稱。
說明輸入目標DLF表名后,將會自動填入DLF表名,如您需要修改表名,可以重命名。
目標表描述
新建的Hologres外部表描述,可自定義修改。
單擊提交,即可在左側對應模式下,刷新出新建的外部表。
(可選)您可鼠標雙擊已創建的外部表,單擊查詢表,進入SQL查詢窗口,使用標準的PostgreSQL語言進行開發。
說明輸入表名稱后,會顯示外部源表的所有字段,創建外部表時也將默認創建所有字段。如果您需要創建部分字段,請使用單表加速或SQL語句創建外部表,使用SQL創建外部表的方式請參見CREATE FOREIGN TABLE。
外部表相關操作
編輯外部表
在HoloWeb頁面的左側導航欄,選擇已登錄實例列表。
單擊目標實例 > 目標數據庫 > 目標模式下的外表,顯示所有已創建的外部表。
鼠標雙擊目標外部表,在詳情頁面單擊編輯表。
您可以根據業務需求,更改需要映射的外部源表的字段或分區。
單擊提交,完成對當前外部表的編輯。
修改外部表名稱
在HoloWeb頁面左側導航欄的已登錄實例列表中查詢目標外部表,查詢目標外部表的操作請參見編輯外部表的步驟1~2。
鼠標右鍵單擊目標外部表,選擇重命名。
在修改表名對話框中填入新名稱。
單擊確認。
刪除外部表
在HoloWeb頁面左側導航欄的已登錄實例列表中查詢目標外部表,查詢目標外部表的操作請參見編輯外部表步驟的1~2。
鼠標右鍵單擊目標外部表,選擇刪除表。
在刪除表對話框中單擊確認。
數據預覽
在HoloWeb頁面左側導航欄的已登錄實例列表中查詢目標外部表,查詢目標外部表的操作請參見編輯外部表步驟的1~2。
鼠標雙擊目標外部表,在外部表的詳情頁面單擊數據預覽。
常見問題
問題描述:在HoloWeb中訪問目標外部表時,提示無RAM DLF API相關權限。頁面報錯包含如下信息:
You are not authorized to perform the operation. Please use RAM to authorize the operation.Action: [dlf:xxx].
解決方法:需要在RAM上授予AliyunDLF相關OpenAPI層權限,詳情請參見權限說明。