摘要: 一、分析运行wordcount程序屏幕上打印信息 ##运行wordcount单词频率统计程序,基于输出输出路径。 [hadoop@hadoop-master hadoop-1.2.1]$ hadoop jar hadoop-examples-1.2.1.jar wordcount /wc/minin 阅读全文
posted @ 2016-03-15 21:05 YouxiBug 阅读(788) 评论(0) 推荐(0) 编辑
摘要: 模板类编写好后写MapReduce程序,的模板类编写好以后只需要改参数就行了,代码如下: 模板使用步骤: 1) 改名称(MapReduce类的名称、Mapper类的名称、Reducer类的名称) 2) 依据实际的业务逻辑修改Mapper类和Reducer类的Key/Value输入输出参数的类型 3) 阅读全文
posted @ 2016-03-15 20:56 YouxiBug 阅读(464) 评论(0) 推荐(0) 编辑
摘要: 读取输入文件中的内容,输出到指定目录的输出文件中,此时文件中的内容为: Key 输入文件每行内容的起始位置。 Value 输入文件每行的原始内容。 输出文件中的内容就是:key+\t+value. 主要在这个类中: 导包:   真正的代码: 阅读全文
posted @ 2016-03-15 20:46 YouxiBug 阅读(390) 评论(0) 推荐(0) 编辑
摘要: 思路:对每一个列的值依次进行比较,保存最大的值进行输出,算法的思想类似于排序算法(快速和冒泡排序)。 Mapper:因为只是在wordcount统计的基础上统计的,只是针对一个列,故可以找到最大值后,将最大值和对应的text给,cleanup中的context.write()方法,然后输出。此时不需 阅读全文
posted @ 2016-03-15 20:28 YouxiBug 阅读(352) 评论(0) 推荐(0) 编辑
摘要: 1) MapReduce中的基类Mapper类,自定义Mapper类的父类。 2) MapReduce中的基类Reducer类,自定义Reducer类的父类。 API文档 1) InputSplit输入分片,InputFormat输入格式化 2) 对Mapper输出结果进行Sorted排序和Grou 阅读全文
posted @ 2016-03-15 20:09 YouxiBug 阅读(580) 评论(0) 推荐(0) 编辑
摘要: 1) 分析业务需求:用户使用手机上网,存在流量的消耗。流量包括两部分:其一是上行流量(发送消息流量),其二是下行流量(接收消息的流量)。每种流量在网络传输过程中,有两种形式说明:包的大小,流量的大小。使用手机上网,以手机号为唯一标识符,进行记录。有记录,包括很多信息,需要的信息字段。 实际需要的字段 阅读全文
posted @ 2016-03-15 12:10 YouxiBug 阅读(478) 评论(0) 推荐(0) 编辑
摘要: 1、 在hadoop中所有的key/value都必须实现Writable接口,有两个方法,分别用于读(反序列化)和写(序列化)操作。 参考代码:   2、所有的key必须实现Comparable接口,在MapReduce过程中需要对Key/Value对进行反复的排序。默认情况下依据Key进行排序的, 阅读全文
posted @ 2016-03-15 11:59 YouxiBug 阅读(3373) 评论(0) 推荐(0) 编辑
摘要: Eclipse Idigo、JDK1.7-32bit、hadoop1.2.1、hadoop-eclipse-plugin-1.2.1.jar(自己网上下载) 1)将hadoop-eclipse-plugin-1.2.1.jar放到eclipse安装目录的plugins文件夹中,重新启动eclipse 阅读全文
posted @ 2016-03-15 11:46 YouxiBug 阅读(368) 评论(0) 推荐(0) 编辑
摘要: 1)在Eclipse中编写MapReduce程序 2)打包成jar包 3)使用FTP工具,上传jar到hadoop 集群环境 4)运行 说明:该程序运行完被我删除了,具体添加哪些包不太清楚,但是最保险的是把有可能用到的都添加进去,添加情况如下: 1)创建工程、类 2)添加文件夹conf、lib,然后 阅读全文
posted @ 2016-03-15 11:02 YouxiBug 阅读(305) 评论(0) 推荐(0) 编辑
摘要: 注意标题:Map Task数目的确定和Reduce Task数目的指定————自然得到结论,前者是后者决定的,后者是人为指定的。查看源码可以很容易看懂 1)MapReduce从HDFS中分割读取Split文件,通过Inputformat交给Mapper来处理。Split是MapReduce中最小的计 阅读全文
posted @ 2016-03-15 10:21 YouxiBug 阅读(3459) 评论(0) 推荐(0) 编辑
摘要: 1、 Copy过程,简单地拉取数据。Reduce进程启动一些数据copy线程(Fetcher),通过HTTP方式请求map task所在的TaskTracker获取map task的输出文件。因为map task早已结束,这些文件就归TaskTracker管理在本地磁盘中。 2、Merge阶段。这里 阅读全文
posted @ 2016-03-15 10:03 YouxiBug 阅读(253) 评论(0) 推荐(0) 编辑
摘要: 每个map task都有一个内存缓冲区,存储着map的输出结果,当缓冲区快满的时候需要将缓冲区的数据以一个临时文件的方式存放到磁盘,当整个map task结束后再对磁盘中这个map task产生的所有临时文件做合并,生成最终的正式输出文件,然后等待reduce task来拉数据。 1、 在map t 阅读全文
posted @ 2016-03-15 09:48 YouxiBug 阅读(246) 评论(0) 推荐(0) 编辑
摘要: 数据传输<key,value>     File-->  <key,value>  -->map(key,value)  --> mapResult<key,value>  -->  partition<key,value>     -->  sort<key>  -->  combiner<key 阅读全文
posted @ 2016-03-15 09:28 YouxiBug 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 1、大数据金字塔结构    Data Source-->Data Warehouses/Data Marts-->data exploration-->Data Mining-->Data Presentations-->Making Decisions2、从业职位   业务人员、ETL工程师、数据 阅读全文
posted @ 2016-03-15 09:06 YouxiBug 阅读(353) 评论(0) 推荐(0) 编辑