Bash脚本可将单个文件从一个S3存储桶复制100次到另一个并行

时间:2019-07-05 07:33:06

标签: bash amazon-web-services amazon-s3 amazon-ec2 performance-testing

我想创建一个Shell脚本,该脚本应该能够将一个2GB大小的文件从一个AWS S3存储桶并行复制到另一个AWS S3存储桶100次。

#!/bin/bash 
FILES="xxx.csv" 
TABLES="table1 table2 table3 table4 table5" 
SOURCE="s3://SourceBucket" 
TARGET_PREFIX="s3://TargetBucket/" 
echo "Uploading from $SOURCE" 
for 
table in $TABLES 
do 
echo "Table: $table" 
for file in $FILES 
do TARGET="$TARGET_PREFIX/$table/$TARGET_PART" 
echo "Uploading $file to INGEST Bucket" 
aws s3 cp $SOURCE/$file $TARGET --sse "AES256" 
done 
done

1 个答案:

答案 0 :(得分:1)

您的目标似乎是衡量给定Amazon EC2实例的网络性能。您可以利用其他人创建的工具来代替自己编写它。

如果您希望测量同一VPC中两个Amazon EC2实例之间的带宽 ,则可以使用iperf

有关详细信息,请参见:Benchmark Network Throughput Between Amazon EC2 Linux Instances in the Same VPC

如果您想衡量 Amazon EC2与Amazon S3之间的性能,则可以使用dvassallo/s3-benchmark: Measure Amazon S3's performance from any location

有关此工具的Reddit讨论,请参见:S3 Bandwidth from Every EC2 Instance Type : programming