重命名和刪除列與三角洲湖列映射

預覽

這個特性是在公共預覽

磚支持三角洲湖表的列映射,這使得僅元數據更改列標記為沒有重寫數據文件刪除或重命名。它還允許用戶名三角洲表列使用字符不允許拚花,如空間,這樣用戶可以直接攝取CSV或JSON數據到三角洲,而不需要重命名列之前由於字符限製。

重要的

啟用列映射還使隨機文件前綴,消除了使用Hive-style探索數據分區的能力。看到三角洲湖和拚花共享分區策略嗎?

啟用列映射表可能打破依賴三角洲下遊操作改變數據提要。看到修改數據提要的局限性為表列映射啟用

啟用列映射表可能打破流從三角洲表讀取源,包括三角洲生活表。看到表流讀取和寫入

如何啟用三角洲湖列映射

重要的

啟用列映射表升級三角洲表版本。這個協議升級是不可逆轉的。表和列映射使隻能讀入數據磚運行時10.2及以上。

列映射需要以下三角洲協議:

  • 讀者版本2或以上。

  • 作家版本5或以上。

δ表所需的協議版本,您可以啟用列映射通過設置delta.columnMapping.mode的名字

您可以使用下麵的命令來更新表版本,使列映射:

改變<- - - - - -的名字>TBLPROPERTIES(“delta.minReaderVersion”=' 2 ',“delta.minWriterVersion”=“5”,“delta.columnMapping.mode”=“名字”)

請注意

你不能關掉列映射後啟用它。如果你想設置“delta.columnMapping.mode”=“沒有”,你會得到一個錯誤。

重命名一個列

請注意

在磚運行時10.2及以上。

當δ表啟用列映射,您可以重命名列:

改變<- - - - - -的名字>重命名old_col_namenew_col_name

更多的例子,請參閱更新三角洲湖表模式

刪除列

請注意

在磚運行時11.0及以上。

當列映射為δ啟用表,您可以將一個或多個列:

改變table_name下降col_name改變table_name下降(col_name_1,col_name_2,…)

更多細節,請參閱更新三角洲湖表模式

支持字符列名稱

當δ表啟用列映射,您可以包括空間和這些字符表的列的名稱:,{}()\ n \ t =