自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 资源 (2)
  • 收藏
  • 关注

原创 CodeForces 3D Least Cost Bracket Sequence (贪心+优先队列)

D. Least Cost Bracket Sequence time limit per test 1 second memory limit per test 64 megabytes input standard input output standard output This is yet another problem on regular bracket sequen

2016-05-29 11:57:53 708

原创 Hadoop应用——sort

hadoop排序可以分为以下四种排序: 1、普通排序 1)MapReduce本身自带排序功能 2)IntWritable,LongWritable,Text等实现了WritableComparable类型的对象,都是可以排序的。 2、部分排序 map和reduce处理过程中包含了默认对key的排序,那么如果不要求全排序,可以直接把结果输出,每个输出文件中包含的就是按照key进行排序的结果

2016-05-17 20:00:02 1764

原创 Hadoop应用——Map端Join操作

联接 使用案例 Table EMP:Name Sex Age DepNozhang male 20 1li female 25 2wang female 30 3zhou male 35 2Table DEP:DepNo DepName1 Sales2 Dev3 MgtMap端联接是指数据到达map处理函数之前进行

2016-05-17 16:41:24 1862

原创 Hadoop应用——Reduce端Join操作

联接 使用案例 Table EMP:Name Sex Age DepNozhang male 20 1li female 25 2wang female 30 3zhou male 35 2Table DEP:DepNo DepName1 Sales2 Dev3 Mgtreduce端联接比map端联接更普遍,因为输入的

2016-05-17 15:36:53 700

原创 Hadoop 计数器

计数器 1)计数器主要用来收集系统信息,以及相关作业的运行时候的统计数据,用于知道作业成功、失败等情况。 2)相比而言,计数器方式比日志更易于分析内置计数器 1)Hadoop内置的计数器,主要用来记录作业的执行情况 2)内置计数器包括: A、MapReduce框架计数器(Map-Reduce Framework) B、文件系统计数器(FileSystemCounters) C、作业计数

2016-05-17 11:11:06 1252

原创 Task运行过程分析5——ReduceTask内部实现

与MapTask一样,ReduceTask也分为四种,即Job-setup Task,Job-cleanup Task,Task-cleanup Task和Reduce Task。本文重点介绍第四种——普通Reduce Task。 Reduce Task要从各个Map Task上读取一片数据,经排序后,以组为单位交给用户编写的reduce()函数处理,并将结果写到HDFS上。本文将深入剖析Redu

2016-05-16 16:05:17 2915

原创 Task运行过程分析4——Map Task内部实现2

在Task运行过程分析3——MapTask内部实现中,我们分析了MapTask的Collect阶段,并且解读了环形缓冲区使得MapTask的Collect阶段和Spill阶段可并行执行。。。接下来分析Spill阶段和Combine阶段。。。Spill过程分析 Spill过程由SpillThread线程完成,SpillThread线程实际上是缓冲区kvbuffer的消费者 protected cl

2016-05-16 10:42:08 7738

原创 Task运行过程分析3——Map Task内部实现

Map Task内部实现 在Task运行过程分析2中提到,MapTask分为4种,分别是Job-setup Task、Job-cleanup Task、Task-cleanup Task和Map Task。其中,Job-setup Task和Job-cleanup Task分别是作业运行时启动的第一个任务和最后一个任务,主要工作分别是进行一些作业初始化和收尾工作,比如创建和删除作业临时输出目录;而

2016-05-15 15:46:51 11691

原创 Task运行过程分析2

上篇文章Task运行过程1讲到脚本会运行org.apache.hadoop.mapred.Child类。。。 Child类包含一个入口主方法main,在运行的时候需要传递对应的参数,来运行MapTask和ReduceTask,通过命令行输入如下5个参数: host:表示TaskTracker节点的主机名称 port:表示TaskTracker节点RPc端口号 taskID:表示启动的Task

2016-05-14 20:00:12 8095

原创 Task运行过程分析1

1、Task运行过程概述 在MapReduce计算框架中,一个应用程序被划分成Map和Reduce两个计算阶段,它们分别由一个或者多个Map Task和Reduce Task组成。其中,每个Map Task处理输入数据集合中的一片数据(InputSplit),并将产生的若干个数据片段写到本地磁盘上,而Reduce Task则从每个Map Task上远程拷贝相应的数据片段,经分组聚集和归约后,将结果

2016-05-14 13:29:45 9644 5

原创 Hadoop RecordReader

