0

我正在尝试使用 Tachyon 实现 RDD/Dataframe 共享。据我了解,使用 HDFS underFS,写入是异步的(在后台发生对 HDFS 的复制),因此应该更快,但在我的测试中,我发现使用 HDFS underFS 的 Tachyon 的写入速度要慢 2-6 倍。

这篇 Tachyon 论文中,我看到:

“我们在 Spark 和 MapReduce 集成中使 [基于血统的容错] 可配置”

如何让 Spark 在 Tachyon 中使用基于沿袭的容错?

注意:我使用 Spark Dataframe 方法df.write.parquet和 RDD 方法rdd.saveAsObjectFile将我的 Dataframes/RDD 保存到 Tachyon。

4

1 回答 1

0

您应该设置tachyon.user.lineage.enabled为 true 并根据您的喜好调整其他沿袭设置。一些最有趣的设置(来自主配置文档):

  • tachyon.master.lineage.checkpoint.interval.ms- Tachyon 的检查点调度之间的间隔(以毫秒为单位)。
  • tachyon.master.lineage.checkpoint.class- 沿袭输出文件的检查点策略的类名。默认策略是检查点最新完成的沿袭,即输出文件已完成的沿袭。
  • tachyon.master.lineage.recompute.interval.ms- Tachyon 重新计算执行之间的时间间隔(以毫秒为单位)。executor 扫描所有被 lineage 跟踪的丢失文件,并重新执行相应的作业。每 10 分钟一次。

有关更多详细信息,请参阅Lineage API 文档

于 2015-12-11T14:17:54.277 回答