我在试着理解火花的记忆功能。在这个过程中,我遇到了塔奇扬,它基本上位于内存数据层,它通过使用沿袭系统提供不进行复制的容错,并通过对数据集进行检查点来减少重新计算。现在让人困惑的是,所有这些特性也可以通过星火的标准RDD系统来实现。因此,我想知道RDDs是否在窗帘后面实现了Tachyon来实现这些功能?如果不是这样的话,那它的所有工作都可以由标准的RDDs来完成。还是我在把这两者联系在一起时犯了什么错误?一个详细的解释或链接到一个人将是一个很大的帮助。谢谢。
发布于 2015-04-22 22:59:40
您所链接的文件中的内容没有反映作为一个发布开源项目的Tachyon的现实情况,该论文的部分内容仅作为研究原型存在,从未完全集成到Spark/Tachyon中。
当您通过OFF_HEAP将数据持久化到rdd.persist(StorageLevel.OFF_HEAP)存储级别时,它使用rdd.persist(StorageLevel.OFF_HEAP)将该数据作为一个文件写入到Tachyon的内存空间。这将它从Java堆中移除,从而为Spark提供了更多的可用堆内存。
它目前不编写沿袭信息,因此如果您的数据太大,无法适应您配置的Tachyon集群,那么RDD的内存部分将丢失,您的Spark作业可能会失败。
https://stackoverflow.com/questions/29799762
复制相似问题