2

ユーザーのローカルマシンからS3バケットへの写真のアップロードサービスを提供できる必要があるJava MapReduceアプリに取り組んでいます。

問題は、アプリを EC2 クラスターで実行する必要があるため、ファイルをコピーするときにローカル マシンを参照する方法がわかりません。メソッド copyFromLocalFile(..) には、EC2 クラスターとなるローカル マシンからのパスが必要です...

問題を正しく説明したかどうかわかりませんが、誰かが私の言いたいことを理解できますか?

ありがとう

4

2 に答える 2

1

s3distcp を調査することもできます: http://docs.amazonwebservices.com/ElasticMapReduce/latest/DeveloperGuide/UsingEMR_s3distcp.html

Apache DistCp は、大量のデータをコピーするために使用できるオープン ソース ツールです。DistCp は MapReduce を使用して分散方式でコピーし、複数のサーバー間でコピー、エラー処理、回復、およびレポート タスクを共有します。S3DistCp は、Amazon Web サービス、特に Amazon Simple Storage Service (Amazon S3) と連携するように最適化された DistCp の拡張機能です。S3DistCp を使用すると、大量のデータを Amazon S3 から HDFS に効率的にコピーして、Amazon Elastic MapReduce (Amazon EMR) ジョブフローで処理できます。S3DistCp を使用して、Amazon S3 バケット間または HDFS から Amazon S3 にデータをコピーすることもできます。

于 2012-03-15T13:55:55.420 に答える
0

MapReduce でファイルを使用できるようにするには、userMachine から少なくとも 1 つのノードにファイルを取得する必要があります。

FileSystemおよび関数は、クラスタ内のいずれかのノードの またはローカル ディスクFileUtil上のパスを参照します。HDFSユーザーのローカル システムを参照することはできません。(たぶん、ssh のセットアップを行った場合... 多分?)

于 2011-02-02T18:43:17.253 に答える