Hadoop
文章平均质量分 77
中琦2513
天道酬勤
展开
-
如何精进大数据技术
前几天跟前58的技术委员会主席孙玄聊天,聊天过程中得知他想搞大数据课程,于是我们有了如下对话。问:根据你的观察,现在企业里面很多想搞大数据的工程师普遍有什么特点?孙老板:很多同学的大数据知识是东拼西凑的,看B站上的视频学了一点,项目当中用过一点,没有系统化,而且不深入,这些同学其实是做不了真正的大数据工程师的工作的。问:那你觉得如上的同学如果想要突破,有什么方式吗?孙老板:根据...原创 2020-03-27 12:05:33 · 2783 阅读 · 0 评论 -
MapReduce--3--常用计数器详解
In this post I would like to explain the meaning of the Hadoop counters (the ones which you can generally see after the job completion). I have been analyzing the starvation of long running jobs in原创 2017-10-20 12:37:28 · 47588 阅读 · 0 评论 -
MapReduce--6--求共同好友
MapReduce面试题1--求共同好友1、数据格式现有一份数据如下:A:B,C,D,F,E,OB:A,C,E,KC:F,A,D,ID:A,E,F,LE:B,C,D,M,LF:A,B,C,D,E,O,MG:A,C,D,E,FH:A,C,D,E,OI:A,OJ:B,OK:A,C,DL:D,E,FM:E,F,GO:A,H,I,J,K数据的格式以“:”分割成原创 2017-10-25 18:08:03 · 49279 阅读 · 3 评论 -
MapReduce--5--单词去重WordDistinctMR
MapReduce编程之单词去重在MR编程中,最典型的业务就是求sum,max,min,avg,distinct, group by 还有 join 等操作的实现了。事实上,无论是那种业务。 MapReduce的编程框架已经决定了要把mapper阶段计算出来的key-value会按照key做组划分。所以reduceTask当中的reduce方法,其实接收到的参数就是key相同的一组ke原创 2017-10-25 12:43:10 · 48701 阅读 · 2 评论 -
MapReduce之数据读取组件InputFormat原理解析
splits and records一个输入split就是一个由单个map来处理的输入块。每一个map只处理一个split。每个分片被切分成若干 records,每个record就是一个键/值对,map循环处理记录。split和record都是逻辑性概念。/** * InputSplit represents the data to be processed by an indivi原创 2017-10-25 08:08:15 · 46073 阅读 · 0 评论 -
MapReduce--4--Combiner做MapTask局部合并
MapReduce中的Combiner详解1、什么是CombinerCombiner是MapReduce程序中Mapper和Reducer之外的一种组件,它的作用是在maptask之后给maptask的结果进行局部汇总,以减轻reducetask的计算负载,减少网络传输2、Combiner的编写方式Combiner和Reducer一样,编写一个类,然原创 2017-10-23 17:49:54 · 46700 阅读 · 0 评论 -
MapReduce--2--MapReduce全局计数器
MapReduce的全局计数器1.1、介绍计数器是用来记录job的执行进度和状态的。它的作用可以理解为日志。我们可以在程序的某个位置插入计数器,记录数据或者进度的变化情况。 MapReduce 计数器(Counter)为我们提供一个窗口,用于观察 MapReduce Job 运行期的各种细节数据。对MapReduce性能调优很有帮助,MapReduce性能优化的评估大部分都原创 2017-10-23 13:29:17 · 48796 阅读 · 2 评论 -
Hadoop - YARN NodeManager 剖析
一 概述 NodeManager是运行在单个节点上的代理,它管理Hadoop集群中单个计算节点,功能包括与ResourceManager保持通信,管理Container的生命周期、监控每个Container的资源使用(内存、CPU等)情况、追踪节点健康状况、管理日志和不同应用程序用到的附属服务等。 NodeManager是YARN中单个节点的代理原创 2017-09-27 17:37:41 · 45894 阅读 · 0 评论 -
Hadoop - YARN ResourceManager 剖析
一概要 YARN采用了Maser/Slave结构,其中Master实现为ResourceManager,负责整个集群的资源管理与调度; Slave实现为NodeManager,负责单个节点的资源管理与任务启动。 ResourceManager是整个YARN集群中最重要的组件之一,它的设计直接决定了系统的可扩展性、可用性和容错原创 2017-09-27 17:41:27 · 46913 阅读 · 0 评论 -
MapReduce - 性能调优
Hadoop为用户作业提供了多种可配置的参数,以允许用户根据作业特点调整这些参数值使作业运行效率达到最优。一 应用程序编写规范1.设置Combiner 对于一大批MapReduce程序,如果可以设置一个Combiner,那么对于提高作业性能是十分有帮助的。Combiner可减少Map Task中间输出的结果,从而减少各个Reduce Task的原创 2017-09-27 17:31:59 · 45481 阅读 · 0 评论 -
Hadoop - MapReduce MRAppMaster-剖析
一 概述 MRv1主要由编程模型(MapReduce API)、资源管理与作业控制块(由JobTracker和TaskTracker组成)和数据处理引擎(由MapTask和ReduceTask组成)三部分组成。而YARN出现之后,资源管理模块则交由YARN实现,这样为了让MapReduce框架运行在YARN上,仅需要一个ApplicationMaster组件完成作业控制模原创 2017-09-27 17:29:30 · 45695 阅读 · 0 评论 -
MapReduce--7--求共同好友--改进版JobControl
在上一节MapReduce--6--求共同好友中,我们发现,一个需求得出解,需要有两个MapReduce程序,那么如果碰到类似的需要运行多个有依赖关系的Job时,我们可以使用JobControl这个工具类,来管理多个具有依赖关系的job的运行, 所以上一MapReduce案例,我做了如下改写:请看具体的代码实现:package com.ghgj.mazh.mapredu原创 2017-10-25 19:46:14 · 46602 阅读 · 0 评论 -
MapReduce--8--求互为好友的好友对
MapReduce面试题2--求互为好友的好友对1、数据格式A:B,C,D,F,E,OB:A,C,E,KC:F,A,D,ID:A,E,F,LE:B,C,D,M,LF:A,B,C,D,E,O,MG:A,C,D,E,FH:A,C,D,E,OI:A,OJ:B,OK:A,C,DL:D,E,FM:E,F,GO:A,H,I,J,K数据的格式以“:”分割成两部分,前面是用户,后原创 2017-10-25 18:52:03 · 48183 阅读 · 0 评论 -
MapReduce--9--求变动版本
MapReduce面试题3--求变动版本1、数据现在有如下一份数据:20170308,黄渤,光环斗地主,8,360手机助手,0.1版本,北京20170308,黄渤,光环斗地主,5,360手机助手,0.1版本,北京20170308,黄渤,光环斗地主,7,360手机助手,0.1版本,北京20170308,黄渤,光环斗地主,10,360手机助手,0.2版本,北京2017030原创 2017-10-25 19:53:53 · 46997 阅读 · 0 评论 -
MapReduce--13--学生成绩(增强版)--需求2
题目描述关于对于学生成绩相关的练习题,之前是一个入门级别的需求,现在对这些需求进行增强,首先看数据的改变:computer,huangxiaoming,85,86,41,75,93,42,85computer,xuzheng,54,52,86,91,42computer,huangbo,85,42,96,38english,zhaobenshan,54,52,86,91,42,85...原创 2019-06-17 21:46:08 · 13742 阅读 · 2 评论 -
MapReduce--14--学生成绩(增强版)--需求3
题目描述关于对于学生成绩相关的练习题,之前是一个入门级别的需求,现在对这些需求进行增强,首先看数据的改变:computer,huangxiaoming,85,86,41,75,93,42,85computer,xuzheng,54,52,86,91,42computer,huangbo,85,42,96,38english,zhaobenshan,54,52,86,91,42,85...原创 2019-06-18 10:25:30 · 14146 阅读 · 2 评论 -
MapReduce--12--学生成绩(增强版)--需求1
题目描述关于对于学生成绩相关的练习题,之前是一个入门级别的需求,现在对这些需求进行增强,首先看数据的改变:computer,huangxiaoming,85,86,41,75,93,42,85computer,xuzheng,54,52,86,91,42computer,huangbo,85,42,96,38english,zhaobenshan,54,52,86,91,42,85...原创 2019-06-17 21:28:11 · 14599 阅读 · 5 评论 -
Hadoop-3.x新特性
相对于之前主要生产发布版本Hadoop 2,Apache Hadoop 3整合许多重要的增强功能。 Hadoop 3是一个可用版本,提供了稳定性和高质量的API,可以用于实际的产品开发。下面简要介绍一下Hadoop3的主要变化。1、最低Java版本要求从Java7变为Java8所有Hadoop的jar都是基于Java 8运行是版本进行编译执行的,仍在使用Java 7或更低Java版本...原创 2019-04-12 10:18:35 · 15838 阅读 · 0 评论 -
谷歌三篇论文(GFS,MapReduce,BigTable)
Google引爆大数据时代的三篇论文谈到Hadoop的起源,就不得不提Google的三驾马车:Google FS、MapReduce、BigTable。虽然Google没有公布这三个产品的源码,但是他发布了这三个产品的详细设计论文,奠定了风靡全球的大数据算法的基础!一,GFS—-20032003年,Google发布Google File System论文,这是一个可扩展的分布式文件系统...原创 2019-03-21 10:35:55 · 22297 阅读 · 3 评论 -
HDFS的垃圾回收站
HDFS的垃圾回收站首先需要明白一点,现在linux系统好像没有回收站的说法了,所以在删除别人的文件或文件夹之前一定要慎重,毕竟rm命令是高危命令,删除了就没有了,所以对于高危命令,我们要保持敬畏之心.hdfs在部署的时候默认垃圾回收站是禁用的,因此hdfs是可以开启垃圾回收站的。先看看官网对回收站的解释:第一个参数:fs.trash.interval=0 表示禁用Number of...原创 2018-10-14 18:39:07 · 29733 阅读 · 0 评论 -
MapReduce编程模型
原创 2018-06-29 07:09:53 · 37785 阅读 · 0 评论 -
Hadoop发展编年史
2002年10月,Doug Cutting和Mike Cafarella创建了开源网页爬虫项目Nutch。2003年10月,Google发表Google File System论文。2004年7月,Doug Cutting和Mike Cafarella在Nutch中实现了类似GFS的功能,即后来HDFS的前身。2004年10月,Google发表了MapReduce论文。2005年2月,Mike C...原创 2018-05-06 16:38:03 · 41948 阅读 · 0 评论 -
Apache Hadoop 3.0.0 GA 版本终于发布
Apache Hadoop 3.0.0Apache Hadoop 3.0.0 incorporates a number of significant enhancements over the previous major release line (hadoop-2.x).This release is generally available (GA), meaning that it原创 2017-12-15 12:40:58 · 46039 阅读 · 0 评论 -
MapReduce编程案例系列篇(01-15)
由于本人最开始接触大数据工作,主要以写MapReduce程序为主,虽然现在有流行的言论称MapReduce这种运行很慢的分布式计算编程框架将要被各种内存计算框架取代。但是MapRedcue也会吸收很多流行的内存计算的各种优点,我相信,将来,MapReduce绝对不会沦落到要淘汰的地步。甚至会后来居上。在此,本人总结一篇关于MapReduce编程的各种典型应用场景编程案例,便于大家查阅学习...原创 2017-10-23 18:27:32 · 68971 阅读 · 10 评论 -
HDFS--机架感知
一、背景介绍Hadoop的设计目的:解决海量大文件的处理问题,主要指大数据的存储和计算问题,其中,HDFS解决数据的存储问题;MapReduce解决数据的计算问题 Hadoop的设计考虑:设计分布式的存储和计算解决方案架构在廉价的集群之上,所以,服务器节点出现宕机的情况是常态。数据的安全是重要考虑点。HDFS的核心设计思路就是对用户存进HDFS里的所有数据都做冗余备份,以此保证原创 2017-06-24 22:20:24 · 51422 阅读 · 8 评论 -
HDFS SnapShot原理
【简介】HDFS中可以对目录创建Snapshot,创建之后不管后续目录发生什么变化,都可以通过snapshot找回原来的文件和目录结构。为了启用这种功能,首先需要启用目标目录的snapshot功能,可以通过下面的命令来执行:hdfs dfsadmin -allowSnapshot 启用snapshot功能后,并不会自动进行snapshot保存,还需要先创建snapshot, 通过下面的原创 2017-03-26 20:42:36 · 49195 阅读 · 0 评论 -
MapReduce--1--入门程序WordCount
MapReduce界的helloworld程序就是WordCount程序以下是WordCount程序的业务逻辑图:下面是具体代码,基本都注释,只要对MapReduce稍微有所了解,都是能看得懂,如若看懂,可留言私聊、package com.ghgj.mazh.mapreduce.wc.demo1;import java.io.IOException;原创 2017-10-23 12:55:36 · 51171 阅读 · 1 评论 -
MapReduce--WordCount的另一种编写方式
MapReduce的默认编写及调用方式我们都知道,Hadoop是最早产生的用来解决大数据处理的开源框架。在不停的发展迭代过程中,现在的Hadoop已经发展成为具有四大核心组件的一个基础平台:1、HDFS:Hadoop的分布式文件系统2、MapReduce:分布式计算程序的编成框架3、YARN:资源调度系统/分布式的操作系统4、Common:Hadoop中的,以上三大组件的底层支原创 2017-10-28 14:51:07 · 45785 阅读 · 0 评论 -
hadoop 2.x常用端口及查看方法
hadoop 2.x常用端口及查看方法一、常用端口组件节点默认端口配置用途说明HDFSDataNode50010dfs.datanode.addressdatanode服务端口,用于数据传输HDFSDataNode50075dfs.datanode原创 2017-09-22 07:53:12 · 45589 阅读 · 0 评论 -
Hadoop生态系统
首先我们先了解一下Hadoop的起源。然后介绍一些关于Hadoop生态系统中的具体工具的使用方法。如:HDFS、MapReduce、Yarn、Zookeeper、Hive、HBase、Oozie、Mahout、Pig、Flume、Sqoop。Hadoop的起源Doug Cutting是Hadoop之父 ,起初他开创了一个开源软件Lucene(用Java语言编写,提供了全文检索引擎的原创 2017-10-09 12:50:16 · 45282 阅读 · 0 评论 -
《Hadoop Operations》读书笔记 - 4 - 第五章 安装与配置
安装 Hadoop有无数种办法可以安装 Hadoop,这里给出的只是最佳实践的建议。对于 tarball 安装来说,拥有很大的灵活性,但同样也带来了很多不确定性。作为管理员需要为其额外的创建用户,以及准备各种目录,配置各种目录的权限。如果不确定自己应该使用哪种安装方式,应该先从软件源或者 RPM/Deb 软件包安装开始。Hadoop 的运行不需要使用 root 权限。但是安装的时候,需原创 2017-06-03 17:39:20 · 45957 阅读 · 0 评论 -
《Hadoop Operations》读书笔记 - 3 - 第四章 规划集群
选择 Hadoop 发布以及版本计划部署 Hadoop 集群的第一件事情就是选择 Hadoop 的发布和版本。需要开发人员、分析师、以及BI类其他系统共同来决定。一般提到 Hadoop 往往除了 Hadoop 核心外,还会需要其生态圈的其它组成部分。所有这些组成部分必须要考虑到兼容性的问题,包括二进制兼容和API兼容。Apache Hadoop在 1.0 以前,Apache 很久才原创 2017-06-03 17:38:28 · 45987 阅读 · 0 评论 -
《Hadoop Operations》读书笔记 - 2 - 第三章 MapReduce
MapReduce,在这里实际上有两个含义,一个是一种分布式计算模型;另一个是某种特定实现,比如Apache Hadoop MapReduce。其设计目的是为了简化大规模、分布式、高容错性的数据处理应用的开发,目前MapReduce是首选方案。在MapReduce中,将任务拆分成了两部分,Map 函数和 Reduce 函数,开发人员只需要关注这二者实现即可,而底层构架则负责如何并行化、如何调度原创 2017-06-03 17:37:12 · 45484 阅读 · 0 评论 -
《Hadoop Operations》读书笔记 - 1 - 第二章 HDFS
传统存储是 SAN 或者 NAS,提供了集中化、低延时的块存储或者文件系统,以支持TB级数据。在面对关系型数据库之类的服务时,这是很好的选择。但是面对上万台计算机同时提取几百TB的数据时,这种集中型存储就难以胜任了。HDFS的设计目标存储上百万的大文件,每个文件都大于几十TB的数量级;使用普通服务器,横向扩展,不必使用RAID;针对大规模、流式读写进行优化,而不考虑低延时或者小文件。批原创 2017-06-03 17:36:20 · 45366 阅读 · 0 评论 -
HDFS架构设计
介绍HDFS是个分布式文件系统,包含几个特点(区别于普通分布式文件系统):高容错、高吞吐。高容错可以使得系统部署在廉价硬件上,而高吞吐则非常适合做大规模数据集的应用。假设和目标硬件失效硬件失效是常态而不是特例。一个HDFS集群可能包含了成百上千的服务器,每个都会存储文件系统的部分数据。而大量的组件就会导致组件出错的概率非常高,而这也意味着HDFS的部分组件会经常不工原创 2016-12-02 21:33:58 · 45990 阅读 · 0 评论 -
Hadoop源码解析之: TextInputFormat如何处理跨split的行
我们知道hadoop将数据给到map进行处理前会使用InputFormat对数据进行两方面的预处理: 对输入数据进行切分,生成一组split,一个split会分发给一个mapper进行处理。 针对每个split,再创建一个RecordReader读取Split内的数据,并按照的形式组织成一条record传给map函数进行处理。最常见的FormatInput就是TextInput原创 2017-10-05 17:55:19 · 45473 阅读 · 0 评论 -
HDFS的快照管理
前言新版本的HDFS集群出现了一些比较重大的特性,比如异构存储等, 今天介绍一个HDFS的重大特性-Snapshot。Snapshot就是快照的意思,Snapshot是一个非常好的东西,一个形象的比喻,快照就好像拍风景照时的那一个瞬间的投影,过了那个时间点之后,又会有新的一个瞬间投影。所以其实Snapshot快照用一个更好的词来形容就是”瞬间映像“。Snapshot快照概念原创 2017-10-19 08:38:34 · 45713 阅读 · 0 评论 -
面试题--精选Hadoop选择题
精选Hadoop选择题 1、下列哪个属性是hdfs-site.xml中的配置?A、dfs.replication B、fs.defaultFSC、mapreduce.framework.name D、yarn.resourcemanager.address解答:dfs.replication是HDFS集群的副本个数,一般放置在hdfs-site.xml 2、Had...原创 2017-10-26 09:07:42 · 85619 阅读 · 2 评论 -
IT十年--大数据系列讲解
个人觉得IT十年的大数据系列的博文非常干货。对于希望掌握整个大数据行业的技术栈的一个初步了解非常的有帮助,本人也是有事没事的上来看看。所以整理出来一个目录,放在自己的博客里,方便寻找学习。大数据(一) - hadoop生态系统及版本演化 大数据(二) - HDFS 大数据(三) - YARN 大数据(四) - MapReduce 大数据(五) - HBase 大数据(六) - ZooKeeper ...原创 2016-10-23 22:35:26 · 53030 阅读 · 0 评论