Spark單詞統計示例

在Spark字數統計示例中,將找出指定文件中存在的每個單詞的出現頻率。在這裏,我們使用Scala語言來執行Spark操作。

執行Spark字數計算示例的步驟

在此示例中,查找並顯示每個單詞的出現次數。在本地計算機中創建一個文本文件並在其中寫入一些文本。

$ nano sparkdata.txt

Spark單詞統計示例

檢查sparkdata.txt文件中寫入的文本。

$ cat sparkdata.txt

Spark單詞統計示例

在HDFS中創建一個目錄,保存文本文件。

$ hdfs dfs -mkdir /spark

將HDD上的sparkdata.txt 文件上傳到特定目錄中。

$ hdfs dfs -put /home/yiibai/sparkdata.txt /spark

Spark單詞統計示例

現在,按照以下命令在Scala模式下打開spark。

$ spark-shell

Spark單詞統計示例

使用以下命令創建一個RDD。

scala> val data=sc.textFile("sparkdata.txt")

在這裏,傳遞包含數據的任何文件名。現在,可以使用以下命令讀取生成的結果。

scala> data.collect;

Spark單詞統計示例

在這裏,使用以下命令以單個單詞的形式拆分現有數據。

scala> val splitdata = data.flatMap(line => line.split(" "));

現在,可以使用以下命令讀取生成的結果。

scala> splitdata.collect;

Spark單詞統計示例

接下來,執行映射操作。

scala> val mapdata = splitdata.map(word => (word,1));

在這裏,爲每個單詞分配值1。可以使用以下命令讀取生成的結果。

scala> mapdata.collect;

Spark單詞統計示例

現在,執行reduce操作 -

scala> val reducedata = mapdata.reduceByKey(_+_);

在這裏,我彙總了生成的數據。使用以下命令讀取生成的結果。

scala> reducedata.collect;

Spark單詞統計示例