ase*_*eba 21 amazon-s3 amazon-ec2 amazon-web-services
我必须将 400G 的文件从弹性块存储卷复制到 s3 存储桶...这些大约 300k 个文件约为 1Mb
我试过s3cmd和s3fuse,两个都是真的,真的很慢..对一个完整的一天s3cmd然表示,完成复制,而当我检查了水桶,若无其事(我想,出事了,但至少s3cmd 从未抱怨过任何事情)
S3Fuse 又工作了一整天,复制了不到 10% 的文件......
有没有更好的解决方案?
我当然在运行 Linux (ubuntu 12.04)
cyb*_*x86 20
有几个关键因素决定了从 EC2 到 S3 的吞吐量:
在传输大量数据的情况下,使用集群计算实例可能更经济实用,因为吞吐量的有效增益 (>10x) 大于成本差异 (2-3x)。
虽然上述想法相当合乎逻辑(尽管每个线程的上限可能不是),但很容易找到支持它们的基准。一个特别详细的可以在这里找到。
使用 1MB 对象的 64 到 128 个并行(同时)上传应该使 m1.xlarge 拥有的 1Gbps 上行链路饱和,甚至应该使集群计算 (cc1.4xlarge) 实例的 10Gbps 上行链路饱和。
虽然更改实例大小相当容易,但其他两个因素可能更难管理。
因此,经过大量测试后s3-parallel-put 非常成功。如果您需要将大量文件上传到 S3,显然是解决方案。感谢cyberx86的评论。
| 归档时间: |
|
| 查看次数: |
29013 次 |
| 最近记录: |