【问题标题】:Is MEMORY_AND_DISK always better that DISK_ONLY when persisting an RDD to disk?将 RDD 持久化到磁盘时,MEMORY_AND_DISK 总是比 DISK_ONLY 更好吗?
【发布时间】:2016-01-27 20:15:04
【问题描述】:

使用 Apache Spark 为什么我会选择使用存储级别 DISK_ONLY 而不是 MEMORY_AND_DISK 或 MEMORY_AND_DISK_SER 来持久化 RDD?

是否存在使用 DISK_ONLY 比 MEMORY_AND_DISK 或 MEMORY_AND_DISK_SER 提供更好性能的用例。

【问题讨论】:

    标签: apache-spark


    【解决方案1】:

    简单的例子 - 你可能有一个相对较大的 RDD rdd1 和一个较小的 RDD rdd2。你想存储它们。

    如果您在两者上都应用persist MEMORY_AND_DISK,那么它们都会溢出到磁盘,导致读取速度变慢。

    但是您可以采用不同的方法 - 您可以将 rdd1 存储在 DISK_ONLY 中。可能正是由于这一举措,您可以使用 cache() 选项将 rdd2 直接存储在内存中,并且您将能够更快地读取它。

    【讨论】:

    • 在集群上运行它也可以省钱 - 更大的内存集群运行成本更高。
    • 是的,但我想在这种情况下(内存较低的集群)MEMORY_AND_DISK 也可以正常工作。
    猜你喜欢
    • 2017-11-02
    • 2020-10-08
    • 1970-01-01
    • 1970-01-01
    • 2018-01-21
    • 1970-01-01
    • 2015-07-08
    • 1970-01-01
    • 2011-04-02
    相关资源
    最近更新 更多