Hadoop
Hadoop 將數據移動到另一個使用者
我的 hdfs 中有幾百 GB 用於 userA(單節點配置)。我想將所有這些數據傳輸給 userB,這將更適合我正在設置的多節點配置。
我嘗試了以下但沒有成功:
hadoop fs -chown -R userB:hadoop PATH
,當以 userB 身份登錄時,我看不到數據,儘管 userB 設置為 hdfs 所有者,但 userA 很好。- 以使用者 B 身份嘗試
start-all.sh
,需要更改一些訪問控制。同樣的事情我什麼也沒看到。- 試圖強制
<name>hadoop.tmp.dir</name>
使用者A- 試圖將
hadoop-userA
dir 重命名為hadoop-userB
列出目錄時我有以下內容
drwxr-xr-x - userB hadoop 0 2011-05-29 18:17 /user/userA/tmp
看起來數據仍歸使用者A所有。知道如何解決嗎?
添加 userB在組 hadoop 中(當然)。
要使其工作,您需要執行以下操作:
- 確保 userB 可以寫入日誌目錄
- 確保 userB 可以寫入 dfs/ 目錄
- 確保 userB 對目錄具有讀取權限
hadoop fs -chown userB:hadoop
數據將保留在 /user/userA/ ,因此您需要使用絕對路徑進行查詢
hadoop fs -ls /user/userA/<path>
使用相對路徑會將您指向不同的位置
hadoop fs -ls
嘗試設置讀取權限:
hadoop fs -chmod -R 644 PATH