gpt4 book ai didi

scala - Spark : shuffle operation leading to long GC pause

转载 作者:行者123 更新时间:2023-12-05 00:55:04 25 4
gpt4 key购买 nike

我在运行 Spark 2并且我正在尝试洗牌大约 5 TB 的 json。我在 Dataset 的改组过程中遇到了很长的垃圾收集暂停:

val operations = spark.read.json(inPath).as[MyClass]
operations.repartition(partitions, operations("id")).write.parquet("s3a://foo")

是否有任何明显的配置调整来处理这个问题?我的配置如下:
spark.driver.maxResultSize 6G
spark.driver.memory 10G
spark.executor.extraJavaOptions -XX:+UseG1GC -XX:MaxPermSize=1G -XX:+HeapDumpOnOutOfMemoryError
spark.executor.memory 32G
spark.hadoop.fs.s3a.buffer.dir /raid0/spark
spark.hadoop.fs.s3n.buffer.dir /raid0/spark
spark.hadoop.fs.s3n.multipart.uploads.enabled true
spark.hadoop.parquet.block.size 2147483648
spark.hadoop.parquet.enable.summary-metadata false
spark.local.dir /raid0/spark
spark.memory.fraction 0.8
spark.mesos.coarse true
spark.mesos.constraints priority:1
spark.mesos.executor.memoryOverhead 16000
spark.network.timeout 600
spark.rpc.message.maxSize 1000
spark.speculation false
spark.sql.parquet.mergeSchema false
spark.sql.planner.externalSort true
spark.submit.deployMode client
spark.task.cpus 1

最佳答案

添加以下标志消除了 GC 暂停。

spark.executor.extraJavaOptions -XX:+UseG1GC -XX:InitiatingHeapOccupancyPercent=35 -XX:ConcGCThreads=12

我认为它确实需要相当多的调整。 This databricks 帖子非常非常有帮助。

关于scala - Spark : shuffle operation leading to long GC pause,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38981772/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com