- 26
- 0
- 约3.6万字
- 约 72页
- 2022-09-04 发布于江苏
- 举报
MapReduce进阶编程
任务背景
2021年3月,网站运营方提出了新的需求,为了比较今年与去年同期的用户访问数据,要求分别统计出
2021年1月与2月的用户访问次数,并输出到不同的目录中。
本章结合竞赛网站每日访问次数的统计任务。
首先介绍MapReduce 中输入输出文件格式的设置过程。
接着介绍Hadoop Java API 的使用,方便HDFS系统的文件及目录操作。
重点讲解了自定义键值类型、Combiner、Partitioner分区器、自定义计数器的使用,对竞赛网站每日访问
次数的MapReduce程序进行优化,提高程序运行的效率。
最后介绍在IDEA 中直接提交并运行MapReduce任务的操作过程,简便程序运行的操作。
2
目录
1 筛选日志文件并生成序列化文件
Hadoop Java API读取
2
序列化日志文件
3 优化日志文件统计程序
在IDEA 中打包
4
并提交MapReduce程序
3
任务描述
在大数据文件的分析处理中,尤其是在处理逻辑比较复杂的情况下,需要使用多个MapReduce程序连续
进行处理,因此需要在HDFS上保存大量的中间结果。如何提高中间结果的存取效率,对于整个数据处理流程
具有重要意义。
Hadoop序列化具有紧凑、快速、可扩展以及互操作的特点,十分适合作为MapReduce任务的输入与输出
数据格式。
本小节的任务是从原始日志数据中筛选出1月与2月的数据,以序列化文件的格式保存,为后续的数据处
理任务做准备。
4
设置MapReduce输入格式
一般而言,HDFS 的一个文件对应多个数据块,每个数据块对应一个输入分片InputSplit ,而每个Map任务
只处理一个输入分片,每个分片包含一批记录,每条记录是一个键值对。
编写Mapper模块时只关注输入的键值对,而没有关注输入数据块。输入数据块主要是由Hadoop 自带的输
入格式进行处理的。
5
设置MapReduce输入格式
Hadoop 自带了多个输入格式,其中有一个抽象类为FileInputFormat ,所有操作文件的InputFormat类均从
FileInputFormat抽象类继承方法和属性。当启动Hadoop作业时,FileInputFormat将得到一个路径参数,这个路
径内包含了所需要处理的文件,FileInputFormat会读取这个文件夹内的所有文件,再将这些文件拆分成一个或
多个InputSplit 。
InputFormat 的类继承结构
6
设置MapReduce输入格式
几个常用的输入格式
输入格式 描述 键类型 值类型
行的字节偏移量
TextInputFormat 默认格式,读
您可能关注的文档
- Hadoop大数据开发基础 第2版 第2章 Hadoop集群的搭建及配置.ppt
- Hadoop大数据开发基础 第2版 第3章 Hadoop基础操作.ppt
- Hadoop大数据开发基础 第2版 第4章 MapReduce编程入门.ppt
- Hadoop大数据开发基础 第2版 第6章 Hive数据仓库.ppt
- Hadoop大数据开发基础 第2版 第7章 HBase分布式数据库.ppt
- Hadoop大数据开发基础 第2版 第8章 项目案例:电影网站用户影评分析.ppt
- Hadoop大数据开发基础 第2版 配套课件.pptx
- 江苏省常州第一中学2024-2025学年高三下学期期初质量调研英语+答案.pdf
- 腾讯安全沙龙:红队视角下的海外SRC猎场:战略、战术与突破.pdf
- 【icap】ETS的范围扩展:设计和政策挑战.docx
- 【银河专题】如何看待豆粕内外价差关系.pdf
- 工业5.0指数:国家如何重塑2025年的经济进步.docx
- 【蔚云科技】亚马逊【扫地机器人】行业消费者洞察报告.docx
- 青海大通县朔山中学2025-2026学年高三下学期开学考试政治+答案.docx
- 青海大通县朔山中学2025-2026学年高三下学期开学考试英语+答案.docx
- 东北师大附中2025届高三下学期期初考试-英语试题+答案.pdf
- 广东省汕头市2024-2025学年高三下学期第一次模拟考试政治试题(含答案).docx
- KPMG -欧洲数字产品护照 European Digital Product Passport.pdf
- 腾讯安全沙龙:后渗透新维度:利用Chrome插件后门实现持久化与凭据窃听.pdf
- 可持续发展报告调查:2025年结果.docx
原创力文档

文档评论(0)