我们遇到的问题是由Java代码生成的文件,这些文件是本地编写的,然后由数据管道复制到S3。错误提到了文件大小。
我原本以为如果需要分段上传,那么管道会想出来。我想知道是否有一种配置管道的方法,以便它确实使用多部分上传。因为否则当前与S3无关的Java代码必须直接写入S3或者必须执行以前的操作然后使用多部分上传 - 事实上,我认为代码只会直接写入S3而不用担心上传。
任何人都可以告诉我Pipelines是否可以使用多部分上传,如果没有,您能否建议正确的方法是让程序直接写入S3还是继续写入本地存储,然后可能会调用一个单独的程序在同一个管道中进行多部分上传?
答案 0 :(得分:1)
基于AWS支持的答案是,确实有5个gig文件无法直接上传到S3。目前数据管道无法说“您正在尝试上传大文件,因此我会做一些特别的事情来处理这个问题。”它完全失败了。
将来可能会改变。
答案 1 :(得分:0)
数据管道CopyActivity不支持大于4GB的文件。 http://docs.aws.amazon.com/datapipeline/latest/DeveloperGuide/dp-object-copyactivity.html
这低于S3对每个文件部分放置的5GB限制。
您需要编写自己的脚本,包括AWS CLI或S3cmd(旧版)。该脚本可以作为shell活动执行。
直接写入S3可能是一个问题,因为S3不支持追加操作 - 除非您能以某种方式在文件夹中写入多个较小的对象。