自定义RecordReader 步骤: 1)继承抽象类RecordReader,实现RecordReader的一个实例 2)实现自定义InputFormat类,重写InputFormat中的createRecordReader()方法,返回值是自定义的RecordReader实例 3)配置job.setInputFormatClass()设置自定义的InputFormat实例RecordRe

2016-05-12 21:27:54 2533

原创 Hadoop Partitioner组件

1、Partitioner组件可以让Map对Key进行分区,从而可以根据不同key来分发到不同的reduce中去处理。 2、你可以自定义key的一个分发规则,如数据文件包含不同的省份,而输出的要求是每个省份输出一个文件 3、提供了一个默认的HashPartitioner 在org.apache.hadoop.mapreduce.lib.partition.HashPartitioner.jav

2016-05-12 15:56:20 1603

原创 Hadoop Combiner组件

1、Combiner的作用是把一个map产生的多个(key,value)合并成一个新的(key,value),然后再将新的(key,value)作为reduce的输入 2、在map函数与reduce函数多了一个combine函数,目的是为了减少map输出的中间结果,这样减少了reduce复制map输出的数据,减少网络传输负载。 3、并不是所有情况下都能使用Combiner,Combiner使用于

2016-05-12 10:30:20 682

原创 hadoop基于文件的数据结构

基于文件的数据结构 两种文件格式 1)SequenceFile SequenceFile 1、SequenceFile文件是Hadoop用来存储二进制形式的import java.net.URI;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import org.apa

2016-05-11 20:06:50 1414

原创 MapReduce类型与格式

输入格式 1)输入分片与记录 a)JobClient通过指定的输入文件的格式来生成数据分片InputSpilit 输入格式概览如图所示: 抽象类:FileInputFormat 1、FileInputFormat是所有使用文件作为数据源的InputFormat实现的基类 2、FileInputFormat输入数据格式的分片大小由数据块大小决定 在org.apache.hadoop.

2016-05-10 21:04:03 1476

原创 Hadoop资源管理

Hadoop资源管理由两部分组成:资源表示模型和资源分配模型。其中,资源表示模型用于描述资源的组织方式,Hadoop采用“槽位”(slot)组织各节点上的资源;而资源分配模型则决定如何将资源分配给各个作业/任务,在Hadoop中,这一部分由一个插拔式的调度器完成。 Hadoop引入了“slot”概念表示各个节点上的计算资源。为了简化资源管理,hadoop将各个节点上的资源(CPU、内存和磁盘等)等

2016-05-10 09:20:08 4488

原创 Hadoop作业调度

1)先进先出调度器(FIFO) 2)公平调度器(FairScheduler) 3)容量调度器(CapacityScheduler)FIFO调度器 1)FIFO调度器是hadoop中默认的调度器,它先遵循高优先级优先,然互按照作业到来的顺序进行调度 2)这种默认的调度器的一个缺点是:高优先级以及需要长时间运行的作业一直在被处理,而低优先级以及短作业将长时间得不到调度FairScheduler(

2016-05-09 21:14:55 3709

原创 Hadoop错误处理

出现的错误主要有以下三种: 1)Task失败 2)JobTracker失败 3)TaskTracker失败Task失败 1)当map或者reduce子任务中的代码抛出异常,JVM进程会在退出之前向主进程tasktracker进程发送错误报告,tasktracker会将此(任务尝试)task attempt标记为failed状态,释放一个槽以便运行另外一个任务。 2)对于流任务,如果流进程以

2016-05-09 20:40:58 2216

原创 Job和Task运行时信息的维护

JobTracker最重要的功能之一是状态监控,包括TaskTracker、Job和Task等运行时状态的监控,其中TaskTracker状态监控比较简单,只要记录其最近心跳汇报时间和健康状况(由TaskTracker端的监控脚本检测,并通过心跳将结果发送给JobTracker)即可。 作业描述模型 如下图所示 JobTracker在其内部以“三层多叉树”的方式描述和跟踪每个作业的运行状态

2016-05-09 17:49:20 1603

原创 MapReduce工作流程

MapReduce工作流程的经典流程如图所示 1)作业配置 当用户程序写下如下代码时Job job = new Job(conf,"word count") ;System.exit(job.waitForCompletion(true)?0:1) ;job.waitForCompletion(true)是调用org.apache.hadoop.mapreduce.Job.java中的wa

2016-05-04 21:35:01 2067

java 7并发编程实战手册 源码

java 7并发编程实战手册源码打包,可以运行,使用JDK1.7

2015-10-08

火车票查询系统

解压即可运行 火车票管理系统 数据库是Access

2012-12-13

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除