僞分佈式運行mapreduce

在使用HDFS之前,需要保證hadoop處於運行狀態

在HDFS中創建用戶目錄

./bin/hdfs dfs -mkdir -p /user/hadoop

在user/hadoop 中建立input文件夾,將etc/hadoop中的xml文件複製到input文件夾中作爲輸入文件

./bin/hdfs dfs -mkdir input
./bin/hdfs dfs -put ./etc/hadoop/*.xml input

複製完成後,可以通過命令查看文件列表

./bin/hdfs dfs -ls input

在這裏插入圖片描述
僞分佈式運行mapreduce讀取的是HDFS的文件

./bin/hadoop jar ./share/hadoop/mapreduce/hadoop-mapreduce-examples-*.jar grep input output 'dfs[a-z.]+'

利用命令查看運行結果,輸出結果位於HDFS中

./bin/hdfs dfs -cat output/*

在這裏插入圖片描述
也可以將運行結果取到本地

rm -r ./output    # 先刪除本地的 output 文件夾
./bin/hdfs dfs -get output ./output    
cat ./output/*

hadoop運行程序時,爲了防止覆蓋結果,程序指定的輸出目錄不能存在(如output),否則會提示錯誤,運行前要先刪除output文件夾

./bin/hdfs dfs -rm -r output    # 刪除 output 文件夾

在這裏插入圖片描述
如果需要關閉hadoop,運行

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