爲什麼hadoop不允許使用VIM編輯文件。我想用編輯器使用HDFS命令行編輯修改文件。爲什麼hadoop不允許使用VIM編輯文件?
2
A
回答
2
Hadoop的文件系統,HDFS是一次寫入,多次讀取文件系統。我們無法編輯HDFS中的任何文件,如果需要,我們可以追加。這個分佈式文件系統專爲處理大量數據而設計。 VIM,vi,nano,gedit等都是unix文件編輯器,只能用於編輯Unix文件系統中的文件。 HDFS基本上是虛擬文件系統,我們使用帶有HDFS命令的HDFS URI訪問文件系統。當我們讀取hdfs位置/ user/user1中的文件時,實際的URI是hdfs:// namenode:port/user/user1。我們不能使用普通的unix文件系統命令來訪問hadoop文件系統。我們有hadoop文件系統命令和相關的api來訪問hadoop文件系統。 hadoop的文件系統存儲在底層unix服務器的磁盤中,但它具有獨立的元數據和根據HDFS體系結構存儲的塊。
HDFS文件系統結構和格式相比UNIX文件系統完全不同。由於該系統旨在處理大量數據,因此不會添加編輯選項以避免編輯大量文件的開銷。如果您瞭解了HDFS的體系結構以及文件的存儲方式,您將清楚地知道爲什麼編輯文件的選項不存在於hdfs中。
追加東西一個文件都有,因爲它不會涉及完整的文件和文件元數據的變化更小的開銷。但是修改文件中的某些內容是一項巨大的開銷,因爲它涉及數據的完整修改以及相關的元數據。
1
可以複製this 5 line script並使用
hvim <your filename>
和腳本代碼:
hadoop fs -text $1>hvim.txt
vim hvim.txt
hadoop fs -rm -skipTrash $1
hadoop fs -copyFromLocal hvim.txt $1
rm hvim.txt
相關問題
- 1. %爲什麼不允許
- 2. EditText不允許編輯
- 3. TextField不允許編輯
- 4. 形式不允許編輯
- 5. UITextFields不允許我編輯文本
- 6. 用vim編輯文件名
- 7. 允許用戶編輯CSS
- 8. 爲什麼VC++ 2010允許它編譯?
- 9. 爲什麼android允許刪除正在使用的文件.....?
- 10. 爲什麼Django不允許使用上下文重定向
- 11. 嘗試在調試中編輯時不允許更改爲64位,爲什麼?
- 12. 使用多個IE的IE6不允許我編輯文本框
- 13. 允許附加文件但不能編輯注意文本
- 14. 爲什麼使用hdfs://前綴作爲文件路徑允許打開文件?
- 15. 什麼,允許用戶編輯網站維基風格
- 16. 爲什麼熊貓允許編輯DataFrames而不是一系列對象
- 17. 編輯Vim縮進文件
- 18. 爲什麼python不允許我刪除文件?
- 19. 爲什麼chmod 777不允許在rwxrwxrwx文件上?
- 20. 爲什麼drjava不允許我創建一個jar文件?
- 21. 爲什麼Subversion不允許提交.htaccess文件?
- 22. 爲什麼在Typescript中不允許使用邏輯賦值(&=)運算符?
- 23. 爲什麼允許空的wchar_t文字?
- 24. 爲什麼許多SWT控件不允許繼承子類?
- 25. 爲什麼在VIM中啓用winmanager會關閉我當前的編輯文件?
- 26. 爲什麼不允許密碼驗證?
- 27. 爲什麼sfinae如果constexpr不允許?
- 28. 爲什麼樣式表列不允許?
- 29. 爲什麼a,b = 1不允許?
- 30. 爲什麼PHP不允許比較?
目前還不清楚你問這裏。我會澄清這個問題。 –