使用上傳的檔案來建立或修改 table
使用檔案上傳 頁面建立或修改 table,可讓您上傳 CSV、TSV 或 JSON、Avro、Parquet 或文本檔,以建立或覆寫受控 Delta Lake table。
您可以在 Unity Catalog 或 Hive 中繼存放區中建立受控 Delta tables。
重要
- 您必須能夠存取執行中的計算資源和許可權,才能在目標 schema中建立 tables。
- 工作區管理員可以停用使用檔案上傳頁面建立或修改
的功能 。
您可以使用UI從本機計算機匯入小型 CSV、TSV、JSON、Avro、Parquet 或文本檔,來建立 Delta table。
- 使用檔案上傳 頁面建立或修改 table 支援一次上傳最多 10 個檔案。
- 上傳的檔案大小總計必須低於 2 GB。
- 檔案必須是 CSV、TSV、JSON、Avro、Parquet 或文本檔,且擴展名為 “.csv”、“.tsv” (或 “.tab”、“.json”、“.avro”、“.parquet” 或 “.txt”。
- 不支援壓縮檔案,例如
zip
和tar
檔案。
上傳檔案
- 按兩下 [新增>數據]。
- 點選 建立或修改 table。
- 按兩下檔案瀏覽器按鈕,或直接將檔案拖放到放置區域。
注意
匯入的檔案會上傳至您帳戶內的安全內部位置,每日會進行垃圾收集。
預覽、配置和建立 table
您可以將數據上傳至預備區域,而不需要連線到計算資源,但您必須 select 作用中的計算資源來預覽和設定您的 table。
當您設定上傳 table選項時,您可以預覽 50 個資料列。 按兩下檔名底下的方格或 list 按鈕,以切換數據的呈現方式。
Azure Databricks 會將已管理的 tables 的數據檔儲存在為包含 schema而配置的位置。 您需要適當的許可權,才能在 schema中建立 table。
執行下列動作,在 Select 中建立 schema 所需的 table:
- (僅適用於啟用了 Unity Catalog的工作區)您可以 select 一個 catalog 或舊版的
hive_metastore
。 - Select a schema。
- (選擇性)編輯 table 名稱。
注意
您可以使用下拉式清單來 select覆寫現有的 table 或 建立新的 table。 嘗試使用名稱衝突建立新 tables 的操作會顯示錯誤訊息。
您可以在建立 table之前,先設定 選項 或 columns。
若要建立
格式選項
格式選項取決於您上傳的檔案格式。 一般格式選項會出現在標頭列中,而在 [進階屬性] 對話框中則提供較不常用的選項。
- 針對 CSV,有下列選項可供使用:
- 第一列包含標頭 (預設為啟用):此選項會指定 CSV/TSV 檔案是否包含標頭。
- Column 分隔符:columns之間的分隔符。 僅允許單一字元,且不支援反斜線。 這預設為 CSV 檔案的逗號。
-
自動偵測 column 類型(預設啟用):自動從檔案內容偵測 column 類型。 您可以在預覽 table中編輯類型。 如果將 set 設定為 false,則所有 column 類型都會被推斷為
STRING
。 - 數據列跨越多行(預設為停用):column的值是否可以跨越檔案中的多行。
- 合併多個檔案中的 schema:是否要在多個檔案中推斷 schema,並合併每個檔案的 schema。 如果停用,則會使用一個檔案中的 schema。
- 針對 JSON,有下列選項可供使用:
-
自動偵測 column 類型(預設啟用):自動從檔案內容偵測 column 類型。 您可以在預覽 table中編輯類型。 如果將 set 設為 false,則所有 column 類型會被推斷為
STRING
。 - 資料列跨越多行(預設啟用):column的值是否可以跨越檔案中的多行。
- 允許批注 (預設為啟用):檔案中是否允許批注。
- 允許單引號 (預設為啟用):檔案中是否允許單引號。
-
推斷時間戳 (預設為啟用):是否嘗試將時間戳字串推斷為
TimestampType
。
-
自動偵測 column 類型(預設啟用):自動從檔案內容偵測 column 類型。 您可以在預覽 table中編輯類型。 如果將 set 設為 false,則所有 column 類型會被推斷為
- 針對 JSON,有下列選項可供使用:
-
自動偵測 column 類型(預設啟用):自動從檔案內容偵測 column 類型。 您可以在預覽 table中編輯類型。 若 set 為 false,則所有 column 類型都會被推斷為
STRING
。 - 數據列跨越多行(預設為停用):column的值是否可以跨越檔案中的多行。
- 允許批注 檔案中是否允許批注。
- 允許單引號:檔案中是否允許單引號。
-
推斷時間戳:是否嘗試將時間戳字串推斷為
TimestampType
。
-
自動偵測 column 類型(預設啟用):自動從檔案內容偵測 column 類型。 您可以在預覽 table中編輯類型。 若 set 為 false,則所有 column 類型都會被推斷為
當您編輯格式選項時,數據預覽會自動更新。
注意
當您上傳多個檔案時,適用下列規則:
- 標頭設定適用於所有檔案。 請確定標頭一致不存在或存在於所有上傳的檔案中,以避免數據遺失。
- 上傳的檔案會藉由將所有數據附加為目標 table中的數據列來合併。 不支援在檔案上傳期間加入或合併記錄。
Column 名稱和類型
您可以編輯 column 名稱和類型。
若要編輯類型,請按兩下具有類型的圖示。
注意
您無法編輯或
STRUCT
的ARRAY
巢狀類型。若要編輯 column 名稱,請按兩下 column頂端的輸入方塊。
Column 名稱不支援逗號、反斜杠或 unicode 字元(例如 emojis)。
根據預設,CSV 和 JSON 檔案會推斷 Column 數據類型。 您可以停用 進階屬性,>自動偵測 column 類型,將所有 columns 解譯為 STRING
類型。
注意
-
Schema 推斷會盡最大努力偵測 column 類型。 如果值無法正確轉換成目標數據類型,變更 column 類型可能會導致某些 values 轉換成
NULL
。 不支援將BIGINT
轉換成DATE
或TIMESTAMP
columns。 Databricks 建議您先建立 table,然後再使用 SQL 函式轉換這些 columns。 - 為了支援具有特殊字元的 tablecolumn 名稱,檔案上傳 頁面透過 Column 映射來建立或修改 table 。
- 若要將批註新增至 columns,請建立 table,然後瀏覽至 Catalog Explorerwhere,您便可以新增批註。
支援的數據類型
使用檔案上傳 頁面建立或修改 table 支援下列數據類型。 如需有關個別資料類型的詳細資訊,請參閱 SQL 資料類型。
資料類型 | 描述 |
---|---|
BIGINT |
8 位元組帶正負號的整數。 |
BOOLEAN |
布爾值(true ,false )values。 |
DATE |
Values 包含欄位 values,其中包括年、月、日,且不含時區。 |
DOUBLE |
8 位元組雙精確度浮點數。 |
STRING |
字元字串 values。 |
TIMESTAMP |
Values 包含 values,該欄位包括年、月、日、時、分和秒,以及本地會話 timezone。 |
STRUCT |
Values 由一連串欄位描述的結構。 |
ARRAY |
Values 包含一連串具有特定類型的元素elementType . |
DECIMAL(P,S) |
具有最大精確度 P 和固定位元數 S 的數位。 |
已知問題
轉換成 BIGINT
不可轉換的類型 DATE
,例如格式為 『yyyy』 的日期,可能會觸發錯誤。