2016-09-23 16 views
0

特定の条件に一致するファイルを再帰的に検索します。次に、ファイル名/パスをフラットファイルに出力します。私はそのファイルで参照されているファイルを並列モードでS3にコピーして、処理時間を短縮したいと考えています。例:AWS S3参照ファイルの並列コピー

myfiles.txt: 
/data/srv/prod1/file1.tar.gz 
/data/srv/prod4/file12.tar.gz 
/data/srv/prod2/file255.tar.gz 

私は、ファイルスルーループとは、S3のコピー1つずつを行うことができますが、ファイルは非常に大きく、それは本当に長い時間がかかります。

参照ファイルをS3と並行してコピーするにはどうすればよいですか?

答えて

0

ファイル名をループすると、各転送が独自のプロセス(またはスレッド)で開始できます。実行中のプロセスまたはスレッドの数を制御することにより、複数のファイルを一度に転送できます。しかし、あまりにも多くのファイルを一度に転送すると、実際に転送速度に悪影響を及ぼす可能性があります。

0

GNUパラレル用途:

cat myfiles.txt |parallel -j0 s3cmd cp {} s3://bucket/folder/{/} 

あなたが最大のスループットを見つけるまで-j0を調整します。

関連する問題