Foro Formación Hadoop

Cache y CheckPoint - Spark

 
Picture of Jesús Marcial Méndez Gálvez
Cache y CheckPoint - Spark
by Jesús Marcial Méndez Gálvez - Monday, 18 July 2016, 9:59 PM
 

Buenas, Estoy practicando con spark, sin embargo algunos conceptos no me quedan claros :(

tengo algunas dudas sobre el uso del CheckPoint en una aplicación de spark.  Cual es la diferencia entre usar Persist(caché)  y Checkpoint. 

algun ejemplo basico sobre el uso de checkpoint,  Agradesco su atención :)

Picture of Fabiola Carrasco
Re: Cache y CheckPoint - Spark
by Fabiola Carrasco - Tuesday, 19 July 2016, 8:26 AM
 

Hola Jesús,

El checkpoint se debe utilizar cuando tienes algoritmos con muchas iteraciones o en Spark Streaming. El checkpoint nos ayuda a liberar el "linage" de los RDD que estas creando, es decir, cada vez que creamos un RDD Spark va almacenando de donde viene ese RDD por si en caso de caída tiene que volver a regenerar los datos (ya sean enteros o de alguna partición en concreto). Si utilizamos la cache, Spark debe guardar este "linage" por lo que estamos ocupando recursos en el sistema. Con el checkpoint, al tener que realizar ese checkpoint en HDFS, no debe guardar este linage, por lo que se liberan muchos recursos.

Por esta razón el checkpoint se debería utilizar cuando se estén realizando muchas iteraciones de RDD (por ejemplo el ejercicio del K-means que indicamos en el módulo de Spark, ya que se deben realizar n iteraciones para poder resolver el algoritmo).

Un saludo.

Picture of Jesús Marcial Méndez Gálvez
Re: Cache y CheckPoint - Spark
by Jesús Marcial Méndez Gálvez - Tuesday, 19 July 2016, 7:17 PM
 

Hola Fabiola, Gracias por la respuesta.. 

Entiendo que es conveniente dar uso de CheckPoints en procesos repetitivos para los RDD.  Ya que al usar CheckPoint hacemos que se guarde un punto de "iteracion" en el HDFS.  

de todas maneras dare una vuelta por el ejercicio que mencionas, cualquier cosa te comento.  Un saludo.