Création PairedRDD de fichiers texte dans Spark

voix
0

Je doute avec Apache Spark utilisant le codage Java. J'ai un exemple de fichier en texte brut composé par paires séparées par Tab omble chevalier. Quelque chose comme ça:

** example.txt
1   5
2   7
5   4
**

et je lisais des livres sur Internet et ils suggèrent que ce code pour créer un pairedRDD en utilisant la première ligne de la ligne comme la clé, et la deuxième colonne comme valeur. Ils utilisent donc la Tuple2 (de scala).

Mais je ne comprends pas pourquoi tous les exemples que je vois, créer tuple, initialiser l'objet avec la valeur que l' ensemble ligne. Parce que la clé est que le [0] du x.split () [0] fonction. et la valeur semble être la ligne.

Est-ce correct? ou devrais - je remplacer par x.split () [1] (pour la valeur)?

Le code ci-dessous est ce que je trouve dans de nombreuses sources par exemple sur le web.

PairFunction<String, String, String> keyData =   new PairFunction<String, String, String>() {

    public Tuple2<String, String> call(String x) {

    return new Tuple2(x.split(” “)[0], x);

}
Créé 02/09/2018 à 05:18
source utilisateur
Dans d'autres langues...                            


1 réponses

voix
0

Il est seulement un exemple. Vous pouvez revenir x [1] ou x. Je ne connais pas le contexte exact, mais je l'ai vu ce style d'exemple ici dans le passé aussi loin que je me souvienne.

Donc, votre choix, pas de bonne ou mauvaise. Pour moi, je suppose que les x [1], mais également les x [0] peut être considérée comme la clé d'une ligne.

La leçon est ici: vous pouvez faire les deux. A partir de là , vous pouvez réduire (ByKey) ou groupByKey , par exemple. C'est ce que aa PairedRDD peut faire.

Créé 02/09/2018 à 21:08
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more