spark缓存方法

看看能否帮到你

操作方法

  • 01

    spark缓存清理机制: MetadataCleaner对象中有一个定时器,用于清理下列的元数据信息: MAP_OUTPUT_TRACKER:Maptask的输出元信息SPARK_CONTEXT:persistentRdds中的rddHTTP_BROADCAST, http广播的元数据 BLOCK_MANAGER:blockmanager中存储的数据SHUFFLE_BLOCK_MANAGER:shuffle的输出数据BROADCAST_VARS:Torrent方式广播broadcast的元数

  • 02

    contextcleaner清理真实数据:ContextCleaner为RDD、shuffle、broadcast、accumulator、Checkpoint维持了一个弱引用,当相关对象不可达时,就会将对象插入referenceQueue中。有一个单独的线程来处理这个队列中的对象。RDD:最终从各节点的blockmanager的memoryStore、diskStore中删除RDD数据shuffle:删除driver中的mapstatuses关于该shuffleId的信息;删除所有节点中关于该shuffleId的所有分区的数据文件和索引文件broadcast:最终从各节点的blockmanager的memoryStore、diskStore中删除broadcast数据Chec

  • 03

    kpoint:清理checkpointDir目录下关于该rddId的文件举个RDD的例子,说明一下这样做有什么好处?默认情况下,RDD是不缓存的,即计算完之后,下一次用需要重新计算。如果要避免重新计算的开销,就要将RDD缓存起来,这个道理谁都明白。但是,缓存的RDD什么时候去释放呢?这就用到了上面提到的弱引用。当我们调用persist缓存一个RDD时,会调用registerRDDForCleanup(this),这就是将本身的RDD注册到一个弱引用中。当这个RDD变为不可达时,会自动将该RDD对象插入到referenceQueue中,等到下次GC时就会走doCleanupRDD分支。RDD可能保存在内存或者磁盘中,这样就能保证,不可达的RDD在GC到来时可以释放blockmanager中的RDD真实数据。再考虑一下,什么时候RDD不可达了呢?为了让出内存供其他地方使用,除了手动unpersist之外,需要有机制定时清理缓存的RDD数据,这就是MetadataCleaner的SPARK_CONTEXT干的事情。它就是定期的清理persistentRdds中过期的数据,其实与unpersist产生的作用是一样的。一旦清理了,那这个缓存的RDD就没有强引用了。

(0)

相关推荐

  • 千牛怎么清理缓存?两种清理千牛缓存方法介绍

    千牛怎么清理缓存呢?如果缓存太多,千牛客户端会提示清理缓存,但是有很多朋友对于千牛怎么清理缓存还不太清楚,下文小编就为大家带来两种清理千牛缓存方法介绍,有需要的朋友一起去看下吧。 两种清理千牛缓存方 ...

  • UC浏览器电脑版怎么清除缓存?UC浏览器清除缓存方法

    当我们的浏览器用久了,垃圾就多了,快点来让你的浏览器减减肥吧。以UC浏览器为例小编教大家怎么让你的浏览器减肥,甩掉不必要的垃圾。分享一篇UC浏览器清除缓存方法,希望能帮到大家 1、双击打开你的uc浏览 ...

  • 如何清理ie缓存? 清理IE缓存方法

    如何清理IE缓存?怎么清理IE浏览器缓存?经常见到网友提问,小编转载了一下腾讯客服官网的步骤方法教大家一步步清理自己的IE缓存。记住,IE缓存一定要定期清理,这样浏览器就不会老是出现问题了,例如网页打 ...

  • Firefox和IE浏览器清除缓存方法

    IE浏览器清除缓存的方法 工具 =》Internet选项 =》浏览历史记录 =》删除 =》选中Internet临时文件夹 =》确定 请仔细对照上图,删除缓存避免调试程序时不刷新问题。 Firefox清 ...

  • 如何清空DNS缓存方法/命令

    如何清空DNS缓存方法/命令 微软windows下如何清空DNS缓存 In Microsoft Windows, you can use the command ipconfig /flushdns ...

  • win8.1修复图标缓存方法

    win8.1修复图标缓存方法 具体操作方法很简单,便是按组合键win+r打开运行窗口,输入ie4uinit -show并按回车执行,如图所示: 执行之后,便会自动重建并修复图标缓存.

  • 逗拍在哪里清除缓存垃圾?逗拍清除缓存方法

    当你的手机内存快慢了的时候,就应该适当清理下缓存垃圾了,那么你们知道逗拍的缓存垃圾应该怎么清除么,下面就让我们小编来教你们逗拍清除缓存方法吧! 1)首先我们先打开[逗拍],然后来到[我的]界面地啊你[ ...

  • Mac怎么QQ清理缓存 苹果Mac清理QQ缓存方法

    平时在 Mac 上使用 QQ 久以后,难免会接收到很多图片,文件,文字等内容,时间久了以后就会越来越多.如果这些东西太多的话,不仅会占用磁盘空间,还会让影响 QQ 的运行速度.这里简单介绍下怎么在 M ...

  • 新版微信怎么清除缓存 新版微信清理缓存方法流程

    新版微信怎么清理缓存方法流程: 微信每隔一段时间就会更新,或优化体验或推出小功能,最近的一次更新很多用户发现清理缓存这个功能不见了,其实微信团队并没有把它去除,只是隐藏得更深了,就让小编带着你重新找回 ...