Hadoop

如何檢查 HDFS“組”內的總分配空間

  • September 16, 2021

我們的 DBA 在 HDFS/HIVE 中為我們的團隊創建了一個模式。不確定“模式”是否是正確的詞,他們稱其為“組”。無論如何,我們只能寫入這個模式內的數據湖,無論是 parquet 文件還是 hive 表。有沒有辦法檢查分配給我們組的最大空間是多少,只知道模式名稱?我不想意外載入太多數據。

謝謝你。

僅因為 Hive 與 HDFS 儲存完全分離,所以**無法在 Hive 級別設置空間配額。**在 Hive 中,您不僅可以在 hive.metastore.warehouse.dir 中創建表,還可以在 HDFS 的其他目錄中創建外部表。外部表不僅可以由 Hive 載入,甚至 Hive 託管的表也可以由其他一些工具在沒有 Hive 的情況下載入(例如,您可以手動將文件放入表目錄,不管是託管的還是外部的)。此外,您不僅可以將 HDFS 用於 Hive。因此,不可能在 Hive 中設置空間配額,即使可以,也不實際,Hive 不知道您在 HDFS 中還做了什麼。

閱讀有關HDFS 空間配額的資訊。可以為目錄中的文件設置空間配額。也可以為使用者(組)設置權限,允許他們訪問某些目錄。HDFS 目錄 ACL + 目錄空間配額可以組合來限制使用者或組僅使用允許的目錄(帶有空間配額)。

您可以使用檢查目錄配額

hadoop fs -count -q /path/to/directory

要檢查目錄 ACL,請使用以下命令:

hdfs dfs -getfacl [-R] <path>

在FS shell 命令指南中查看更多資訊。

另請閱讀Hive 授權選項

引用自:https://dba.stackexchange.com/questions/290855