我们在aws ec2上有一个60 x i3.4x大的Spark簇。
在该集群上运行的spark作业从s3存储桶中读取数据并写入该存储桶。
铲斗和ec2在同一区域运行。
作为减少spark作业运行时间的一部分,我们发现从s3读取时存在严重的延迟。
作业时:
从s3读取Parquet文件并写入s3,需要22分钟
从s3读取Parquet文件并写入其本地hdfs,所需时间相同(±22分钟)
从s3读取Parquet文件(之前它们被复制到hdfs中)并写入本地hdfs,这项工作花费了7分钟
spark作业具有以下与s3相关的配置:
spark.hadoop.fs.s3a.connection.establish.timeout=5000
spark.hadoop.fs.s3a.connection.maximum=200
在从s3读取数据时,我们尝试将spark.hadoop.fs.s3a.connection.maximum config param从200增加到400或900,但没有减少s3延迟。
你知道s3的读取延迟的原因吗?
我看到这个帖子是为了提高传输速度,这里有什么相关的吗?
暂无答案!
目前还没有任何答案,快来回答吧!