Je suis très novice en matière de Spark. Je travaille en 1.6.1. Imaginons que j'ai un gros fichier, je le lis dans RDD[String] via textFile. Ensuite, je veux valider chaque ligne dans une fonction. Parce que le fichier est énorme, je veux arrêter le traitement lorsque j'ai atteint un certain nombre d'erreurs, disons 1000 lignes. Quelque chose comme
val rdd = sparkContext.textFile(fileName) rdd.map(line => myValidator.validate(line))
voici la fonction de validation :
def validate(line:String) : (String, String) = { // 1st in Tuple for resulted line, 2nd ,say, for validation error. }
Comment calculer les erreurs dans 'validate' ? Il est en fait exécuté en parallèle sur plusieurs nœuds ? Des diffusions ? Accumulateurs ?