gpt4 book ai didi

scala - 当存储级别设置为磁盘时,Spark将数据存储在哪里?

转载 作者:可可西里 更新时间:2023-11-01 14:19:34 25 4
gpt4 key购买 nike

我想知道当存储级别设置为 DISK_ONLY 或 MEMORY_AND_DISK 时 Spark 在哪个目录中存储数据(在这种情况下数据不适合内存)。因为我看到我设置的级别没有区别。如果程序在 MEMORY_ONLY 级别崩溃,它也会在所有其他级别崩溃。

在我使用的集群中,/tmp 目录是一个 RAM 磁盘,因此大小有限。 Spark 是否试图将磁盘级数据存储到该驱动器?也许,这就是为什么我没有看到差异。如果确实如此,我该如何更改此默认行为?如果我使用的是 Hadoop 自带的 yarn 集群,我是否需要更改 hadoop 配置文件中的/tmp 文件夹,或者只用 Spark 更改 spark.local.dir 就可以?

最佳答案

是的,Spark 将磁盘级数据存储到该驱动器。

在 yarn-cluster 模式下,Spark 执行器和 Spark 驱动程序使用的本地目录将是为 YARN 配置的本地目录(Hadoop YARN config yarn.nodemanager.local-dirs)。如果用户指定了 spark.local.dir,它将被忽略。

引用:https://spark.apache.org/docs/latest/running-on-yarn.html#important-notes

所以你要在你的 yarn 配置中更改 spark 本地目录更改 yarn.nodemanager.local-dirs

关于scala - 当存储级别设置为磁盘时,Spark将数据存储在哪里?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32630261/

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