Spark Checkpoint

时间:2016-08-28 09:59:18

标签: apache-spark checkpointing

我创建了一个如下的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

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

1 个答案:

答案 0 :(得分:-2)

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

检查点在您更改代码时仍然存在问题,并希望在上次作业运行停止的地方继续运行,因为它会将代码与状态一起存储。

您实际上是在查看RDD的 OrderItem orderItem = em.find(OrderItem.class, 1); em.detach(orderItem); // why need to detach it first??? orderItem.setPrice(1234); em.merge(orderItem); // working persist吗?