hadoop之-站在巨人的肩膀上
文章平均质量分 79
luyee2010
这个作者很懒,什么都没留下…
展开
-
Join Optimization in Apache Hive
Join Optimization in Apache Hive由 Liyin Tang 于 2010年12月15日下午 12:04 发布With more than 500 million users sharing a billion pieces of content daily, Facebook stores a vast amount of data, and ne转载 2014-07-18 12:54:37 · 2060 阅读 · 0 评论 -
Mapreduce-Partition分析
Partition所处的位置Partition位置Partition主要作用就是将map的结果发送到相应的reduce。这就对partition有两个要求:1)均衡负载,尽量的将工作均匀的分配给不同的reduce。2)效率,分配速度一定要快。Mapreduce提供的PartitionerMapreduce默认的partitioner是HashPartitio转载 2013-03-02 22:46:39 · 1167 阅读 · 0 评论 -
SecondaryNameNode
SecondaryNameNode有两个作用,一是镜像备份,二是日志与镜像的定期合并。两个过程同时进行,称为checkpoint 总共分五步: 1.SecondaryNameNode通知NameNode准备提交edits文件,此时主节点产生edits.new 2.SecondaryNameNode通过http get方式获取NameNode的fsimage与edits文件(在Secon转载 2013-03-01 19:48:22 · 608 阅读 · 0 评论 -
Namenode源代码分析
http://blog.csdn.net/flyingpig4/article/details/7832646.namenode结构简介: 1.基本概念: |-->一个hdfs cluster包含一个NameNode和若干的DataNode,NameNode(以下简称nn)是master,主要负责管理hdfs文件系 统,具体地包括namespace管理(其实就是转载 2013-03-13 02:16:18 · 1662 阅读 · 0 评论 -
hadoop datanode源码分析
http://blog.csdn.net/flyingpig4/article/details/7667290DataNode源代码分析: 1.简介:DataNode是文件存储的基本单元,它将Block存储在本地文件系统中,保存了Block的Meta-data, 同时周期性地将所有存在的Block信息发送给NameNode 2.main启转载 2013-03-13 02:14:20 · 2277 阅读 · 0 评论 -
hadoop源码分析系列(六)——org.apache.hadoop.hdfs包之nameNode篇
摘要: 概述:nameNode主要负责管理hdfs中的namespace和inode信息,namenode维护了一个两个关键的列表1、文件与块的映射(namespace)2、块于节点的映射(inodes)namespace的信息存储在磁盘文件中,inode的信息每次 ...概述:nameNode主要负责管理hdfs中的namespace和inode信息,namenode维护了一个两个关转载 2013-02-28 18:00:35 · 857 阅读 · 0 评论 -
Hadoop源码分析之心跳机制
一.心跳机制 1. hadoop集群是master/slave模式,master包括Namenode和Jobtracker,slave包括Datanode和Tasktracker。2. master启动的时候,会开一个ipc server在那里,等待slave心跳。3. slave启动时,会连接master,并每隔3秒钟主动向master发送一个“心跳”,这个时间可 以通过转载 2013-02-28 17:41:55 · 1069 阅读 · 0 评论 -
hadoop源码分析系列(四)——org.apache.hadoop.hdfs包之协议篇
摘要: hdfs包是hadoop HDFS的主要实现,首先分析下协议包,这个包定义了hdfs在不同节点中的通信协议,对于协议的分析有助于后面的章节对于hdfs服务端、客户端通信的深入理解,按照惯例,首先看一下这个包中几个孤立的类: ...hdfs包是hadoop HDFS的主要实现,首先分析下协议包,这个包定义了hdfs在不同节点中的通信协议,对于协议的分析有助于后面的章节对于hdfs服务转载 2013-02-28 17:59:03 · 1371 阅读 · 0 评论 -
Hadoop源代码分析(MapReduce概论)
2009-02-21Hadoop源代码分析(MapReduce概论)大家都熟悉文件系统,在对HDFS进行分析前,我们并没有花很多的时间去介绍HDFS的背景,毕竟大家对文件系统的还是有一定的理解的,而且也有很好的文档。在分析Hadoop的MapReduce部分前,我们还是先了解系统是如何工作的,然后再进入我们的分析部分。下面的图来自http://horicky.blogspot.com/转载 2013-02-28 17:45:42 · 4266 阅读 · 1 评论 -
hadoop源码分析系列(七)——org.apache.hadoop.hdfs包完结篇——dataNode详解及总结
摘要: hdfs分析的最后一篇首先进行一下dataNode(以下简称dn)的源码分析,然后总结下对hdfs包的设计模式的一点看法:DataNode既可以看做是一个类,也可以认为是一个进程,还可以认为是一台服务器,总之他的主要作用就是 ...hdfs分析的最后一篇首先进行一下dataNode(以下简称dn)的源码分析,然后总结下对hdfs包的设计模式的一点看法:DataNode既可以看做转载 2013-02-28 18:01:16 · 923 阅读 · 0 评论 -
hadoop源码分析系列(三)——org.apache.hadoop.fs包 ----(下)
摘要: 上一遍分析了fs子包中的源码,这一篇主要分析fs包下的类的源码首先分析下这个包中较为孤立的类抽象类FSOutputSummer类是OutputStream类的子类,主要作用是在调用底层的output输出流之前先生成数据的校验和, ...上一遍分析了fs子包中的源码,这一篇主要分析fs包下的类的源码首先分析下这个包中较为孤立的类抽象类FSOutputSummer类是O转载 2013-02-28 17:57:56 · 3103 阅读 · 0 评论 -
hadoop源码分析系列(二)——org.apache.hadoop.fs包 ----(上)
摘要: org.apache.hadoop.fs包中主要包括了对文件系统的维护操作的抽象,包括文件的存储和管理,主要包含下面的子包这些子包中包含了对文件系统的基本操作的抽象包括文件上传协议、权限控制、对kosmos文件系统的支持、 ...org.apache.hadoop.fs包中主要包括了对文件系统的维护操作的抽象,包括文件的存储和管理,主要包含下面的子包这些子包中包含了对文件系转载 2013-02-28 17:57:11 · 7139 阅读 · 0 评论 -
hadoop源码分析系列之(一)——org.apache.hadoop.conf包
摘要: 首先分析org.apache.hadoop.conf包,顾名思义这个包的作用是为了读取集群的配置信息,包的类图如下:Configurable接口定义了设置配置信息的方法: void setConf(Configuration conf);获取配置信息的方法: ...首先分析org.apache.hadoop.conf包,顾名思义这个包的作用是为了读取集群的配置信息,包的类图如下:转载 2013-02-28 17:55:50 · 1779 阅读 · 0 评论 -
Hadoop源码分析之一(RPC机制之Server)
Rpc源码分析比较给力,详细:源码级强力分析hadoop的RPC机制:http://weixiaolu.iteye.com/blog/1504898http://www.linuxidc.com/Linux/2013-01/77251p2.htm网上已经有很多关于Hadoop源码分析的好文,在这记录的目的是把自己在看Hadoop源码时自己的一些体会,方便日后查询巩固。转载 2013-03-17 00:42:00 · 1138 阅读 · 0 评论 -
eclise中启动Hbase的Hmaster,玩玩shell
首先master:参数:运行 hbase shellhbase shell参数运行起来后hbase的shell跑几个命令试试发现可以了:create 't_person','no','name'create 't_person','no','name'0 row(s) in 2.5020 secondsHbase::Ta原创 2014-03-30 02:47:07 · 1688 阅读 · 0 评论 -
facebook presto安装与配置 CDH4.4
prestohttp://www.dw4e.com/?p=141http://blog.csdn.net/u012417026/article/details/14516631confhadoop@yard02:~/bigdata/presto-server-0.52/$ tar zxvf presto-server-0.52.tar.gzhadoop@yard02:~/bi原创 2013-11-20 20:06:48 · 7304 阅读 · 2 评论 -
hadoop0 release0.20.0编译出错
ant jar 成功ant package (eclipse-files)失败:build.xml:908: 'java5.home' is not defined. Forrest requires Java 5解决方案之一是:注释掉904与908行<!-- to Ant on the command-line." />--><!-- to Ant原创 2013-10-15 14:08:54 · 1336 阅读 · 0 评论 -
hadoop源码之JobQueueTaskScheduler
class JobQueueTaskScheduler extends TaskScheduler ---------FIFO1,start()方法public synchronized void start() throws IOException { super.start(); taskTrackerManager.addJobInProgressListener原创 2013-04-15 13:16:18 · 1435 阅读 · 0 评论 -
hadoop源码TaskAttemptID TaskTrackerAction JobTracker,FileOutputCommitter相关
1,TaskAttemptID代表task attempt,一个task attempt就是一个map/reduce task 的一个实例taskid,而每个TaskAttemptID由两部分组成:TaskID+task序列号eg:attempt_200707121733_0003_m_000005_0代表2007年07月12日17点33分启动的第0003号作业(job)的第0原创 2013-04-15 01:51:20 · 2305 阅读 · 0 评论 -
Hadoop中DataNode与NameNode之间的心跳机制
DataNode: 用于存储HDFS的数据,public class DataNode extends Configured implements InterDatanodeProtocol, ClientDatanodeProtocol, FSConstants, Runnable {。。。}1,实现了InterDatanodeProtocol, ClientDatano原创 2013-03-17 00:21:12 · 4924 阅读 · 0 评论 -
MapReduce错误任务失败处理
MapReduce的作业失败主要分三个层次,即jobtracker失败,tasktracker,子任务实例1,jobtracker失败jobtracker失败应该说是最严重的一种失败方式了,而且在hadoop中存在单点故障的情况下是相当严重的,因为在这种情况下作业最终失败,尽管这种故障的概率极小但是还是应该避免,可以通过启动多个jobtracker,在这种情况只运行一个主的jobtrack原创 2013-03-25 01:56:46 · 3605 阅读 · 0 评论 -
Hadoop Map/Reduce执行全流程关键代码
Hadoop Map/Reduce 执行流程关键代码 JobClient.runJob(conf) | 运行job |-->JobClient jc = new JobClient(job); |-->RunningJob rj = jc.submitJob(job); |-->submitJobInternal(job); |-->i转载 2013-03-13 02:16:56 · 1121 阅读 · 0 评论 -
HDFS原理 架构和副本机制
Hadoop RestFulHadoop HDFS原理1Hadoop HDFS原理2Hadoop作业调优参数调整及原理Hadoop HAHadoop MapReduce高级编程Hadoop IOHadoop MapReduce工作原理Hadoop 管理Hadoop 集群安装Hadoop RPC 第一部转载 2013-02-28 17:14:55 · 7378 阅读 · 0 评论 -
Hadoop心跳机制源码分析
正文:一.体系背景首先和大家说明一下:hadoop的心跳机制的底层是通过RPC机制实现的,这篇文章我只介绍心跳实现的代码,对于底层的具体实现,大家可以参考我的另几篇博客:1. hadoop的RPC机制(参考:http://weixiaolu.iteye.com/blog/1504898 )2. 动态代理(参考 :http://weixiaolu.iteye.com/bl转载 2013-02-28 18:08:51 · 1625 阅读 · 0 评论 -
源码级强力分析hadoop的RPC机制
前言:这些天一直奔波于长沙和武汉之间,忙着腾讯的笔试、面试,以至于对hadoop RPC(Remote Procedure Call Protocol ,远程过程调用协议,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。可以参考:http://baike.baidu.com/view/32726.htm)机制分析的博客一直耽搁了下来。昨天晚上胡老大和我抱怨说转载 2013-02-28 18:07:53 · 616 阅读 · 0 评论 -
Hadoop心跳机制源码分析
一.体系背景 首先和大家说明一下:hadoop的心跳机制的底层是通过RPC机制实现的,这篇文章我只介绍心跳实现的代码,对于底层的具体实现,大家可以参考我的另几篇博客:1. hadoop的RPC机制(参考:http://weixiaolu.iteye.com/blog/1504898 )2. 动态代理(参考 :http://weixiaolu.iteye.com/blog/147转载 2013-03-05 01:00:32 · 936 阅读 · 0 评论 -
源码级强力分析hadoop的RPC机制
分析对象: hadoop版本:hadoop 0.20.203.0必备技术点: 1. 动态代理(参考 :http://weixiaolu.iteye.com/blog/1477774 )2. Java NIO(参考 :http://weixiaolu.iteye.com/blog/1479656 )3. Java网络编程目录: 一.RPC协议二.ipc.RPC转载 2013-03-05 00:56:36 · 1051 阅读 · 0 评论 -
Hadoop RPC 实例
Datanode要向Namenode发送请求,希望得到一个字符串应答。假设Namenode的地址是127.0.0.1:9000一、配置文件org.apache.hadoop.conf. Configuration;对应的配置文件是core-site.xml。配置项以key-value的形式存储。[xhtml] view plaincopy转载 2013-03-05 00:52:22 · 991 阅读 · 0 评论 -
轻松使用Hadoop RPC
Hadoop RPC是Hadoop的一个重要部分,提供分布式环境下的对象调用功能,源码在org.apache.hadoop.ipc中。而HBase也几乎完全copy了这部分的源码,只是在配置项上面有所改动。关于Hadoop RPC的机制分析和源码解读,网上已经有许多资料,一搜一大把,这里就不在描述了。本文通过一个小例子,介绍如何调用Hadoop RPC。1. 应用场景Had转载 2013-03-05 00:23:02 · 830 阅读 · 0 评论 -
hadoop的源码分析之RPC(Remote Procedure Call Protocol)
理解这个RPC是不是的先去理解哈动态代理 好多invoke,还有Socket网络编程先来张eclipse下IPC源码图: 先来看看RPC.java,既然是动态代理,自然会想到Invoke()方法了,先来看看RPC中的Invoker中的invoke()方法private static class Invoker implements InvocationHandler原创 2013-01-12 16:49:19 · 1176 阅读 · 0 评论 -
mapreduce的文件拆分,FileInputFormat
在map之前会对要处理的文件进行拆分,按照定义的格式进行都写操作。主要是在InputFormat中,InputFormat是一个抽象类,主要有两个抽象方法:1, public abstract List getSplits(JobContext context) throws IOException, InterruptedException;确认输入的且分原则2, pub原创 2013-01-05 23:44:10 · 8136 阅读 · 0 评论 -
MapReduce源码 分析总结
转载自:http://blog.csdn.net/heyutao007/article/details/5725379MapReduce源码分析总结分类: Hadoop 2010-07-10 14:467521人阅读 评论(7)收藏 举报 目录(?)[+]Javen-Studio 咖啡小屋httpwwwcppblogcomjavenstudioartic转载 2013-01-05 00:46:10 · 1103 阅读 · 0 评论 -
eclipse编译hadoop源码
eclipse编译hadoop源码由于开发mapreduce的时候,有时需要看源码,再次down下来,编译了下,仅作为学习记录首先需要安装ant,svn(我用的是eclipse的插件); svn地址:http://svn.apache.org/repos/asf/hadoop/common/tags/release-0.20.2/ check后,直接ant编译就ok了,原创 2013-01-05 18:05:30 · 2740 阅读 · 0 评论 -
自定义hadoop map/reduce输入文件切割InputFormat
自定义hadoop map/reduce输入文件切割InputFormat 2012-12-05 19:52:29| 分类:hadoop | 标签:自定义 hadoop map/reduce inputformat |字号大中小 订阅 hadoop会对原始输入文件进行文件切割,然后把每个split传入mapper程序中进行处理,FileInpu转载 2013-01-05 18:10:24 · 1668 阅读 · 0 评论 -
hadoop自带的存取小文件存取解决方案
现实场景;在系统中,存在大量的小文件存取,比如图片文件,一般在几M以内, 1),但是HDFS默认block大小是64M,如果直接存取在Hadoop中,将极大的消耗namenode的资源。直接放在hadoop文件系统中,大多只是做归档分析用,所以,我们就想能不能定期归档。 2),放在HBase中,由于Hbase的value最大长度是64KB,而很多小文件又大过这个级别。原创 2013-01-03 19:38:24 · 6594 阅读 · 1 评论 -
MapReduce 的理解
1分钟理解map reduce,其实它就在我们身边:http://heipark.iteye.com/blog/845267,就是:查找与汇总呗linux平台下有个ls指令,大家都很熟悉:① ls | grep 2008 查询文件名包含2008的文件(这其实就是一个map,找到需要的数据)② ls | grep 2008 | wc -l 计算上述指令查询文件个数(这转载 2012-12-27 00:07:31 · 948 阅读 · 0 评论 -
新旧版hadoop的一些差别
Hadoop最新版本的MapReduce Release 0.20.0的API包括了一个全新的Mapreduce JAVA API,有时候也称为上下文对象。新的API类型上不兼容以前的API,所以,以前的应用程序需要重写才能使新的API发挥其作用 。新的API和旧的API之间有下面几个明显的区别。新的API倾向于使用抽象类,而不是接口,因为这更容易扩展。例如,你可以添加一个方法转载 2012-12-24 01:31:47 · 1169 阅读 · 0 评论 -
Hadoop RPC详细分析
1. 总体结构HadoopRPC逻辑上分成三部分,如上图所示。1.1. RPC InterfaceRPC对外接口。1.2. RPC ServerRPC服务端的实现。1.3. RPC ClientRPC客户端的实现。1.4. RPC InterfaceRPC是对外的接口类,主要提供两个方法:getProxy和getSer转载 2013-03-05 02:47:53 · 1237 阅读 · 0 评论 -
Hadoop RPC整个使用流程——以DataNode向NameNode注册为例
在HDFS实现过程中DataNode class中有一个成员变量namenode,其类型是DatanodeProtocol。namenode可以看作是远程NameNode服务器的一个代理,因为NameNode本身也是DatanodeProtocol接口的具体实现;DataNode通过调用namenode对象的方法与远程NameNode进行交互。下面看一下namenode变量在DataNode当转载 2013-03-05 00:45:24 · 878 阅读 · 0 评论 -
MapReduce工作原理图文详解
前言:前段时间我们云计算团队一起学习了hadoop相关的知识,大家都积极地做了、学了很多东西,收获颇丰。可是开学后,大家都忙各自的事情,云计算方面的动静都不太大。呵呵~不过最近在胡老大的号召下,我们云计算团队重振旗鼓了,希望大伙仍高举“云在手,跟我走”的口号战斗下去。这篇博文就算是我们团队“重启云计算”的见证吧,也希望有更多优秀的文章出炉。汤帅,亮仔,谢总•••搞起来啊!呵呵,下面转载 2013-02-28 18:05:54 · 790 阅读 · 0 评论