gpt4 book ai didi

apache-spark - 如果失去 spark 上下文,我们是否能够保留所有持久化的 RDD

转载 作者:行者123 更新时间:2023-12-02 16:57:59 24 4
gpt4 key购买 nike

让我详细说明我的问题:

我正在使用一个集群,其中包含一个主节点和 3 个工作节点,我的主节点

节点有可用的 spark 上下文

我已经使用存储级别“DISK_ONLY”将我的 RDD 保存到磁盘中。

当我运行我的 spark 脚本时,它会将一些 RDD 保存到任何工作人员的硬盘上

节点,现在当我的主机出现故障时,它有 spark 上下文并作为

result它也会down掉,从而所有DAG信息都丢失了。

现在我必须重新启动我的主节点,以便启动 spark 上下文

再次运行。

现在的问题是——我能不能用这个保留所有保存的 RDD

弹跳(重启主节点和 spark 上下文守护进程)?因为一切都是

重新启动。

最佳答案

我认为目前没有办法在关闭 Spark Context 后恢复缓存的 RDD。放置和获取RDD block 的组件是Spark的BlockManager组件。这反过来又使用另一个名为 BlockInfoManager 的组件来跟踪 RDD block 信息。当 BlockManager 在工作节点中关闭时,它会清除它正在使用的资源。其中包括 BlockInfoManager,它具有包含 RDD block 信息的 HashMap。由于这个Map在清理的过程中也被清空了,所以下次实例化的时候,那个worker里面就没有保存任何RDD block 的信息了。因此它将将该 block 视为未计算的。

关于apache-spark - 如果失去 spark 上下文,我们是否能够保留所有持久化的 RDD,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55545896/

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