Hadoop大數據入門——HDFS和MapReduce基礎使用

一、分析處理數據集

數據集描述:

2011年某天某搜索引擎的搜索情況

數據集一共6列,分別爲時間、UID、搜索關鍵詞、選擇第幾個入口、搜索次數、URL。

初級階段我的研究目標是對搜索關鍵詞(keyword)進行詞頻統計。

那麼首先我需要對數據集進行預處理,這裏我使用python編寫處理程序,僅提取出關鍵字一列的內容形成新文件,爲下一步存入Hadoop的HDFS中做準備。處理代碼如下:

#數據預處理
import sys
path = ".\sogou.500w.utf8"   #數據來源
f = open(path,'r', encoding='UTF-8')
line = f.readline()
list = []
count = 0
while line:
    a = line.split('\t')
    b = a[2:3]
    list.append(b)
    line = f.readline()
    count = count+1
f.close
 
with open('sougou.txt','w',encoding='UTF-8') as month_file:    #提取後的數據文件
    for tag in list:
        for i in tag:
            month_file.write(str(i))
            month_file.write(' ')
        month_file.write('\n')

print(count)

文件處理結束後顯示文件總條數如下圖,共計500萬條。

處理後的文件部分截圖如下:

二、將處理後的文件存入HDFS

1.開啓Hadoop各項服務

輸入命令開啓各項服務:start-all.sh

再使用jps命令查看節點運行狀況

各虛擬機正常啓動的節點個數如下

2.使用putty上載文件

在putty安裝根目錄下啓動cmd,使用命令:pscp sogou.txt root@LinuxIP:/

通過上述命令完成了文件上載到Linux系統根目錄。

進入hadoop目錄下輸入如下命令上傳文件至HDFS:hadoop fs -put  /sogou.txt   /input

查看文件:hadoop fs -ls /input

使用MapReduce自帶的wordcount詞頻統計jar包:

使用putty下載統計出的數據:

 

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