升級統一目錄表和視圖
本文描述了如何升級現有的注冊表和視圖蜂巢metastore統一目錄。
確定注冊表目前統一目錄,檢查目錄名稱。表目錄hive_metastore
在蜂巢metastore注冊。其他由統一目錄列出目錄。
請注意
統一目錄管理分區不同蜂巢。蜂巢的命令不支持直接操作分區表上由統一目錄管理。
或多個表統一目錄升級模式
你可以複製完整的模式(數據庫)和多個外部表從你默認蜂巢metastore統一目錄metastore使用數據瀏覽升級向導。
升級過程
點擊數據在側欄打開數據瀏覽。
選擇
hive_metastore
當你的目錄和選擇你想要的模式(數據庫)升級。點擊升級在右上角的模式細節視圖。
選擇你想要的所有表的升級和點擊下一個。
為每個表設置目的地目錄和模式。
你將能夠訪問新創建的表中目錄和模式。目標目錄和模式可以設置單獨為每個表或散裝。批量設置它們,首先選擇部分或全部表,然後設置目的地目錄和模式。
檢查表的配置。要修改,單擊以前的按鈕。
點擊創建查詢升級。
查詢編輯器出現生成的SQL語句。
運行該查詢。
查詢完成後,每個表的元數據被複製從蜂巢metastore統一目錄。這些表中標記為升級升級向導。
定義使用的細粒度訪問控製權限每個新表的選項卡。
修改您的工作負載使用新表。
外部表升級到統一目錄
你可以複製一個外部表從你默認蜂巢metastore統一目錄metastore使用數據瀏覽。
升級過程
升級一個外部表:
點擊數據在側欄打開數據瀏覽。
選擇數據庫,然後,你想升級。
點擊升級操作在桌子的右上角細節視圖。
選擇您的目的地目錄和數據庫中統一目錄,然後單擊升級。
表元數據被複製到統一目錄,並創建一個新表。現在,您可以定義的細粒度訪問控製權限選項卡。
修改工作負載使用新表。
請注意
如果你不再需要舊的表,你可以從蜂巢Metastore放棄。減少外部表不修改雲租戶的數據文件。
升級統一目錄
你升級後所有視圖的引用表相同的目錄metastore統一,你可以創建一個新視圖引用新表。
升級一個表統一目錄管理表
升級一個表統一目錄管理表:
創建一個新的目錄表統一通過查詢現有表。替換占位符的值:
<目錄>
新表:統一目錄編目。< new_schema >
:統一編目模式為新表。< new_table >
:統一目錄表的名稱。< old_schema >
:舊表的模式,比如默認的
。< old_table >
:舊的表的名稱。
創建表<目錄>。<new_schema>。<new_table>作為選擇*從hive_metastore。<old_schema>。<old_table>;
df=火花。表(“hive_metastore。< old_schema >。< old_table >”)df。寫。saveAsTable(的名字=“<目錄>,< new_schema >。< new_table >”)
%r圖書館(SparkR)df=tableToDF(“hive_metastore。< old_schema >。< old_table >”)saveAsTable(df=df,的表=“<目錄>,< new_schema >。< new_table >”)
瓦爾df=火花。表(“hive_metastore。< old_schema >。< old_table >”)df。寫。saveAsTable(的表=“<目錄>,< new_schema >。< new_table >”)
如果你想遷移隻有一些列或行,修改
選擇
聲明。請注意
這個命令創建一個管理表的數據複製到存儲位置時被提名metastore成立。創建一個外部表注冊表,統一目錄不動雲存儲中的數據,看看外部表升級到統一目錄。
格蘭特戶頭級別用戶或組對新表的訪問。看到統一目錄管理權限。
表遷移後,用戶應該更新他們現有的查詢和工作負載使用新表。
在你刪除舊表之前,測試依賴關係通過撤銷訪問它,重新運行相關的查詢和工作負載。