Last Updated on 2021年7月4日 by かんりにん
本日までに試した、EC2→S3へのファイル転送時間をコマンド別にそれぞれ簡単に比較・テストしてみたので、以下にまとめ。
それぞれ5回試してみたうちの、速度がもっとも速かったものを以下に記載。今後の参考&備忘録として。
1.環境
EC2
EC2東京リージョン(ap-northeast-1a)
S3
- S3東京(ap-northeast-1a)
- S3シンガポール(ap-southeast-1)
試したコマンド、ツール
- s3fs
- s3cmd
- s3put
2.試した結果
※赤字が最も速かった結果。
転送コマンド | 転送ファイルサイズ | S3東京 | S3シンガポール |
s3fs | 120MB | 0m8.558s | 1m46.888s |
750MB | 1m22.266s | 11m5.685s | |
5GB | 11m33.270s | 81m11.516s | |
s3cmd | 120MB | 0m13.516s | 1m6.934s |
750MB | 1m9.503s | 7m50.373s | |
5GB | 7m43.655s | 66m55.265s | |
s3put | 120MB | 0m6.009s | 0m34.833s |
750MB | 0m40.263s | 3m5.815s | |
5GB | 5m18.793s | 25m14.619s |
→実行結果ではs3putが一番、スクリプトの書きやすさ、保守のしやすさはs3fsという結果に。
ただしs3putは転送速度で東京の場合はs3fsの半分以下、シンガポールは1/3以下で完了するのでかなり短縮されていた。
3.そのほか、わかったこと
- 同じコマンドでも速度にバラつきが出る、しかも差が大きい(例えば1回目は10秒、2回目は17秒とか)帯域が保証されているわけではないので、仕方ない話。
- ただしコマンド同士でのばらつきは、平均しても差が縮まるほどは無い→これもタイミング次第で逆転する可能性はありそう。
4.他にも試してみたいこと、調べること
- コマンドごとに、どこでボトルネックが起きているか?
- それぞれAZを変えてみたら速度が変化するか?
- 今回試したコマンドやツール以外のものはどうか?
- そのほか、気づいたら随時いろいろと。
アウトバウンドは、同一リージョンならともかく、別リージョンへの転送だと飛ばすたびにコストがチャリンチャリンしちゃうので、きちんと予算を立ててテストしないと厳しいかも。