我有一个27GB的文件,我试图从AWS Linux EC2转移到S3。我已经尝试了'S3put'命令和'S3cmd put'命令。两者都使用测试文件。既不适用于大文件。没有给出错误,命令立即返回但没有任何反应。
s3cmd put bigfile.tsv s3://bucket/bigfile.tsv
答案 0 :(得分:5)
虽然您可以将对象上传到尺寸最大为5TB的S3,但对于单个PUT操作,S3的大小限制为5GB。
为了加载大于5GB的文件(甚至大于100MB的文件),您将要使用S3的分段上传功能。
http://docs.amazonwebservices.com/AmazonS3/latest/dev/UploadingObjects.html
http://aws.typepad.com/aws/2010/11/amazon-s3-multipart-upload.html
(忽略上述博文中5GB对象限制的过时描述。当前限制为5TB。)
Python的boto库支持分段上传,最新的boto软件包括一个“s3multiput”命令行工具,可以为您处理复杂性,甚至可以并行化部件上传。
答案 1 :(得分:0)
该文件不存在,doh。我通过添加-v标签:
以详细模式运行s3命令后意识到这一点s3cmd put -v bigfile.tsv s3://bucket/bigfile.tsv
答案 2 :(得分:0)
s3cmd版本1.1.0支持多部分上传作为“put”命令的一部分,但它仍然处于测试阶段(目前)。