PRODからUAT(ハープクラスタ)にデータ/ファイルをコピーする必要がある状況があります。そのために私は現在'distcp'
を使用しています。しかしそれは永遠に取っています。 distcpはmap-reduceをボンネットの下で使用しているので、sparkを使ってプロセスを速くする方法はありますか?ハイブ実行エンジンをの代わりに'TEZ'
に設定できるように、実行エンジンをdistcp
のために起動するように設定できますか?あるいは、クラスタ上でデータをコピーする他の方法があるかもしれません。これはdistcpについても気にしないかもしれません。ハーフープクラスタ間でデータをコピーするためにスパークを使用する
ここでもう1つ質問があります(distcp
実行エンジンがmap-reduceではなくsparkに設定されていると仮定します)。 - 私の知る限り、Sparkはmap-主にデータをメモリに格納するため、ディスクからすべてのデータをロードする必要がないように、いくつかの場合に処理する必要があります。ここでは、クラスタ間でデータをコピーしているため、各ファイルがメモリに格納されてからネットワーク経由で送信され、コピー先のクラスタディスクにコピーされるため、1つのファイル(ブロックまたは分割)を複数回処理する必要はありません、そのファイルのストーリーの終わり。次に、Sparkがメイン機能を使用しない場合、どのように処理を高速化しますか?
これは試していませんでしたが、実際にはHiveを使用してデータを読み書きしたり、TezまたはSparkでHiveを実行したりできます。 Sparkの利点は、メモリを使用するだけでなく、実行ステージのスケジューリングが容易であるため、MRよりシーケンシャル性が低いからです –