hadoop开发
文章平均质量分 92
小飞侠-2
我的github地址https://github.com/liujiekasini 欢迎大家分享讨论
展开
-
Hive体系结构
本文整理自阿里数据平台的官方博客:http://www.alidata.org/archives/category/cloud-computing/hive 1、Hive架构与基本组成 下面是Hive的架构图。图1.1 Hive体系结构 Hive的体系结构可以分为以下几部分: (1)用户接口主要有三个:CLI,Clie转载 2015-12-09 11:19:13 · 726 阅读 · 0 评论 -
Hadoop动态调整Map Task内存资源大小
前言我们都知道,在Hadoop中,一个Job的执行需要转化成1个个的Task去执行,在Task中,有会有2个类型,一个为Map Task,另一个就是Reduce Task.当然,这不是最底层的级别,在Task内部,还可以再分为TaskAttempt,叫做任务尝试,任务尝试姑且不在本篇文章的论述范围内.OK,针对每个Task,他当然会有他的资源使用量,广义的来讲,资源分为2个概念,1个是Me转载 2015-12-17 17:29:31 · 763 阅读 · 0 评论 -
YARN源码分析(三)-----ResourceManager HA之应用状态存储与恢复
前言任何系统即使做的再大,都会有可能出现各种各样的突发状况。尽管你可以说我在软件层面上已经做到所有情况的意外处理了,但是万一硬件出问题了或者说物理层面上出了问题,恐怕就不是多写几行代码能够立刻解决的吧,说了这么多,无非就是想强调HA,系统高可用性的重要性。在YARN中,NameNode的HA方式估计很多人都已经了解了,那本篇文章就来为大家梳理梳理RM资源管理器HA方面的知识,并不是指简单的转载 2015-12-17 17:33:42 · 516 阅读 · 0 评论 -
自定义Hive Sql Job分析工具
前言我们都知道,在大数据领域,Hive的出现帮我降低了许多使用Hadoop书写方式的学习成本.使用用户可以使用类似Sql的语法规则写明查询语句,从hive表数据中查询目标数据.最为重要的是这些sql语句会最终转化为map reduce作业进行处理.这也是Hive最强大的地方.可以简单的理解为Hive就是依托在Hadoop上的1个壳.但是这里有一点点小小的不同,不是每段hive查询sql语句转载 2015-12-17 17:36:42 · 448 阅读 · 0 评论 -
YARN源码分析(一)-----ApplicationMaster
前言在之前两周主要学了HDFS中的一些模块知识,其中的许多都或多或少有我们借鉴学习的地方,现在将目光转向另外一个块,被誉为MRv2,就是yarn,在Yarn中,解决了MR中JobTracker单点的问题,将此拆分成了ResourceManager和NodeManager这样的结构,在每个节点上,还会有ApplicationMaster来管理应用程序的整个生命周期,的确在Yarn中,多了许多转载 2015-12-17 17:32:34 · 2105 阅读 · 0 评论 -
JobTracker作业启动过程分析
在Hadoop中,启动作业运行的方式有很多,可以用命令行格式把打包好后的作业提交还可以,用Hadoop的插件进行应用开发,在这么多的方式中,都会必经过一个流程,作业会以JobInProgress的形式提交到JobTracker中。什么叫JobTracker呢,也许有些人了解Hadoop只知道他的MapReduce计算模型,那个过程只是其中的Task执行的一个具体过程,比较微观上的流程,而JobTr转载 2015-12-17 17:42:09 · 383 阅读 · 0 评论 -
HDFS源码分析(五)-----节点注册与心跳机制
前言在Hadoop的HDFS启动的时候,不知道大家有没有注意到一个细节,一般都是先启动NameNode,然后再启动DataNode,细想一下,原因就很简单了,因为NameNode要维护元数据信息,而这些信息都是要等待后续启动的DataNode的情况汇报才能逐步构建的.然后之后通过保持心跳的形式进行block块映射关系的维护与更新.而今天的文章就以此方面,对这块流程做全面的分析.转载 2015-12-17 17:46:43 · 418 阅读 · 0 评论 -
Hadoop分布式文件系统--HDFS结构分析
前言在Hadoop内部,具体实现了许多类的文件系统,当然最最被我们用到的就是他的分布式文件系统HDFS了。但是本篇文章不会讲HDFS的主从架构等东西,因为这些东西网上和资料书中都讲得很多了。所以,我决定以我个人的学习所得,来讲讲HDFS内部的一些有意思的东西,也作为一个起始点,为后续继续深入其中模块的学习做基础。HDFS两大主流关系模块与NameNode相关,文件系统元转载 2015-12-17 17:39:26 · 319 阅读 · 0 评论 -
NodeManagerMetrics上精确化Container指标监控
前言在准备开始写本篇文章之前,我一直在想应该给本篇文章定一个怎样的标题才能最精准的表达出主题而又不会让字数变得过多.因为Metric指标监控在YARN中早已经存在了,而且支持的指标非常多,所以本篇文章当然不会是简简单单介绍某几个指标监控的含义和如何添加自定义Metric指标监控这样的内容,关键点在于2个字,精化.精化的潜在意思有2个,1个是在原有监控的指标的基础上,增加更细粒度的监控,去改转载 2015-12-17 17:44:59 · 775 阅读 · 0 评论 -
HDFS源码分析(四)-----节点Decommission机制
前言在Hadoop集群中,按照集群规模来划分,规模可大可小,大的例如百度,据说有4000台规模大小的Hadoop集群,小的话,几十台机器组成的集群也都是存在的。但是不论说是大型的集群以及小规模的集群,都免不了出现节点故障的情况,尤其是超大型的集群,节点故障几乎天天发生,因此如何做到正确,稳妥的故障情况处理,就显得很重要了,这里提供一个在Hadoop集群中可以想到的办法,就是Decommis转载 2015-12-17 17:41:57 · 442 阅读 · 0 评论 -
HDFS源码分析(二)-----元数据备份机制
前言在Hadoop中,所有的元数据的保存都是在namenode节点之中,每次重新启动整个集群,Hadoop都需要从这些持久化了的文件中恢复数据到内存中,然后通过镜像和编辑日志文件进行定期的扫描与合并,ok,这些稍微了解Hadoop的人应该都知道,这不就是SecondNameNode干的事情嘛,但是很多人只是了解此机制的表象,内部的一些实现机理估计不是每个人都又去深究过,你能想象在写入编辑日转载 2015-12-17 17:48:21 · 1310 阅读 · 0 评论 -
Sqoop实现MySql/Oracle与Hdfs/Hbase互导数据
下文将重点说明通过Sqoop实现Mysql与HDFS互导数据,Mysql与Hbase,Oracle与Hbase的互导最后给出命令。一、Mysql与HDFS互导数据环境:宿主机器操作系统为Win7,Mysql安装在宿主机上,宿主机地址为192.168.66.963台虚拟机操作系统为Ubuntu-12.04.1-32位三台虚拟机已成功安装Hadoop,并实现免密转载 2016-01-07 14:12:53 · 441 阅读 · 0 评论 -
hadoop添加节点和删除节点
转自:http://www.cnblogs.com/ggjucheng/archive/2012/04/22/2465625.html添加DataNode1.部署hadoop和普通的datanode一样。安装jdk,ssh2.修改host和普通的datanode一样。添加namenode的ip3.修改namenode的配置文件conf/slaves添转载 2015-12-23 16:41:12 · 1283 阅读 · 1 评论 -
Hive入门指南
本文整理自Hive官方Wiki的Getting Started部分:https://cwiki.apache.org/confluence/display/Hive/Home 1、安装与配置 Hive是建立在Hadoop上的数据仓库软件,用于查询和管理存放在分布式存储上的大规模数据集。它提供: (1)一系列的工具,可以方便地对数据进行提取/转化/加转载 2015-12-09 11:18:02 · 466 阅读 · 0 评论 -
搭建Hadoop集群
版权声明:本文为博主原创文章,未经博主允许不得转载。 官方配置手册:http://hadoop.apache.org/docs/stable/ 通常,Hadoop集群里的一台机器被指定为NameNode,另一台不同的机器被指定为JobTracker。这些机器是masters。余下的机器即作为DataNode也作为TaskTracker,它们是slaves。 1转载 2015-12-09 11:20:16 · 382 阅读 · 0 评论 -
hadoop面试100道收集(带答案)
1.列出安装hadoop流程步骤a) 创建hadoop账号b) 更改ipc) 安装java 更改/etc/profile 配置环境变量d) 修改host文件域名e) 安装ssh 配置无密码登录f) 解压hadoopg) 配置hadoop conf下面的配置文件h) Hadoop namenode -format 格式化i) Start 启动2.列出had原创 2015-12-09 11:23:44 · 6495 阅读 · 0 评论 -
【Hadoop代码笔记】Hadoop作业提交之客户端作业提交
【Hadoop代码笔记】Hadoop作业提交之客户端作业提交by Douba on 2013年9月11日 in hadoop, mapreduce, source0一、概要描述仅仅描述向Hadoop提交作业的第一步,即调用Jobclient的submitJob方法,向Hadoop提交作业。二、 流程描述Jobclient使用内置的转载 2016-04-28 09:34:53 · 1244 阅读 · 0 评论 -
Hadoop节点"慢磁盘"监控
前言最近在工作中解决了一个慢磁盘的问题,个人感觉整个发现-分析-解决的过程还是非常有意思并且很有意义的.而且磁盘监控在目前的Hadoop中还是没有做的很全的,大多数都是对Datanode,可以说这是1个盲区.其实想一想,hadoop自身不做这方面的监控也合理,因为像这种问题基本上是属于硬件问题,本不应该在软件层面对其进行监控,没有这么大的必要.但是后来我们想了想,如果通过软件层面的监控手段转载 2015-12-17 17:27:48 · 1017 阅读 · 0 评论 -
Hadoop Balancer源码解读
前言最近在做一些Hadoop运维的相关工作,发现了一个有趣的问题,我们公司的Hadoop集群磁盘占比数值参差不齐,高的接近80%,低的接近40%,并没有充分利用好上面的资源,但是balance的操作跑的也是正常的啊,所以打算看一下Hadoop的balance的源代码,更深层次的去了解Hadoop Balance的机制。Balancer和Distpatch上面2个类的设计就是转载 2015-12-17 17:47:26 · 860 阅读 · 0 评论 -
HDFS源码分析(三)-----数据块关系基本结构
前言正如我在前面的文章中曾经写过,在HDFS中存在着两大关系模块,一个是文件与block数据块的关系,简称为第一关系,但是相比于第一个关系清晰的结构关系,HDFS的第二关系就没有这么简单了,第二关系自然是与数据节点相关,就是数据块与数据节点的映射关系,里面的有些过程的确是错综复杂的,这个也很好理解嘛,本身block块就很多,而且还有副本设置,然后一旦集群规模扩大,数据节点的数量也将会变大,转载 2015-12-17 17:37:13 · 366 阅读 · 0 评论 -
Hadoop学习路线图
按照这个路线图来学习即可。 1、M. Tim Jones的三篇文章: 用Hadoop进行分布式数据处理第1部分(入门):http://www.ibm.com/developerworks/cn/linux/l-hadoop-1/index.html 用Hadoop进行分布式数据处理第2部分(进阶):http://www.ibm.com/developerworks/c转载 2015-12-09 11:15:24 · 423 阅读 · 0 评论 -
hadoop笔试收集
Hadoop科普文—常见的45个问题解答· Hadoophadoop工作linux 1.Hadoop集群可以运行的3个模式· 单机(本地)模式· 伪分布式模式· 全分布式模式2. 单机(本地)模式中的注意点?在单机模式(standalone)中不会存在守护进程,所有东西都运行在一个JVM上。这里同样没有DFS,使用的是本地文件系统。单机模式适用于开发过程中运行Ma原创 2015-12-09 11:25:27 · 1144 阅读 · 0 评论 -
负载均衡的基本算法
随机:负载均衡方法随机的把负载分配到各个可用的服务器上,通过随机数生成算法选取一个服务器,然后把连接发送给它。虽然许多均衡产品都支持该算法,但是它的有效性一直受到质疑,除非把服务器的可运行时间看的很重。轮询:轮询算法按顺序把每个新的连接请求分配给下一个服务器,最终把所有请求平分给所有的服务器。轮询算法在大多数情况下都工作的不错,但是如果负载均衡的设备在处理速度、连接速度和内存等方面不是完全均等转载 2015-12-14 14:05:13 · 300 阅读 · 0 评论 -
HBase入门基础教程
开发环境硬件环境:CentOS 6.5 服务器4台(一台为Master节点,三台为Slave节点) 软件环境:Java 1.7.0_45、Eclipse Juno Service Release 2、Hadoop-1.2.1、hbase-0.94.20。1、 输入与输出1)输入文件file0.txt(WordCountHbaseWriter\input\fi转载 2015-12-14 14:36:15 · 354 阅读 · 0 评论 -
WordCount运行详解
1、MapReduce理论简介 1.1 MapReduce编程模型 MapReduce采用"分而治之"的思想,把对大规模数据集的操作,分发给一个主节点管理下的各个分节点共同完成,然后通过整合各个节点的中间结果,得到最终结果。简单地说,MapReduce就是"任务的分解与结果的汇总"。 在Hadoop中,用于执行MapReduce任务的机器角色有两个:一个是Job转载 2015-12-14 15:46:05 · 310 阅读 · 0 评论 -
WordCount程序详解
[html] view plaincopyprint?输入:hello hadoop [html] view plaincopyprint?hello word 下面是map函数[java] view plaincopyprint?import j转载 2015-12-14 16:25:05 · 579 阅读 · 0 评论 -
服务器负载均衡解决方案
一、需求分析随着互联网的高速发展,作为Web、Email、SQL、FTP、ERP、DNS、集群等等常见服务器的请求数据量越来越大,同时对应用的高可用性提出了更高的要求,服务器主备冗余模式已经不能满足当前需求,部署服务器负载均衡设备势在必得。作为应用交付行业内最为成熟的方案提供商F5,其产品技术先进,功能齐全,质量可靠已被世界上很多知名的企业选用,如Microsoft,Oracle,USA转载 2015-12-14 14:24:21 · 656 阅读 · 0 评论 -
hadoop job解决大数据量关联时数据倾斜的一种办法
数据倾斜是指,map /reduce程序执行时,reduce节点大部分执行完毕,但是有一个或者几个reduce节点运行很慢,导致整个程序的处理时间很长,这是因为某一个key的条数比其他key多很多(有时是百倍或者千倍之多),这条key所在的reduce节点所处理的数据量比其他节点就大很多,从而导致某几个节点迟迟运行不完。用hadoop程序进行数据关联时,常碰到数据倾斜的情况,这里提供一种解决方转载 2015-12-14 14:15:43 · 1607 阅读 · 0 评论 -
MapReduce操作HBase
运行HBase时常会遇到个错误,我就有这样的经历。 ERROR: org.apache.hadoop.hbase.MasterNotRunningException: Retried 7 times检查日志:org.apache.hadoop.ipc.RPC$VersionMismatch: Protocol org.apache.hadoop.hdfs.protocol.Clie转载 2015-12-14 14:34:49 · 410 阅读 · 0 评论 -
从Container内存监控限制到CPU使用率限制方案
前言最近在运维我们部门的hadoop集群时,发现了很多Job OOM的现象,因为在机器上可以用命令进行查看,full gc比较严重.我们都知道,full gc带来的后果是比较大的,会"stop the world"的,一旦你的full gc elapsed time超过几分钟,那么其他的活动都得暂停这么多时间.所以Full gc一旦出现并且异常,一定要找到根源并将其解决.本篇文章就为大家讲转载 2015-12-17 17:27:59 · 1495 阅读 · 0 评论 -
Hadoop关键任务Job资源隔离方案
前言在目前的Hadoop集群中,对于所有的用户Job来说,态度都是一致的,也就是说,"来者不拒",但是如果集群的平均Job运行数量上去的,就免不了会出现资源的滥用现象了,之前介绍过几篇相应的文章,不过主题都是偏向于监控问题的,并不是解决方案.比如说自定义Hive Sql Job分析工具,还有这篇文章Hadoop异常Task发现分析, 重新回到主题,一般如果一个稍微到了一定规模的程度时,转载 2015-12-17 17:30:50 · 1090 阅读 · 0 评论 -
HDFS数据资源使用量分析以及趋势预测
前言Hadoop系统作为一个比较成熟的分布式系统,他被人们常常定义为一个存储海量数据的地方,与MySQL这里传统的RDBMS数据库有着明显的不同。Hadoop拥有着他天然的优势,他可以存储PB级别的数据,只要你的机器够多,我就可以存那么多,而且帮你考虑了副本备份这样的机制,只能说,Hadoop这一整套体系真的很完善。说到Hadoop的海量数据存储量,每一天的数据增量可以基本达到TB级别,对转载 2015-12-17 17:35:51 · 1238 阅读 · 0 评论 -
HDFS源码分析(六)-----租约
前言任何系统即使做的再大,都会有可能出现各种各样的突发状况。尽管你可以说我在软件层面上已经做到所有情况的意外处理了,但是万一硬件出问题了或者说物理层面上出了问题,恐怕就不是多写几行代码能够立刻解决的吧,说了这么多,无非就是想强调HA,系统高可用性的重要性。在YARN中,NameNode的HA方式估计很多人都已经了解了,那本篇文章就来为大家梳理梳理RM资源管理器HA方面的知识,并不是指简单的转载 2015-12-17 17:46:54 · 300 阅读 · 0 评论 -
Partitioner分区过程分析
Partition的中文意思就是分区,分片的意思,这个阶段也是整个MapReduce过程的第三个阶段,就在Map任务的后面,他的作用就是使key分到通过一定的分区算法,分到固定的区域中,给不同的Reduce做处理,达到负载均衡的目的。他的执行过程其实就是发生在上篇文章提到的collect的过程阶段,当输入的key调用了用户的map函数时,中间结果就会被分区了。虽说这个过程看似不是很重要,但是也有值转载 2015-12-17 17:48:00 · 482 阅读 · 0 评论 -
YARN源码分析(二)-----ResourceManager中的NM节点管理
前言继上一篇文章讲述完ApplicationMaster的相关用法,核心主题都是围绕着2个字"应用",当然在RM中还有另外一项比较重要的服务也很重要,他就是节点管理服务,在RM中是如何维系管理多个节点,对于应用管理的话,在RM中已经有了ApplicationMasterService这个服务对象了,那么对应于节点NodeManager来说,难道叫做NodeManagerService吗,听转载 2015-12-17 17:33:09 · 1374 阅读 · 0 评论 -
HDFS源码分析(一)-----INode文件节点
前言在linux文件系统中,i-node节点一直是一个非常重要的设计,同样在HDFS中,也存在这样的一个类似的角色,不过他是一个全新的类,INode.class,后面的目录类等等都是他的子类。最近学习了部分HDFS的源码结构,就好好理一理这方面的知识,帮助大家更好的从深层次了解Hadoop分布式系统文件。HDFS文件相关的类设计在HDFS中与文件相关的类主要有这么几个转载 2015-12-17 17:38:51 · 1719 阅读 · 0 评论 -
dinfo-oec hadoop部署方案
Hadoop2.6整合hbase1.1.0分布式环境搭建环境准备 三台机器Linux机器,这里使用CentOS-6.5-x86_64: 192.168.1.120 master 192.168.1.121 slave1 192.168.1.122 slave2安装包准备 jdk-7u79-li原创 2016-06-21 09:37:24 · 1254 阅读 · 0 评论