我想用我的C#逻辑生成一个特殊格式的大文件(几TB),并将其保存到S3。做这个的最好方式是什么。我可以在EC2中启动节点,然后将大文件写入EBS,然后使用S3 .net Clinent库将文件从EBS上传到S3。使用.NET在s3内部生成一个大文件
我可以流式传输文件内容,因为我在代码中生成了文件内容,并直接将文件内容传输到S3,直到专门处理这种大文件和内存不足问题为止。我可以看到这个代码帮助流,但它听起来像流应该已经填满了。我显然不能将这样的数据存储到内存中,也不希望先将它作为文件保存到磁盘中。
PutObjectRequest request = new PutObjectRequest();
request.WithBucketName(BUCKET_NAME);
request.WithKey(S3_KEY);
request.WithInputStream(ms);
s3Client.PutObject(request);
什么是我最好的选择,生成这个大文件ans流到S3,因为我生成它?
我想这可能会帮助你http://stackoverflow.com/questions/8653146/can-i-stream-a-file-upload-to-s3-without-a-content-length-头 – Alex 2012-07-09 10:14:20