NFS マウントから Hadoop への並列コピーを実現する最善かつ迅速な方法は何ですか? 膨大な数のファイルを含むマウントがあり、それを hdfs にコピーする必要があります。
いくつかのオプション:
- マルチスレッドで copyFromLocal を実行する
- 分離された方法で distcp を使用します。
- コピーを行うためにマップのみのジョブを作成できますか?
よろしく、JD
重要な問題は、NFS リンクのソース側に何があるかということだと思います。NAS の場合、copyFromLocal を同時に (それぞれ 1 つ) 実行している複数のクライアント マシンがある状況の方が適している可能性があります。高性能 NAS でさえ、同じクライアントから 5 ~ 10 を超える同時ディスク読み取りを行うと、満足できなくなります。以下をモデル化します (すべて copyFromLocal を使用)。
プロセスの起動コストが高すぎるため、M/R は絶対に避けます。また、ソース NAS にどれだけの負荷がかかるかを制御できないため (これがボトルネックになります)、distcp でさえうまくいきません。