EMR-3.30版本JindoFS引入分層存儲功能。通過該功能您可以根據數據冷熱程度選擇不同的存儲介質來存儲數據,以減少數據存儲成本,或者加速訪問數據的速度。

使用Jindo jfs

執行以下命令,獲取幫助信息。
jindo jfs -help archive
-archive -i/a <path> ... :
Archive commands.

JindoFS分層存儲命令均為異步執行,分層存儲命令只是啟動相關任務執行。

Cache命令

Cache命令可以備份對應路徑的數據至本集群的磁盤,以便于后續可以讀取本地數據,無需讀取OSS上的數據。
jindo jfs -cache -p <path>

-p參數可以保證本地數據不受磁盤水位清理。

Uncache命令

Uncache命令可以刪除本地集群中的本地備份,只存儲數據在OSS標準存儲上,以便于后續讀取OSS上的數據。
jindo jfs -uncache  <path>

Archive命令

Archive命令可以歸檔存儲數據,刪除本地磁盤上的數據備份,歸檔OSS上的數據至低頻訪問存儲或者歸檔存儲上。存儲類型請參見對象存儲OSS的存儲類型介紹
jindo jfs -archive -i|-a <path>

-i參數可以歸檔數據至OSS低頻存儲類型。-a參數可以歸檔數據至OSS歸檔存儲類型。

Unarchive命令

Unarchive命令可以將數據從歸檔存儲類型恢復到低頻存儲或者標準存儲,同時可以臨時解凍歸檔存儲類型,使數據臨時可讀,有效時間為1天。
jindo jfs -unarchive -i/-o <path>

Unarchive默認可以將數據恢復成標準存儲,-i參數可以恢復數據至低頻存儲類型。-o參數可以臨時解凍歸檔存儲類型,使數據臨時可讀。

Status命令

Status命令可以查看任務進度信息,默認會統計該路徑需要執行分層存儲的文件數目以及已經完成的數據。
jindo jfs -status -detail/-sync <path>

-detail參數可以查看文件進度信息。-sync參數表示該命令需要同步等待分層存儲任務結束才會退出。

ls2命令

JindoFS擴展hadoop ls相關操作,提供ls2命令可以查看文件存儲狀態。
hadoop fs -ls2 <path>
返回信息會包含文件的存儲類型,示例如下。
drwxrwxrwx  - -         0    2020-06-05 04:27 oss://xxxx/warehouse
-rw-rw-rw-  1 Archive   1484 2020-09-23 16:40 oss://xxxx/wikipedia_data.csv
-rw-rw-rw-  1 Standard  1676 2020-06-07 20:04 oss://xxxx/wikipedia_data.json