如何路徑由統一目錄管理的數據的工作嗎?
本文解釋限製在路徑重疊統一目錄,細節基於路徑的數據文件訪問模式統一目錄對象,並描述了如何統一目錄管理路徑表和卷。
請注意
卷在磚運行時僅支持13.2及以上。磚13.1運行時,下麵的行動/卷
路徑可能會成功,但可以臨時性存儲磁盤寫入數據附加到計算集群而不是持久化數據統一目錄冊。
統一目錄對象的路徑不能重疊
統一目錄執行數據治理,防止管理目錄的數據重疊。統一目錄執行以下規定:
外部位置不能重疊其他外部位置。
表和卷數據文件存儲在外部位置或metastore根的位置。
卷不能重疊其他卷。
表不能重疊其他表。
表和卷不能互相重疊。
管理存儲位置不能互相重疊。看到管理存儲。
外部卷不能重疊管理存儲的位置。
外部表不能重疊管理存儲的位置。
這些規則意味著限製存在於統一目錄如下:
你不能在另一個外部位置定義外部位置。
你不能定義一個卷在另一個卷。
你不能在另一個表中定義一個表。
你不能定義一個表在任何數據文件或目錄內的體積。
你不能在一個表上定義一個卷目錄。
請注意
你總是可以使用基於路徑訪問卷寫或讀取數據文件,包括三角洲湖。你不能注冊這些數據文件中的表統一目錄metastore。
路徑管理卷被統一全麵管理目錄表和管理
當您創建一個表或一個卷管理,統一目錄創建一個新的目錄統一Catalog-configured存儲位置與包含關聯模式。這個目錄是隨機生成的名稱,以避免任何潛在的衝突和其他目錄已經存在。
這種行為不同於蜂巢metastore創建管理表。磚建議總是與統一目錄管理表交互使用的表名和統一目錄管理卷使用卷的路徑。
路徑為外部表和外部卷由統一目錄
當你創建一個外部表或外部卷,您指定一個路徑在一個外部位置由統一目錄。
重要的
磚建議不要創建一個外部卷或外部表的根源外部位置。相反,創建外部卷和外部表在外部子目錄的位置。這些建議將有助於避免意外地重疊路徑。看到統一目錄對象的路徑不能重疊。
為了便於使用,磚建議相互作用統一目錄外部表使用目錄表名和統一外部卷使用卷的路徑。
重要的
統一目錄管理所有權限訪問使用雲uri與外部表關聯的數據或外部卷。這些權限覆蓋與外部關聯的任何特權的位置。看到統一目錄權限和可獲得的對象
你如何訪問數據在統一目錄嗎?
統一目錄對象通過對象標識符,提供對數據的訪問路徑,體積或雲uri。你可以通過多種方法和一些相關的數據對象的訪問。
統一目錄表使用一個三層的標識符來訪問以下模式:
<catalog_name> . <schema_name> . <table_name>
卷提供訪問數據文件的文件路徑使用以下模式:
/卷/ <catalog_name> / <schema_name> / <volume_name> / <path_to_file>
雲uri要求用戶提供司機,存儲容器標識符、目標文件的完整路徑,比如下麵的例子:
s3:/ / <bucket_name> / <路徑>
下麵的表顯示了統一的訪問方法允許目錄對象:
對象 |
對象標識符 |
文件路徑 |
雲URI |
---|---|---|---|
外部位置 |
沒有 |
沒有 |
是的 |
管理表 |
是的 |
沒有 |
沒有 |
外部表 |
是的 |
沒有 |
是的 |
管理卷 |
沒有 |
是的 |
沒有 |
外部卷 |
沒有 |
是的 |
沒有 |
請注意
統一目錄冊使用三層對象標識符使用以下模式(如管理命令創建體積
和下降體積
):
<catalog_name> . <schema_name> . <volume_name>
與文件實際工作卷,您必須使用基於路徑訪問。