2016-09-29 7 views

答えて

2

Hadoopのファイルシステム-HDFSは、一度書き込むと、多くのファイルシステムを読み込みます。 HDFSでファイルを編集することはできません。必要に応じて追加することもできます。この分散ファイルシステムは、巨大なデータを処理するために設計されています。 VIM、vi、nano、geditなどはUnixファイルエディタであり、Unixファイルシステムのファイル編集にのみ使用できます。 HDFSは基本的に仮想ファイルシステムで、HDFSコマンドでHDFS URIを使用してファイルシステムにアクセスします。 hdfs location/user/user1のファイルを読むと、実際のURIはhdfs:// namenode:port/user/user1になります。通常のunixファイルシステムコマンドを使用してhadoopファイルシステムにアクセスすることはできません。 hadoopファイルシステムにアクセスするには、hadoopファイルシステムコマンドとそれに関連するAPIがあります。 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 
関連する問題