1

クラスターに大量のファイル (+/- 500 000) をロードする必要があり、非常に長い時間がかかります。各ファイルは gzip 形式で、80Mb の容量が必要です。

今のところ、put でファイルをロードするために while ループを使用していますが、おそらく最善の解決策があります...

ご協力ありがとうございます。

4

3 に答える 3

3

あなたが説明した方法で問題を理解するのは難しいです。

HDFS は、分割せずに gzip 圧縮をサポートします。ファイルはそれぞれ約 80MB であるため、分割は大きな問題ではありません。128MB 以上のブロック サイズを使用するようにしてください。

ファイルのアップロードについてですが、単純に -put コマンドでディレクトリ全体をアップロードしてみませんか?

hadoop fs -put local/path/to/dir path/in/hdfs 

トリックを行います。

于 2013-10-10T12:37:01.427 に答える
1

より高速なマップジョブ並列を使用してデータをロードする PivotalHD の DataLoader を調べることができるかもしれません。このリンクPivotalHD Dataloaderを確認してください。

于 2013-10-10T13:56:36.947 に答える
0

https://github.com/endgameinc/binarypigにある Binarypig の BuildSequenceFileFromDir を使用できます。

于 2013-10-10T13:20:38.173 に答える