sparksql實現單詞計數

2021-09-11 07:13:21 字數 1217 閱讀 2034

1、建立sparksession

val sparksession = sparksession.builder()

.master("local[2]")

.getorcreate()

2、載入資料,使用dataset處理資料集

read來讀取可以直接返回dataset[string],這是個比rdd更高階的資料集

它返回乙個列名為value的檢視

+------------+

| value|

+------------+

|hello tunter|

| hello tony|

| tony hunter|

+------------+

val datas:dataset[string] = 

sparksession.read.textfile("hdfs:")

3、切分資料

//匯入隱式

import sparksession.implicits._

val word:dataset[string]=datas.flatmap(_.split(" "))

4、註冊檢視

word.createtempview("wc_t")
5、執行sql

val df:dataframe = sparksession.sql("select value, count(*) sum from wc_t 

group by value order by sum desc")

df.show()

sparksession.stop()

執行結果:

+------+---+

| value|sum|

+------+---+

| hello| 2|

| tony| 2|

|hunter| 1|

|tunter| 1|

+------+---+

完整**:

import org.apache.spark.sql.

object sparksqlwordcount

}

Linux 命令實現單詞計數功能

hadoop 的 mapreduce 有個入門的程式叫wordcount,相當於其它程式語言的helloworld,是用來統計輸入文字中用指定分隔符切割後得到的每個單詞的出現次數。現在來說明在linux中如何實現這一功能 1.獲取檔案每一行的每個單詞 這裡用awk命令來實現 awk f 指定分隔符,...

Spark Streaming 單詞計數

從資料來源接收資料,然後把資料儲存在記憶體中供spark streaming使用,在本地執行spark streaming不能設定master為local或者local 1 此時執行的執行緒只有乙個,因為需要乙個執行緒去執行receiver接收資料,因此,就沒有執行緒去處理資料了 def main ...

結對專案 單詞計數

專案1 wordcount 單詞計數 1.1 專案要求 wc.exe是乙個常見的工具,它能統計文字檔案的字元數 單詞數和行數。這個專案要求寫乙個命令列程式,模仿已有wc exe的功能,並加以擴充,給出某程式語言原始檔的字元數 單詞數和行數。實現乙個統計程式,它能正確統計程式檔案中的字元數 單詞數 行...