使用中繼資料清單匯出功能,您可以將某個Bucket下的OSS-HDFS服務的中繼資料清單匯出到某個特定路徑,格式為JSON檔案,方便您對中繼資料進行統計分析。
前提條件
使用最新版本JindoSDK。下載地址,請參見GitHub。
配置OSS-HDFS服務下Bucket的存取金鑰。
具體操作,請參見通過Jindo CLI命令訪問OSS/OSS-HDFS。
操作步驟
匯出中繼資料清單。
登入OSS管理主控台。
單擊Bucket 列表,然後單擊目標Bucket名稱。
在左側導覽列,選擇。
在匯出中繼資料清單地區,單擊匯出。
匯出過程大約需要數分鐘乃至數小時,具體用時取決於中繼資料量的大小。輸出的清單結果檔案預設儲存在
oss://<hdfs_bucket>.<dls_endpoint>/.sysinfo/inventory/路徑下,暫不支援自訂輸出路徑。重要.sysinfo/inventory/目錄不支援刪除。該目錄下的結果檔案支援訪問和刪除。
下載檔案。
執行以下命令下載中繼資料清單結果檔案。
jindo fs -get oss://<hdfs_bucket>.<dls_endpoint>/.sysinfo/inventory/1666584461201.2ce40fba-5704-45c4-8720-d92a891d**** /tmp/通過vi或vim命令開啟中繼資料清單結果檔案。
中繼資料清單結果檔案樣本如下:
{"id":6289437267661375236,"path":"/user/spark/.sparkStaging/application_1767273535967_0001/__spark_libs__5660687526220176997.zip","type":"file","size":315253339,"user":"spark","group":"supergroup","ctime":1767273541200,"atime":1767273541321,"mtime":1767273541897,"storagePolicy":"UNSPECIFIED","permission":420,"state":0,"storageState":"STD"}中繼資料清單結果檔案各欄位的含義說明如下:
欄位
含義
id
檔案或目錄ID。
path
檔案或目錄路徑。
type
中繼資料類型。
directory:表示目錄。
file:表示檔案。
size
資料大小,單位為位元組。
當中繼資料類型為file時,size欄位的值為檔案大小。
當中繼資料類型為directory,size欄位的值為0。
user
檔案或目錄所屬的owner。
group
檔案或目錄所屬的使用者組。
ctime
檔案或目錄的建立時間,格式為時間戳記。
atime
檔案或目錄的訪問時間,格式為時間戳記。
mtime
檔案或目錄的修改時間,格式為時間戳記。
permission
檔案或者目錄的許可權。
storagePolicy
儲存策略。
UNSPECIFIED(預設值,等同於標準)。CLOUD_STD(標準)。CLOUD_IA(低頻)。CLOUD_AR(歸檔)。CLOUD_COLD_AR(冷歸檔)。CLOUD_DEEP_COLD_AR(深度冷歸檔)。CLOUD_AR_RESTORED(歸檔已解凍)。CLOUD_COLD_AR_RESTORED(冷歸檔已解凍)。CLOUD_DEEP_COLD_AR_RESTORED(深度冷歸檔已解凍)。
state
檔案/目錄實際分層狀態。
預留欄位,目前的版本暫未啟用
storageState
當前分層的進度。
預留欄位,目前的版本暫未啟用
(可選)刪除中繼資料清單結果檔案。
OSS-HDFS中繼資料清單結果檔案會佔用儲存空間,進而產生儲存費用。如果您確認不再需要保留該中繼資料清單結果檔案,建議通過Hadoop命令的方式及時刪除。
重要刪除中繼資料清單結果檔案時,中繼資料清單結果檔案所在路徑必須與步驟1輸出結果中Data Location保持一致,避免誤刪除.dlsdata和.sysinfo路徑下的系統資料。
執行Jindo CLI命令刪除中繼資料清單結果檔案的樣本如下:
jindo fs -rm -skipTrash oss://<hdfs_bucket>.<dls_endpoint>/.sysinfo/inventory/1666584461201.2ce40fba-5704-45c4-8720-d92a891d****