使用 Unity 目錄外部位置載入資料
重要
這項功能處於公開預覽狀態。
本文說明如何使用加入資料 UI,透過 Unity Catalog 外部位置,從 Azure Data Lake Storage Gen2 中的數據建立受管數據表。 外部位置是一個物件,可將雲端儲存體路徑與授權存取雲端儲存體路徑的儲存體認證相結合。
開始之前
開始之前,您必須具備下列條件:
- 已啟用 Unity 目錄的工作區。 如需詳細資訊,請參閱 設定和管理 Unity 目錄。
- 對外部位置的
READ FILES
權限。 如需詳細資訊,請參閱建立外部位置以將雲端儲存連線到 Azure Databricks。 - 您需要對您要在其中建立 Managed 表的架構具有
CREATE TABLE
許可權,對該架構具有USE SCHEMA
許可權,以及對父目錄具有USE CATALOG
許可權。 如需詳細資訊,請參閱 Unity Catalog 許可權和可保護的實體物件。
檔案類型
支援以下檔案:
- CSV
- TSV
- JSON
- XML
- AVRO
- Parquet
步驟 1:確認對外部位置的存取權
若要確認對外部位置的存取權,請執行下列動作:
- 在 Azure Databricks 工作區的側邊欄中,按一下 [目錄] 。
- 在 [目錄總管] 中,按一下 [外部數據]>[外部位置]。
步驟 2:建立受控數據表
若要建立受控數據表,請執行下列動作:
在工作區的側邊欄中,按一下 [+ 新增]>[新增資料]。
在新增資料 UI 中,按一下 [Azure Data Lake Storage]。
從下拉式清單中選取外部位置。
選取您要載入 Azure Databricks 的資料夾和檔案,然後按兩下 [預覽] 資料表
。 從下拉式清單中選取目錄和架構。
(選擇性)編輯數據表名稱。
(選擇性)若要依檔類型設定進階格式選項,請按兩下 [進階屬性]、關閉 [自動偵測文件類型],然後選取檔類型。
如需格式選項的清單,請參閱下一節。
(選擇性)若要編輯資料行名稱,請按兩下資料行頂端的輸入方塊。
數據行名稱不支援逗號、反斜杠或 Unicode 字元(例如 emojis)。
(選擇性)若要編輯欄類型,請點擊圖示上的類型。
點擊 [建立資料表]。
檔案類型格式選項
視檔案類型而定,可以使用下列格式選項:
格式選項 | 描述 | 支援的檔案類型 |
---|---|---|
Column delimiter |
欄位之間的分隔符。 僅允許單一字元,且不支援反斜線。 預設值是逗號。 |
CSV |
Escape character |
剖析資料時要使用的逸出字元。 預設值是引號。 |
CSV |
First row contains the header |
此選項會指定檔案是否包含標頭。 預設為啟用。 |
CSV |
Automatically detect file type |
自動偵測檔案類型。 預設值為 true 。 |
XML |
Automatically detect column types |
自動從檔案內容偵測數據行類型。 您可以在預覽資料表中編輯類型。 如果此值設定為 false,則所有數據行類型都會推斷為 STRING。 預設為啟用。 |
- CSV - JSON - XML |
Rows span multiple lines |
欄位的值是否可以跨越檔案中的多行。 預設為停用。 |
- CSV - JSON |
Merge the schema across multiple files |
是否要跨多個檔案推斷架構,以及合併每個檔案的架構。 預設為啟用。 |
CSV |
Allow comments |
檔案中是否允許註解。 預設為啟用。 |
JSON |
Allow single quotes |
檔案中是否允許單引號。 預設為啟用。 |
JSON |
Infer timestamp |
是否嘗試將時間戳記字串推斷為 TimestampType 。預設為啟用。 |
JSON |
Rescued data column |
是否要儲存不符合架構的數據行。 如需詳細資訊,請參閱 什麼是獲救的數據欄?。 預設為啟用。 |
- CSV - JSON - Avro - Parquet |
Exclude attribute |
是否要排除元素中的屬性。 預設值為 false 。 |
XML |
Attribute prefix |
屬性的前置詞,用於區分屬性與元素。 預設值為 _ 。 |
XML |
欄位資料類型
支援下列數據行數據類型。 如需有關個別資料類型的詳細資訊,請參閱 SQL 資料類型。
資料類型 | 描述 |
---|---|
BIGINT |
8 位元組帶正負號的整數。 |
BOOLEAN |
布林值(true ,false ) |
DATE |
不帶時區的日期。 |
DECIMAL (P,S) |
具有最大精確度 P 和固定位元數 S 的數位。 |
DOUBLE |
8 位元組雙精確度浮點數。 |
STRING |
字元字串值。 |
TIMESTAMP |
值,包含欄位 year、month、day、hour、minute 和 second 的值,以及會話本地時區。 |
已知問題
- 在複雜資料類型中,您可能會遇到特殊字元的問題,例如 JSON 物件中的索引鍵包含倒引號或冒號。
- 某些 JSON 檔案可能需要您手動選取檔類型的 JSON。 若要在選取檔案之後手動選取檔類型,請按兩下 [進階屬性]、關閉 [自動偵測文件類型],然後選取 [JSON]。
- 複雜類型內的巢狀時間戳記和小數可能會遇到問題。