s3存储桶的默认块大小是多少?

时间:2016-05-31 10:19:25

标签: amazon-web-services amazon-s3 amazon-ec2 parquet

我正在s3中写一个镶木地板文件。我必须知道s3块大小,所以我可以相应地按行组大小设置。作为1行组大小=默认s3块大小。 (默认情况下,行组合中的行组大小为128MB,但如果尝试从行组元获取行偏移,那么我得到的每个行组消耗大约116MB。为什么会这样?

例如:148.7 MB文件制作2个行组

row group 1:     RC:2870100 TS:429678457 OFFSET:4 
row group 2:     RC:759588 TS:108434365 OFFSET:123729384 

每个行组消耗大约116MB的数据。

1 个答案:

答案 0 :(得分:0)

如上所述,文件大小不受S3的固有限制。

尽管您没有提到如何编写S3,但是这里的写法可能是可疑的。

一个简单的示例是,如果您使用Spark编写并并行执行。

尽管我还没有测试spark是否可以自动并行化写入,但是简单的第一步就是将并行度设置为1,无论您使用哪个应用程序进行写入。


两件事可以帮助验证这是正确的解决方案:

  1. 使用其他无法并行处理甚至手动进行的工具将文件上传到S3
  2. 使用应用程序将其写入非S3的其他位置。