摘要: MapReduce编程:实现并使用自定义InputFormat 目的就是先将输入文本处理在本例子是先将输入的日志文本处理成日志对象(自定义InputFormat)就不需要在map里面再处理提取日志对象! 再进行map函数、reduce函数实现每个城市总响应量统计(这个和前面几个例子一样类似于word 阅读全文
posted @ 2025-04-07 18:54 Annaprincess 阅读(11) 评论(0) 推荐(0)
摘要: 多类型输出 多类型输出指的是在mapreduce里输出的不在是单一类型 本案例意思: 对于日志进行mapreduce处理得到每个城市访问的所有url和响应内容总量 (1)日志对象 LogWritable package com.simple; import java.io.DataInput; im 阅读全文
posted @ 2025-04-07 18:31 Annaprincess 阅读(13) 评论(0) 推荐(0)
摘要: 分布式缓存 hdfs+mapreduce 本案例: 就是已知一个日志文件信息和每个城市对应的ip 现在需要利用mapreduce实现对日志文件进行信息提取得到每个城市名和他对应的总响应内容大小 所以ip2locale.txt放入缓存的目的是方便在map的时候取出来将ip换为城市名称 思路: 首先利用 阅读全文
posted @ 2025-04-07 18:08 Annaprincess 阅读(11) 评论(0) 推荐(0)
摘要: 多路输出 这个案例的意思是输出结果不是都放在同一个文件里 本案例要求同一个id的 所有商品在同一个目录下,不同id在不同目录下,这些目录都在KeySpilt下 除此之外还需要将所有商品的信息都备份一份放在AllPart目录下 (1)mapper类 package com.simple; import 阅读全文
posted @ 2025-04-07 00:45 Annaprincess 阅读(20) 评论(0) 推荐(0)
摘要: 数据分析 本例:求同一个小时内的用户数量 其实就是通过mapreduce将同一小时数的用户进行合并 (1)mapper类 import java.io.IOException; import java.net.URI; import java.util.HashMap; import org.apa 阅读全文
posted @ 2025-04-07 00:21 Annaprincess 阅读(15) 评论(0) 推荐(0)
摘要: 数据转换 就是将原数据整理成想要的格式,和数据清洗有点像! 比如:本案例 数据转换前: 每一列对应的含义:ip、时间、url 数据转换后: 详细代码如下: 代码思路和数据清洗一样 package com.simple.mr; import java.io.IOException; import ja 阅读全文
posted @ 2025-04-07 00:08 Annaprincess 阅读(26) 评论(0) 推荐(0)