10 | Spark Trouver le numéro de ligne maximum de chaque mot

Supposons que vous disposiez d'un RDD contenant des numéros de ligne de texte et du contenu du texte, et que vous souhaitiez maintenant savoir dans quelles lignes chaque mot apparaît et calculer le numéro de ligne maximum où ils apparaissent.

L'exigence est de savoir dans quelles lignes chaque mot apparaît à partir d'un RDD contenant les numéros de ligne de texte et le contenu du texte, et de calculer le numéro de ligne maximum où ils apparaissent.

Les exigences spécifiques sont les suivantes :

  1. Saisie de données : le code lit les données d'un RDD contenant les numéros de ligne de texte et le contenu du texte. L'exemple de données comprend quatre lignes de texte.

  2. Traitement des données : le code divise d'abord chaque ligne de contenu textuel en mots et mappe chaque mot et son numéro de ligne en paires clé-valeur (mot, numéro de ligne).

  3. Agrégation de données : utilisez reduceByKeydes opérations pour agréger les numéros de ligne du même mot et trouver le numéro de ligne maximum où chaque mot apparaît.

  4. Résultat de sortie : Enfin, le code imprime chaque mot et le numéro de ligne maximum sur lequel il apparaît.

Analysez les données textuelles pour trouver la position de chaque mot dans le texte, puis recherchez le numéro de ligne maximum où chaque mot apparaît.

package com.bigdata;

import org.apache.spark.SparkConf;
import org.apache.spark.api.java.JavaPairRDD;
import org.apache.spark.api.java.JavaRDD;
import org.apache.spark.api.java.JavaSparkContext;
import scala.Tuple2;

import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;

public class WordMaxLineExample {
    public static void main(String[]

おすすめ

転載: blog.csdn.net/weixin_44510615/article/details/132635833