同步
適用於:磚的SQL磚運行時
的同步
命令用於升級外部表在蜂巢Metastore外部表統一目錄。您可以使用它來創建新表統一目錄從現有的蜂巢Metastore表以及時更新統一編目表的源表在蜂巢Metastore改變。
的同步
命令可以在模式級別使用運行同步模式
語法或一個單獨的表使用同步表
語法。
預覽
這個特性是在公共預覽。
參數
模式
同步
一個模式中的所有表。現有的模式在用戶授權統一目錄中創建表。
現有的模式中
hive_metastore
目錄,屬於用戶。
表
同步
一個單獨的表。一個新的或現有的表內統一編目模式的用戶授權創建表。如果表已經存在是替換匹配
source_table
,用戶還必須自己的桌子上。如果表不存在,它將被創建。現有的表
hive_metastore
用戶擁有。
可選設置升級表統一目錄的所有者
主要
。默認的所有者是當前用戶。幹運行
檢查是否指定
source_table
或表內source_schema
可以升級不創建或升級目標表。這個命令返回DRY_RUN_SUCCESS
如果一個表可以升級。
返回
使用以下報告列:
source_schema字符串
源模式的名稱。模式
零
如果源是一個不受支持的臨時視圖。source_name字符串不零
源表的名稱。
source_type字符串不零
表的類型:
管理
或外部
target_catalog字符串不零
目標目錄在統一編目表同步。
target_schema字符串不零
目標模式在統一編目表同步。
target_name字符串不零
表的名稱統一目錄中的源表的同步。這個名字匹配源表名稱。
status_code字符串不零
狀態碼的結果
同步
源表的命令。描述字符串
一個描述性的信息同步命令源表的狀態。
常見的返回的狀態碼同步
的同步
命令提供了一個獨特的status_code
輸出為每個表中的字段升級到統一目錄代表升級的狀態。一些常見的狀態代碼的建議來解決這些問題:
DRY_RUN_SUCCESS
:幹運行成功。表可以升級到統一目錄使用
同步
命令。DBFS_ROOT_LOCATION
:表位於磚文件係統的根。表位於磚文件係統根目錄的位置。這個不支持統一目錄。複製表數據統一目錄位置使用創建表命令
深克隆
選擇。EXTERNAL_TABLE_IN_MANAGED_LOCATION
:外部表路徑不能在管理存儲。外部表給出的路徑是在統一目錄管理存儲。如果表需要在管理存儲,更新表如表使用管理創建表命令
深克隆
選擇或移動桌子位置統一目錄管理存儲。HIVE_SERDE
:表沒有資格從蜂巢Metastore升級到統一目錄。原因:蜂巢SerDe表。蜂巢SerDe表不支持統一目錄。改變表成三角洲格式和問題
同步
命令來升級。INVALID_DATASOURCE_FORMAT
:未指定數據源格式或不支持。使用一個支持的數據源格式:三角洲、拚花、CSV、JSON、獸人、文本
LOCATION_OVERLAP
與其他外部表:輸入路徑重疊。表的位置重疊與其他外部表。使用一個不同的位置或刪除表的重疊的外部表。
MULTIPLE_EXT_LOCATIONS
:輸入路徑包含其他外部位置。有超過一個外部位置提供表的子目錄的路徑。檢查表內的外部位置的位置是必要的。
MULTIPLE_TARGET_TABLE
:不同的同步表已經存在。每個源表隻有一個目標表是被允許的。源表已經同步到一個不同的目標表之前,是不允許的。強迫
同步
到一個不同的表,刪除該表屬性upgraded_to
從源表或刪除以前同步表從統一目錄,如果不需要了。NOT_EXTERNAL
:表沒有資格從蜂巢Metastore升級到統一目錄。原因:不是一個外部表。同步
命令隻支持外部表遷移到統一目錄。管理表,創建一個目錄表中統一使用管理創建表命令深克隆
選擇。READ_ONLY_CATALOG
在三角洲:數據共享目錄是隻讀的,不能修改或刪除。所選目錄三角洲共享目錄是隻讀的。表在一個隻讀目錄更新後無法使用
同步
命令。成功
:表成功同步。TABLE_ALREADY_EXISTS
:目標表已經存在。表具有相同名稱的選擇表中已經存在統一目錄。重命名或刪除現有表的統一目錄和重新運行
同步
命令。TEMP_TABLE_NOT_SUPPORTED
不支持:臨時表或視圖。臨時表或視圖不能升級到統一目錄。使用臨時表或視圖,創建統一目錄使用顯示創建表命令統一目錄。
超時
:同步任務超時。同步命令任務花費了超過300秒完成。增加
spark.databricks.sync.command.task.timeout
在幾秒鍾內更高的價值。默認值是300。如果錯誤仍然存在聯係的支持。VIEWS_NOT_SUPPORTED
:不支持的觀點。使用手動創建視圖顯示創建表命令統一目錄。
例子
- - - - - -同步一個現有的蜂巢metastore表hive_metastore。默認的。my_tbl- - - - - -來一個團結目錄表命名主要。默認的。my_tbl>同步表主要。默認的。my_tbl從hive_metastore。默認的。my_tbl;source_schemasource_namesource_typetarget_catalogtarget_schematarget_namestatus_code描述- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -默認的my_tbl外部主要默認的my_tbl成功表主要。默認的。my_tbl同步。- - - - - -同步一個表在幹運行模式來評估的可升級性的的蜂巢metastore表。>同步表主要。默認的。my_tbl從hive_metastore。默認的。my_tbl幹運行;source_schemasource_namesource_typetarget_catalogtarget_schematarget_namestatus_code描述- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -默認的my_tbl外部主要默認的my_tblDRY_RUN_SUCCESS- - - - - -同步所有的符合條件的表在模式hive_metastore。mydb來一個團結目錄模式主要。my_db_uc。- - - - - -的升級表在主要。my_db_uc將是擁有通過阿爾夫@melmak。等>同步模式主要。my_db_uc從hive_metastore。my_db集老板”阿爾夫@melmak。等”;source_schemasource_namesource_typetarget_catalogtarget_schematarget_namestatus_code描述- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -…- - - - - -幹運行模式的同步模式來評估所有的表在一個模式- - - - - -hive_metastore。mydb為升級來團結目錄。>同步模式主要。my_db_uc從hive_metastore。my_db幹運行;source_schemasource_namesource_typetarget_catalogtarget_schematarget_namestatus_code描述- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -…