【问题标题】:SPARK : Increasing the number of DRIVER MEMORY can decrease the performance?SPARK:增加 DRIVER MEMORY 的数量会降低性能吗?
【发布时间】:2016-05-03 22:41:09
【问题描述】:

我正在调整在 Spark 1.5.2 上运行的应用程序。我运行了 2 次完全相同的脚本,但使用了不同的 driver.memory 参数。

  • 第一次:driver.memory = 15g / 执行时间:6,1h
  • 第二次:driver.memory = 2g / 执行时间:5,7h

该脚本的目标只是在同一个表上进行连接并使用更新的表对其进行迭代,然后将其保存到 Hive 表中。

虽然我们提供的内存越多,它就越好。但是根据测试,这个想法是错误的......真的是驱动程序记忆负责吗?或者是随机运行 +/- 的过程...?

【问题讨论】:

  • 在 Java 中增加内存会严重影响基准测试和整体性能。驱动程序上的完整 GC 将暂停所有驱动程序集群按摩,并可能延迟获取结果。涉及更多细节,但不知道这些如何应用于 pySpark

标签: apache-spark pyspark


【解决方案1】:

您的驱动程序是否在独立机器上运行(没有执行程序运行)并不重要。如果您正在使用收集/执行操作,请尝试增加驱动程序内存,否则增加执行程序内存以获得更好的性能。

如果不使用缓存,请尝试增加 spark.shuffle.memoryFraction。

查看 spark 文档了解更多详情:https://spark.apache.org/docs/1.5.2/configuration.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2018-12-12
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-04-26
    • 2023-03-22
    相关资源
    最近更新 更多