![](https://img-blog.csdnimg.cn/20190325131232149.jpeg?x-oss-process=image/resize,m_fixed,h_224,w_224)
Hadoop核心技术
专注于hadoop生态系统如HDFS、MapReduce、Yarn。
二百四十九先森
这个作者很懒,什么都没留下…
展开
-
Azkaban:最受欢迎的工作流定时调度器
1、理论基础1、azkaban是什么? azkaban是一个工作流定时调度器,可以解决hadoop jobs的作业依赖问题,使相互依赖的job按顺序执行。2、azkaban的特点? a.兼容所有版本的hadoop。 这一点与oozie不同,oozie严格依赖hadoop的版本。 b.易于使用的web页面。 比oozie功能更强大,...原创 2019-12-02 17:37:33 · 847 阅读 · 0 评论 -
手把手教你复制黏贴式搭建企业级CDH平台
1、基础知识与节点规划1、cdh的部署形式有三种 bin在线部署 rpm包部署 要访问外网或者私服 tar包部署 这是真正意义上的离线部署 由于公司网路无法访问外网,所以一般我们就是使用第三种模式进行部署2、CDH离线部署的三个部分MySQL离线部署 建议MySQL5.7.11(疑问:mysql的版本以及安装方式对于cdh的部署是否有影响...原创 2019-11-19 23:51:40 · 316 阅读 · 0 评论 -
Hadoop中HDFS小文件产生场景及其处理方案
影响: 1、文件的元数据存储在namenode中,每个文件的元数据都差不多大,小文件过多会极大的占用namonode的内存,制约集群的扩展。(主要影响) 2、在对小文件进行处理的时候,一个小文件对应一个maptask,一个maptask会起一个jvm进程,进程的开启销毁会严重性能。(jvm复用)产生场景: 1、实时处理:比如我们使用 Spark Streaming...原创 2019-05-15 21:28:46 · 1279 阅读 · 0 评论 -
深入剖析HDFS架构设计
HDFS架构设计1、HDFS的三个进程 NameNode:接受客户端请求、管理hdfs、维护文件元信息和操作日志 DataNode:存储数据块和数据块校验和、通过水平复制使文件冗余度满足要求 SecondaryNameNode:对文件元信息(fsimage文件)和操作日志(edits文件)进行合并2、block大小和副本数b...原创 2017-12-19 11:20:40 · 923 阅读 · 0 评论 -
各种压缩格式对比及压缩在MapReduce各阶段的应用简录
1、压缩: 压缩是指以某种格式对文件进行归档操作 好处: 节省空间、减少I/O(磁盘I/O和网络I/O)、加快传输 缺点: 增加CPU负载,集群负载较高(会造成job堵塞)时不建议使用压缩 分类1: Lossless无损压缩:日志数据 Lossy有损压缩:图片、视频 分类2: ...原创 2018-03-02 08:07:21 · 664 阅读 · 0 评论 -
Hadoop-2.8.1源码编译【附相关软件】
hadoop源码编译的理由为什么要编译? 答:hadoop提供了很多组件的本地实现,来解决由于性能原因或者某些java类库的缺失造成的问题。 而这些组件保存在hadoop的本地库里,编译hadoop即是构建本地库的过程。 说人话就是,为经过编译的hadoop功能不完善,比如hadoop要支持压缩,就必须编译。1、准备工作1、cd /opt/sou...原创 2017-12-16 16:37:25 · 392 阅读 · 0 评论 -
Hadoop伪分布搭建
hadoop伪分布模式配置1、配置好网络,关闭iptables,关闭selinux。配置网络参考:Linux配置静态ip访问外网关闭防火墙: service iptables stop chkconfig iptables off关闭selinux: setenforce 0 vi /etc/selinux/config SELI...原创 2017-12-16 23:28:59 · 771 阅读 · 0 评论 -
Hadoop全分布搭建
以下步骤,除非特别说明,否则在四台机器上都要单独执行一次。1、架构角色分配Linux001: DataNode、NodeManagerLinux002: DataNode、NodeManagerLinux003: DataNode、NodeManagerLinux004: NameNode、SecondaryNameNode、ResourceManager2、配置好网络,关闭i...原创 2019-04-08 19:56:19 · 493 阅读 · 0 评论 -
深入剖析HDFS读写流程
一、读取数据流程1、原理图2、流程剖析a)客户端首先调用DistributedFileSystem对象的open方法,去和namenode建立rpc通信,请求namenode返回文件的元信息。b)namenode得到请求,会在内存中寻找文件元信息。找到后给客户端返回部分(读取文件较大)或全部的block列表,即FSDataInputStream对象。c)客户端调用F...原创 2019-04-11 16:56:07 · 232 阅读 · 0 评论 -
彻底解惑MapReduce核心shuffle的执行流程及MapReducer调优
以处理text文件为例map端map端: 1、MRApplicationMaster启动maptask,并分配其一个编号,maptask根据编号寻找对应的存储文件位 置信息及切片长度的数据切片,默认数据切片对应的文件大小与blocksize大小一致。然后maptask 再根据数据切片寻找对应数据文件信息。然后maptask会通 org....原创 2019-04-14 17:02:17 · 296 阅读 · 0 评论 -
Zookeeper的搭建及Zookeeper实现Hadoop的HA
以下步骤,除非特别说明,否则在四台机器上都要单独执行一次。1、架构角色分配Linux001: DataNode、NodeManager、Linux002: DataNode、NodeManager、JournalNode、QuorumPeermainLinux003: NameNode(备)、ResourceManager(备)、ZKFC、JournalNode、QuorumPeer...原创 2018-02-21 13:07:46 · 2091 阅读 · 0 评论 -
所有HDFS磁盘数据存储不均情况的终极处理方案
一、多节点存储不均1、现有多节点存储不均:1、先设置带宽 hdfs dfs -setBalancerBandwith 字节数2、然后执行脚本start-balancer.sh -threshold n 或者 hdfs balancer -threshold n说明: 第1步: 设置的带宽为datanode间平衡数据时消耗的最大带宽,默认值为10...原创 2017-12-23 21:38:50 · 1307 阅读 · 0 评论 -
HDFS的基本命令、命令应用及HDFS的高级功能
1、HDFS基本命令 1、hdfs dfs VS hadoop fs 两者是等价的。 验证: cat /opt/apps/hadoop-2.6.5/bin/hdfs elif [ "$COMMAND" = "dfs" ] ; then CLASS=org.apache.hadoop.fs.FsShell...原创 2018-03-03 08:07:39 · 631 阅读 · 0 评论 -
解决hdfs命令报错:WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... usi
今天在集群上执行hdfs命令时,总是出现这样的报错信息19/04/06 22:03:55 WARN util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable更改日志级别export HADO...原创 2019-04-06 16:09:47 · 5123 阅读 · 4 评论 -
Hadoop大数据面试题
1、hadoop操作命令mv 对比copy?mv 性能更高,copy会改变时间属性,mv不会。2、操作HDFS有哪几种方式?JAVA API 、Web UI 、Shell3、MR的执行流程(yarn的工作流程、作业执行过程)?客户端提交一个作业,ResourceManager为该作业分配第一个Container,并与对应的NodeManager通信,要求NodeMa...原创 2018-06-02 13:03:10 · 1295 阅读 · 0 评论 -
详解hadoop1.x和hadoop2.x的区别及补充hadoop3.x新特性
hadoop1.x和hadoop2.x的主要区别在于: 1、hadoop1.x没有提供架构中主节点namenode及jobtrack的高可用及负载均机制。而在hadoop2.x中有。 2、第二个区别就体现在mapreduce的架构设计上,hadoop1.x中mapreduce兼具计算和资源调度两个作用, 而在hadoop2.x中则将mapreduce中的资源调度功能...原创 2017-12-24 22:31:37 · 3956 阅读 · 0 评论 -
jps查看集群进程报错:7211 - - process imformation unavailable
在Linux下执行 jps 是快速查看Java程序进程的命令,一般情况下hadoop,hbase,storm等进程都是通过jps查看。有些时候因为进程没有被正常结束,比如资源占用过大时挂掉或者没有结束进程就直接重启计算机,会导致原有进程变为-- process information unavailable这样的空值,有时候不用管它,一段时间后会自动消失。如果一直不...原创 2019-04-11 21:05:28 · 215 阅读 · 0 评论 -
补充MapReduce编程模型及JAVA简单实现WordCount
MapRedu编程模型MR编程模型: 1、map的输出就是reduce的输入。 2、所有的输入和输出都是键值对形式: <k1,v1>:map输入,来自hdfs,k1为每行数据偏移量,v1为该行数据 <k2,v2>:map输出 <k3,v3>:reduce输入,k2==k3,v3是集合,元素为...原创 2018-06-02 10:43:57 · 471 阅读 · 0 评论 -
Hadoop的资源调器-----Yarn的优化
理论基础1、概述 一般说yarn的调优,就是指Container的调优,而Container是运行在NM节点上的,而在NM的节点,一般还运行着DN进程(数据本地化),DN+NM两进程不可占据节点的全部内存,一般在75%~85%(不考虑hbase)之间比较合适,对于一台64G内存的机器,生产上可使得DN+NM=54G,DN=4G,NM=50G。 ####hbase内存一般和...原创 2018-06-02 23:33:52 · 3446 阅读 · 0 评论 -
【调优经典】YARN and MapReduce的内存优化配置详解
在Hadoop2.x中, YARN负责管理MapReduce中的资源(内存, CPU等)并且将其打包成Container。使之专注于其擅长的数据处理任务, 将无需考虑资源调度. 如下图所示YARN会管理集群中所有机器的可用计算资源. 基于这些资源YARN会调度应用(比如MapReduce)发来的资源请求, 然后YARN会通过分配Container来给每个应用提供处理能力,...转载 2017-12-24 17:01:12 · 435 阅读 · 0 评论 -
【调优经典】Yarn的Memory和CPU调优配置详解
Hadoop YARN同时支持内存和CPU两种资源的调度,本文介绍如何配置YARN对内存和CPU的使用。YARN作为一个资源调度器,应该考虑到集群里面每一台机子的计算资源,然后根据application申请的资源进行分配Container。Container是YARN里面资源分配的基本单位,具有一定的内存以及CPU资源。在YARN集群中,平衡内存、CPU、磁盘的资源的很重要的,根据经...转载 2017-12-24 16:56:46 · 1635 阅读 · 0 评论 -
生产常用yarn命令集锦
原文链接:http://www.aboutyun.com/thread-14930-1-1.html问题导读1.对于Hadoop集群用户有哪些有用的命令?2.打印需要得到Hadoop的jar和所需要的lib包路径使用的什么命令?3.对hadoop集群的管理员有哪些很有用的命令?概述YARN命令是调用bin/yarn脚本文件,如果运行yarn脚本没有带任何参数,则会打印yarn所有命令的描述...转载 2018-06-02 13:02:04 · 8134 阅读 · 0 评论 -
【调优经典】Map和Reduce 个数的设定 经典
一、 控制hive任务中的map数:1. 通常情况下,作业会通过input的目录产生一个或者多个map任务。主要的决定因素有: input的文件总个数,input的文件大小,集群设置的文件块大小(目前为128M, 可在hive中通过set dfs.block.size;命令查看到,该参数不能自定义修改);2. 举例:a) 假设input目录下有1个文...转载 2018-06-02 09:38:07 · 4103 阅读 · 1 评论 -
Hadoop yarn任务调度策略介绍
本文将介绍HadoopYARN提供的三种任务调度策略:FIFO Scheduler,Capacity Scheduler 和 Fair Scheduler。1、FIFO Scheduler 顾名思义,这就是先进先出(first in, first out)调度策略,所有的application将按照提交的顺序来执行,这些 application 都放在一个队列里,只有在...转载 2017-12-22 22:12:40 · 712 阅读 · 0 评论 -
Hadoop小文件优化
本文个人总结 先来了解一下Hadoop中何为小文件:小文件指的是那些文件大小要比HDFS的块大小(在Hadoop1.x的时候默认块大小64M,可以通过dfs.blocksize来设置;但是到了Hadoop 2.x的时候默认块大小为128MB了,可以通过dfs.block.size设置)小的多的文件。如果在HDFS中存储小文件,那么在HDFS中肯定会含有许许多多这样的小文件...转载 2018-04-01 09:38:46 · 1624 阅读 · 0 评论 -
Spark on Yarn 和MapReduce on Yarn对比
Apache Spark的高性能一定程度上取决于它采用的异步并发模型(这里指server/driver端采用的模型),这与Hadoop 2.0(包括YARN和MapReduce)是一致的。Hadoop 2.0自己实现了类似Actor的异步并发模型,实现方式是epoll+状态机,而Apache Spark则直接采用了开源软件Akka,该软件实现了Actor模型,性能非常高。尽管二...转载 2018-06-05 21:17:19 · 288 阅读 · 0 评论