Spark API編程動手實戰-06-對搜狗日誌文件深入實戰操作

本節中所用到的內容是來自搜狗實驗室,網址爲:http://www.sogou.com/labs/dl/q.html

我們使用的是迷你版本的tar.gz格式的文件,其大小爲87K,下載後如下所示:


上傳到服務器後,解壓並查看:


 


 

查看Sogou文件內容:


該文件的格式如下所示:

訪問時間 \t 用戶ID \t 查詢詞 \t 該URL在返回結果中的排名 \ t用戶點擊的順序號 \t 用戶點擊的URL

 

把解壓後的文件上傳到hdfs的data目錄下:


 

查看web控制檯:


大功告成,文件上傳hdfs成功

 

接下來 我們使用Spark獲得搜索結果排名第一同時點擊結果排名也是第一的數據量,也就是第四列值爲1同時第五列的值也爲1的總共的記錄的個數。

先讀取SogouQ.mini文件:



count操作後:


count之後有2000條記錄

首先過濾出有效的數據:


可以發現該文件中的數據都是有效數據。

下面使用spark獲得搜索結果排名第一同時點擊結果排名也是第一的數據量:


可以發現搜索結果排名第一同時點擊結果排名也是第一的數據量爲794條;

使用toDebugString查看一下其lineage:


HadoopRDD->MappedRDD->MappedRDD->FilteredRDD->FilteredRDD->FilteredRDD

 

下面看用戶ID查詢次數排行榜:


對sortedSogouQRdd進行collect操作:(不要亂collect 會出現OOM的)


結果:


 

把結果保存在hdfs上:


 

hdfs命令行查詢:

part-0000:


part-00001:


 

web控制檯查詢:


 

我們通過hadoop命令把上述兩個文件的內容合併起來:


 

查看一下合併後的本地文件:


 

使用head命令查看其具體內容:

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章