无法达到从S3到m4.x16large实例的预期下载吞吐量

时间:2018-04-10 14:15:14

标签: apache-spark amazon-s3 amazon-ec2 amazon-emr

我正在使用Spark框架使用m4.x16large实例处理数据。我必须从S3中下载许多TB数据,这些数据分布在许多大小为128MB的文件中。根据EC2实例的规格,我应该有高达20Gbps的带宽吞吐量,这将转化为大约2GB / s。但是,当处理来自S3的数据时,我平均只能实现~650MB / s的吞吐量。

实例和S3存储桶都在同一个区域,并且机器的CPU负载没有达到100%所以我假设瓶颈不是处理速度。我正在对数据进行轻量级聚合并将其存储在磁盘中,但我不知道这会如何限制网络吞吐量。

我做错了吗?从S3下载数据时是否可以获得更好的性能?如何才能更好地达到网络带宽的20Gbps理论极限?

编辑:我正在使用最低限度来运行此实例。我创建了一个带有子网的公共VPC,该子网具有到S3的服务端点。

从VPC创建向导中我有:

  

公有子网实例使用弹性IP或公共IP来访问Internet。

0 个答案:

没有答案