2016-08-28 2 views
1

J'ai créé un RDD comme suit:Spark Checkpoint

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 

Ma question est de savoir comment lire les données à partir du répertoire checkpoint

+1

Pourquoi voulez-vous faire cela? –

+0

J'ai lu à plusieurs endroits que les données pointées peuvent être lues lorsque l'application est terminée. Donc juste créé au-dessus du code et check-point le "z". Il a créé un répertoire "chk" et un deuxième répertoire avec un grand nom après le z.count. Après ce gros répertoire, il créa un répertoire rdd-2 à l'intérieur duquel il y avait un fichier part-00000. Donc après cela, j'ai fermé la console scala et le rouvrir. Mais je n'étais pas capable de lire le RDD dans les données de la partie-0000. Donc, je veux savoir comment lire RDD à partir du fichier partie-00000. Je suis juste à la recherche – sraj

Répondre

-1

Comme le souligne @Yuval Itzchakov sur, nous ne vraiment besoin de jouer avec des points de contrôle . Les points de contrôle sont utilisés par Spark pour obtenir une tolérance aux pannes. Il est largement utilisé dans les tâches de streaming pour l'état de point de contrôle et quand un exécuteur échoue, un nouveau peut être engendré et les données peuvent être chargées à partir des points de contrôle.

Les points de contrôle rencontrent également un problème lorsque vous modifiez votre code et que vous souhaitez continuer là où votre dernier travail a été interrompu, car il stocke le code avec l'état.

Cherchez-vous réellement persist ou cache d'un RDD, à la place?

+0

J'ai lu à de nombreux endroits que les données check-point peuvent être lus lorsque l'application est terminée. Donc juste créé au-dessus du code et check-point le "z". Il a créé un répertoire "chk" et un second répertoire avec un grand nom après le z.count. Après ce gros répertoire, il créa un répertoire rdd-2 à l'intérieur duquel il y avait un fichier part-00000. Donc après cela, j'ai fermé la console scala et le rouvrir. Mais je n'étais pas capable de lire le RDD dans les données de la partie-0000. Donc, je veux savoir comment lire RDD à partir du fichier partie-00000. Je fais juste des recherches. Comme partout où il est mentionné que nous pouvons lireRDDaprès l'achèvement de l'application. – sraj

+0

Salut Ramkumar est donc possible de lire les données de Chekpoint emplacement – sraj