代码仓库地址:https://gitee.com/jikeh/BigData
开发环境:maven、IntelliJ IDEA、shell
环境搭建:Hadoop单节点集群环境搭建
入目项目:Hadoop实战:MapReduce之WordCount实例
进阶项目:Hadoop实战:数据预处理之数据排序实例Hadoop实战:数据预处理之数据去重实例(IP去重、url去重)
数据集介绍:
本案例使用 Youtube 数据集(http://netsg.cs.sfu.ca/youtubedata/),一小部分 Youtube 样例数据集已经上传到代码仓库。
数据集字段含义翻译一下:
需求分析:找出评分排名前10的视频
原始数据:
LKh7zAJ4nwoTheReceptionist653Entertainment424130214.341305744DjdA-5oKYFQNxTDlnOuyboc-8VuICzXtUDH56yrIO5nIW1Uo5DQTtzcE-3zXq_r4w01TCeoRPg5dEyAr26YhuYNY2ZgXx72XmoE-7ClGo-YgZ0vmdPOOd6cxIKRHfMQqSHpkpIMpORZthYw1tUDzOp10pkheqocRij5P0_XIuvoH6rUgLGVU5DsezE0uO2kj6_D8B4xiDqywcDQRMuX81lMev6_o
7D0Mf4Kn4Xkperiurban583Music20165084.19687312e2k0h6tPvGcyuO6yjlvXe8VqpnWBo-R4EbdDskrr8jRYy3IDp2n7B48JngPWhfCb2MKQaUvH5oiO4NSzrwv5MCwcNHB0a0xtLgUDlRodd4s86sEzKwOYLh-S0eUIfRyrqwp8AK8Wtfwe-1kEq4hGkIqBGwN1lkLaLJHlc-uIffs-DHkMzpTorUhCd8YAvSK0qPw7EUWX5KLMqY4bMVKFqqoeMdjw
结果集:
1、启动hadoop
cd /usr/local/Env/Hadoop/hadoop-2.6.5/sbin/
./start-all.sh
2、HDFS创建目录
hadoop fs -mkdir -p /jikeh/videorating/input
3、上传文本文件到HDFS
hadoop fs -copyFromLocal /usr/local/src/* /jikeh/videorating/input
4、运行deduplication程序
语法:hadoop jar ***.jar [输入文件] [输出目录]
hadoop jar video-rating-0.0.1-SNAPSHOT.jar com/jikeh/hadoop/videorating/VideoRating
5、查看运行结果
6、借助shell脚本获取评分排名前10的视频
hadoop fs -cat /jikeh/videorating/output/part-r-00000 | sort -n -k 2 -r | head -n 10