
大数据hadoop
williamccc
愿你历尽千帆,归来仍是少年
展开
-
Hadoop调度器
Hadoop调度器目前,Hadoop作业调度器主要有三种:FIFO、Capacity Scheduler和Fair Scheduler。Hadoop3.1.3默认的资源调度器是Capacity Scheduler。具体设置详见:yarn-default.xml文件<property> <description>The class to use as the resource scheduler.</description> <name>原创 2020-08-14 21:30:46 · 423 阅读 · 0 评论 -
Yarn工作机制
Yarn工作机制MR程序提交到客户端所在的节点。YarnRunner向ResourceManager申请一个Application。RM将该应用程序的资源路径返回给YarnRunner。该程序将运行所需资源提交到HDFS上。程序资源提交完毕后,申请运行mrAppMaster。RM将用户的请求初始化成一个Task。其中一个NodeManager领取到Task任务。该NodeManager创建容器Container,并产生MRAppmaster。Container从HDFS上拷贝资源到本地原创 2020-08-14 21:16:53 · 265 阅读 · 0 评论 -
MapReduce压缩参数配置
MapReduce压缩参数配置要在Hadoop中启用压缩,可以配置如下参数:CompressionCodec有两个方法可以用于轻松地压缩或解压缩数据。要想对正在被写入一个输出流的数据进行压缩,我们可以使用createOutputStream(OutputStreamout)方法创建一个CompressionOutputStream,将其以压缩格式写入底层的流。相反,要想对从输入流读取而来的数据进行解压缩,则调用createInputStream(InputStreamin)函数,从而获得一个Co原创 2020-08-14 21:00:09 · 644 阅读 · 0 评论 -
MapReduce常用的调优参数
MapReduce常用的调优参数资源相关参数(1)以下参数是在用户自己的MR应用程序中配置就可以生效(mapred-default.xml)配置参数参数说明mapreduce.map.memory.mb一个MapTask可使用的资源上限(单位:MB),默认为1024。如果MapTask实际使用的资源量超过该值,则会被强制杀死。mapreduce.reduce.memory.mb一个ReduceTask可使用的资源上限(单位:MB),默认为1024。如果ReduceTask原创 2020-08-14 20:59:35 · 981 阅读 · 0 评论 -
压缩策略和原则
压缩策略和原则压缩是提高Hadoop运行效率的一种优化策略。通过对Mapper**、Reducer运行过程的数据进行压缩,以减少磁盘IO**,提高MR程序运行速度。注意:采用压缩技术减少了磁盘IO,但同时增加了CPU运算负担。所以,压缩特性运用得当能提高性能,但运用不当也可能降低性能。压缩基本原则:(1)运算密集型的job,少用压缩(2)IO密集型的job,多用压缩MR支持的压缩编码压缩格式hadoop自带?算法文件扩展名是否可切分换成压缩格式后,原来的程序是否需要修改原创 2020-08-14 20:58:58 · 915 阅读 · 0 评论 -
ReduceTask 工作机制
ReduceTask 工作机制概述:ReduceTask 分了四个阶段,第一阶段是copy阶段,每一个ReduceTask会从所有的MapTask中拷贝同一个分区的数据,就是说每一个ReduceTask单独负责处理一个分区,互不影响。第二阶段是Merge阶段,首先我们假如有多个MapTask,每个MapTask都有相同的分区,ReduceTask要将所有相同分区的资料合并成一个大文件。这就是Merge阶段,将所有MapTask输出的文件,相同分区,合并成一个大文件。也就是说一个ReduceTask都要原创 2020-08-12 13:11:09 · 1032 阅读 · 0 评论 -
MapTask的工作机制
MapTask的工作机制注意: Mapper() 方法是我们自己实现的一个类,运行再MapTask之中。MapTask 主要包含四个阶段: ①Read阶段 ②Map阶段 ③Collect阶段 ④溢写阶段 ⑤Merge阶段MapTask工作流程简述:Job提交阶段首先客户端回对我们提交的文件进行逻辑上的切片, 切片的大小是默认数据块的大小 (Yarn模式是128M,本地模式是32M)。 当切片完成以后,客户端会向MrAppliactionMaster提交信息,如果是Yarn模式的话会原创 2020-08-12 13:09:00 · 1376 阅读 · 0 评论 -
1.分区(Partition) 和 ReduceTask
1.MapReduce之分区(Partition)分区的意思就是,按照条件输出到不同文件中(分区)。比如统计居民身份信息,每10年设置一个分区。这时我们就需要,写一个类去继承我们 partitioner<xxxx, xxxx> 类, 这个类中有两个泛型参数。这里需要理解的是,这两个参数是来自我们自定义 Map 方法的输出。2.自定义Partition步骤自定义分区,也就是说我们可以规定: 1. 数据如何分区 2.分几个区(1)自定义类继承Partitioner,重写getPart原创 2020-08-11 19:21:29 · 939 阅读 · 0 评论 -
MapReduce框架原理之切片和任务提交md
MapReduce框架原理1.MapReduce的数据流在了解File再如何进入到Mapper之前,我们首先需要了解一个概念:切片。因为切片的数量决定了MapTask的并行度,简单的说就是切片的数量决定了MapTask的数量,一个MapTask会对应一个切片。2.切片与MapTask并行度决定机制首先切片是什么呢?**数据块:**Block是HDFS物理上把数据分成一块一块。数据块是HDFS存储数据单位。**数据切片:**数据切片只是在逻辑上对输入进行分片,并不会在磁盘上将其切分成片进行存储。原创 2020-08-10 20:52:17 · 297 阅读 · 0 评论 -
如何再hadoop集群上跑我们自己写MapReduce程序
如何再hadoop集群上跑我们自己写MapReduce程序1.首先我们要将想要被执行的文件放到HDFS上去,例如我在hadoop102:9870 / 路径下创建了一个input文件下 放入我们需要被执行的文件 word.txt将我们再 idea上写的wordcount打包,并且把这个包上传到 linux 上去,然后鼠标右击 driver类,选择copy reference再linux 下找到导入了自己编写的 MapperReducer.jar 包输入指令hadoop jar M原创 2020-08-10 18:22:20 · 523 阅读 · 0 评论 -
Hadoop之MapReduce
MapReduce的概述MapReduce 是一个分布式运算程序的编程框架,是用户开发基于Hadoop的数据分析应用的核心框架。MapReduce核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发的运行的在一个Hadoop集群上MapReduce的优缺点1.优点 1)MapReduce 易于编程,它简单的实现一些接口,就可以完成一个分布式程序,这个分布式程序可以再大量的廉价的PC机器上运行。 2)良好的拓展性:当计算资源不能满足需求的时候,可以通过简单的增加原创 2020-08-10 09:06:02 · 123 阅读 · 0 评论 -
NameNode (NN) 和 SecondayNameNode (2NN) 的工作机制
NameNode (NN) 和 SecondayNameNode (2NN) 的工作机制首先,我们需要思考NameNode中的元数据是存储在什么中?是内存中还是磁盘中呢?显然如果只存在内存中的话,一旦断电,元素据就丢失了,整个集群就无法工作。如果存在NN节点的磁盘中话,因为需要进行随机访问,还要响应客户请求,效率必然会很低。因此元数据在内存上工作的同时,会在磁盘中备份元数据的一个镜像 FsImage,这样既能保证高效的工作,又能保证数据的安全。但是这样的话又会带来新的问题,我们不妨想象一下内存中的元数据如原创 2020-08-09 17:44:28 · 409 阅读 · 0 评论 -
HFDS的数据写入流程
1.HFDS的数据写入流程的基本参数首先了解数据写入过程中,什么是block, packet, chunk1.block:数据块,当上传的文件太大时, 就需要分块,一个块默认设置时128M, 在客户端完成切割操作。数据块block也不是一次性传送到 DataNode中,在客户端向DataNode传送数据文件时,是分成一个一个的packet的每个packet默认64KB。所以从客户端到第一个结点,第一个结点到第二结点… , 数据传输是串联的,以一个个packet的形式流动。chunk是client向D原创 2020-08-09 10:55:04 · 1237 阅读 · 3 评论 -
Hadoop集群的搭建
Hadoop集群的搭建MapReduce 是多进程Spark 是多线程1.Hadoop是什么 1)Hadoop是一个由Apache基金会所开发分布式系统基础架构 2)主要解决,海量数据的存储和海量数据的分析计算问题 3)广义上来说,Hadoop通常是指一个更广泛的概念——Hadoop生态圈2.Hadoop 组成 1)Common 辅助工具 2)HDFS 数据储存 3)Yarn 资源调度 4)MapReduce 计算3.HDFS 架构概述 1)NameNode (NN原创 2020-08-07 19:47:49 · 276 阅读 · 0 评论