![](https://img-blog.csdnimg.cn/20201014180756928.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
MapReduce
lqf1403
勤学如春起之苗,不见其长,日有所增。辍学如磨刀之石,不见其损,日有所亏。
展开
-
Mapreduce工作流程
1、mapreduce实际处理流程mapreduce 其实是分治算法的一种现,所谓分治算法就是“就是分而治之 ,将大的问题分解为相同类型的子问题(最好具有相同的规模),对子问题进行求解,然后合并成大问题的解。mapreduce就是分治法的一种,将输入进行分片,然后交给不同的task进行处理,然后合并成最终的解。 mapreduce实际的处理过程可以理解为Input->Map->Sort->Comb原创 2015-12-15 21:02:27 · 8798 阅读 · 0 评论 -
使用mapreduce向hbase1.1.2插入大量数据
1、集群环境hadoop2.5+hbase1.1.2集群现在有37台slave节点,一个master节点。2、数据源每一天的数据压缩成了一个tar.gz包,大概4G,其中大概有6000个zip包,每个zip包中有几个txt文件。现在采用shell脚本将每天的数据合并成一个txt,大概有几十G。3、插入要求现在要将txt文件中的每一行作为一条记录插入hbase。4、建表create ‘ter原创 2015-12-07 11:05:00 · 7396 阅读 · 1 评论 -
mapreduce中map方法一次读取整个文件
最近有一个项目,需要将爬虫获取的众多网页解析出来,并将内容插入hbase,考虑采用mapreduce来实现。由于一个html文件最大不过几M,所以一个文件将会交给一个map处理,mapreduce中最常见的是按行读取文本文件,而我们需要的是一次读取整个文件内容,然后在map方法中用jsoup解析内容。现将实现一次读取整个文件内容的代码贴出来。1、定义一个FileInputFormat类public原创 2016-01-25 13:31:48 · 7621 阅读 · 0 评论 -
Mapreduce中map方法自定义key类
为map方法的key构造一个复合类public static class IntPair implements WritableComparable<IntPair> { int first; int second; /** * Set the left and right values. */原创 2016-01-25 13:19:53 · 2999 阅读 · 1 评论 -
MapReduce map side join实例
1.问题描述现有一张大表(大概有2亿多条记录),存放的是机顶盒用户每天的播放记录,有所看的电视台名称和开始时间,但是没有节目名。 还有一张小表(几十万条),数据是用爬虫获取的每天各个电视台的节目单信息。 现在需要将用户的播放记录与节目信息关联起来。即根据用户播放记录中的电视台名和开始时间确定节目名称。2.reduce side join 还是map side join由于小表的数据量比较小,完全原创 2016-01-06 21:48:10 · 1732 阅读 · 0 评论 -
MapReduce中的两表join几种方案简介
1. 概述在传统数据库(如:MYSQL)中,JOIN操作是非常常见且非常耗时的。而在HADOOP中进行JOIN操作,同样常见且耗时,由于Hadoop的独特设计思想,当进行JOIN操作时,有一些特殊的技巧。本文首先介绍了Hadoop上通常的JOIN实现方法,然后给出了几种针对不同输入数据集的优化方法。2. 常见的join方法介绍假设要进行join的数据分别来自File1和File2.2.1 reduc转载 2016-01-06 21:15:38 · 976 阅读 · 0 评论 -
Mapreduce代码编写问题汇总
1、job.setOutputFormatClass(TextOutputFormat.class);报错The method setOutputFormatClass(Class原创 2015-12-17 21:25:51 · 881 阅读 · 0 评论 -
Exception in thread “main” java.lang.IllegalArgumentException: Wrong FS: hdfs://localhost:9000/user/
// pickup config files off classpath Configuration conf = new Configuration() // explicitely add other config files // PASS A PATH NOT A STRING! conf.addResource(new Path(“/home/hadoop/conf/cor原创 2015-11-23 22:31:56 · 1539 阅读 · 0 评论 -
在eclipse上安装hadoop2.2.0插件
1、安装环境系统:centos6.5 hadoop2.2.0 eclipse:mars.1Release(4.5.1)2、插件的安装下载hadoop2.2.0的eclipse插件,解压之后放到eclipse的plugin目录下,重启eclipse。3、配置hadoop installation directory如果安装插件成功,打开Window–>Preferens,你会发现Hadoop Ma原创 2015-10-31 21:48:25 · 2082 阅读 · 0 评论 -
mapreduce任务失败、重试、推测式执行机制小结
mapreduce中我们自定义的mapper和reducer程序在执行后有可能遇上出错退出的情况,mapreduce中jobtracker会全程追踪任务的执行情况,对于出错的任务mapreduce也定义了一套自己的处理方式。 首先要明确的是mapreduce判断任务失败的方式。三种情况下任务会被认为执行失败:返回非0值、产生java异常、超时(长时间没响应)。对于第一种,通常用于strea转载 2015-11-30 14:43:19 · 2638 阅读 · 0 评论 -
MapReduce和YARN的关系
YARN并不是下一代MapReduce(MRv2),下一代MapReduce与第一代MapReduce(MRv1)在编程接口、数据处理引擎(MapTask和ReduceTask)是完全一样的, 可认为MRv2重用了MRv1的这些模块,不同的是资源管理和作业管理系统,MRv1中资源管理和作业管理均是由JobTracker实现的,集两个功能于一身,而在MRv2中,将这两部分分开了, 其中,作业管理由转载 2015-11-30 21:33:00 · 5860 阅读 · 0 评论 -
Hadoop作业提交与停止命令
1. 作业提交命令 jarhadoop jar <jar> [mainClass] args.. 表示 jar 包名 mainClass 表示 main class 名称,可以不必输入而由 jar 命名自动搜索 args 是 main class 输入参数 bin/hadoop jar hadoop-examples-1.0.0.jar wordcount /text/input /test转载 2016-03-06 15:46:11 · 15069 阅读 · 0 评论