java hadoop JavaApi訪問hdfs在實(shí)際工作中的作用是什么?
hadoop JavaApi訪問hdfs在實(shí)際工作中的作用是什么?實(shí)際效果是可以直接用java代碼處理批處理數(shù)據(jù),調(diào)用API編寫代碼靈活,處理數(shù)據(jù)方便,調(diào)試方便。另一種方法是使用stream方法。相對
hadoop JavaApi訪問hdfs在實(shí)際工作中的作用是什么?
實(shí)際效果是可以直接用java代碼處理批處理數(shù)據(jù),調(diào)用API編寫代碼靈活,處理數(shù)據(jù)方便,調(diào)試方便。另一種方法是使用stream方法。相對于javaapi,這種方法的優(yōu)點(diǎn)是不需要Java代碼,只要它是一個(gè)可執(zhí)行程序。我一般使用stream方法,因?yàn)槲抑饕獙慍和Python代碼
好像您啟用了HDFS的權(quán)限檢查功能,所以當(dāng)您訪問HDFS時(shí),namenode會檢查用戶的權(quán)限。
您要立即修改/處理/startall.txt文件文件權(quán)限、進(jìn)程目錄和startall.txt文件有效用戶、有效組及其權(quán)限是什么?
假設(shè)進(jìn)程目錄startall.txt文件原始有效用戶和有效組分別為root和supergroup,原始權(quán)限為750。如果您在自己的計(jì)算機(jī)上運(yùn)行上述程序,它將自動獲得當(dāng)前計(jì)算機(jī)的登錄用戶(假設(shè)為wyc)來訪問HDFS。顯然,您的程序甚至不能進(jìn)入進(jìn)程目錄。
此外,如果要更改目錄或文件的權(quán)限,則當(dāng)前用戶必須是有效用戶或超級用戶。
如果你想解決它,呵呵,如果你設(shè)置它hadoop.security.authentication驗(yàn)證屬性,也就是說,如果身份驗(yàn)證方法很簡單(默認(rèn)值為simple),則還可以利用此身份驗(yàn)證方法的漏洞。可以偽裝成有效用戶或超級用戶運(yùn)行程序。
此外,還有一行代碼需要修改。實(shí)驗(yàn)之后,我發(fā)現(xiàn)在設(shè)置權(quán)限的行中有一個(gè)錯誤,如下所示:
//hdfs.set權(quán)限(dstPath,new FsPermission((short)775))hdfs.set權(quán)限(dstPath,新FsPermission(“755”))