0

我创建了一个如下的RDD:

scala> val x = List(1,2,3,4)
x: List[Int] = List(1, 2, 3, 4)

scala> val y = sc.parallelize(ls,2)
y: org.apache.spark.rdd.RDD[Int] = ParallelCollectionRDD[10] at parallelize at <console>:29

scala> val z = y.map( c => c*2)
z: org.apache.spark.rdd.RDD[Int] = MapPartitionsRDD[11] at map at <console>:31

scala> sc.setCheckpointDir("/tmp/chk")

scala> z.checkpoint

scala> z.count
res32: Long = 4

我的问题是如何从检查点目录中读取数据

4

1 回答 1

-2

正如@Yuval Itzchakov 指出的那样,我们真的不需要玩检查站。Spark 使用检查点来实现容错。它广泛用于检查点状态的流式作业,当执行器失败时,可以生成一个新的,并且可以从检查点加载数据。

当您更改代码并希望从上次作业运行中断的地方继续时,检查点也会出现问题,因为它会将代码与状态一起存储。

您实际上是在看RDDpersist还是cacheRDD ?

于 2016-08-28T15:02:42.680 回答