Spark單詞統計範例


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

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

在此範例中,查詢並顯示每個單詞的出現次數。在本地計算機中建立一個文字檔案並在其中寫入一些文字。

$ nano sparkdata.txt

檢查sparkdata.txt檔案中寫入的文字。

$ cat sparkdata.txt

在HDFS中建立一個目錄,儲存文字檔案。

$ hdfs dfs -mkdir /spark

將HDD上的sparkdata.txt 檔案上傳到特定目錄中。

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

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

$ spark-shell

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

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

在這裡,傳遞包含資料的任何檔案名。現在,可以使用以下命令讀取生成的結果。

scala> data.collect;

在這裡,使用以下命令以單個單詞的形式拆分現有資料。

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

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

scala> splitdata.collect;

接下來,執行對映操作。

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

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

scala> mapdata.collect;

現在,執行reduce操作 -

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

在這裡,我匯總了生成的資料。使用以下命令讀取生成的結果。

scala> reducedata.collect;