大数据
少年郎の洛亚
大数据
展开
-
MapReduce源码分析(二):MapTask和ReduceTask源码分析
MapRedeuce源码分析shuffle机制将Map写出的数据通过collect收集到环形缓冲区环形缓冲区默认100M,右边写的KV信息,左边写元数据写至80%,或完成任务后将溢写文件。溢写之前将缓冲区中的数据分区,并将缓冲区内的数据使用快排排序。‘如果使用combiner会将同一个MapTask生成的所有文件的根据分区使用归并排序进行合并。之后将文件压缩,写入磁盘reduceTask根据所需的分区主动copy磁盘数据,写入内存,内存不足的话写入磁盘对每个map来的数据归并排序并根据Ke原创 2020-08-14 20:00:24 · 191 阅读 · 0 评论 -
MapReduce源码分析(一):总过程及Job提交过程
MapRedeuce源码分析MapReduce总过程(一)待处理的文本(二)submit()提交前获取待处理信息,然后根据参数配置形成任务规划(三)提交信息(四)计算出MapTesk的数量(五)MapTesk默认使用TextInputFormat读取文本信息。默认使用RecorderReader读取K和V(六)使用Mapper根据需要读取K,V。Context.write(K,V)写出到收集器outputCollector中(七)收集器将KV向环形缓冲区写入数据(八)环形缓冲区满后,对其中原创 2020-08-13 16:48:50 · 127 阅读 · 0 评论 -
(三)HDFS中DataNode工作机制及数据节点服役和退役
第6章 DataNode(开发重点)6.1 DataNode工作机制(1)一个数据块在DataNode上以文件形式存储在磁盘上,包括两个文件,一个是数据本身,一个是元数据包括数据块的长度,块数据的校验和,以及时间戳。(2)DataNode启动后向NameNode注册,通过后,周期性(1小时)的向NameNode上报所有的块信息。(3)心跳是每3秒一次,心跳返回结果带有NameNode给该DataNode的命令如复制块数据到另一台机器,或删除某个数据块。如果超过10分钟没有收到某个DataNode的心原创 2020-08-11 09:52:29 · 360 阅读 · 0 评论 -
(二)HDFS,NameNode和SecondaryNameNode机制
第5章 NameNode和SecondaryNameNode5.1 NN和2NN工作机制思考:NameNode中的元数据是存储在哪里的?首先,我们做个假设,如果存储在NameNode节点的磁盘中,因为经常需要进行随机访问,还有响应客户请求,必然是效率过低。因此,元数据需要存放在内存中。但如果只存在内存中,一旦断电,元数据丢失,整个集群就无法工作了。因此产生在磁盘中备份元数据的FsImage。这样又会带来新的问题,当在内存中的元数据更新时,如果同时更新FsImage,就会导致效率过低,但如果不更新,就原创 2020-08-10 18:28:58 · 116 阅读 · 0 评论 -
(一)HDFS客户端开发和读写数据流程
第1章 HDFS概述略第2章 HDFS的Shell操作基本语法hadoop fs 具体命令 OR hdfs dfs 具体命令两个是完全相同的。常用命令实操1、启动Hadoop集群(方便后续的测试)[lu@hadoop102 hadoop-3.1.3]$ sbin/start-dfs.sh[lu@hadoop103 hadoop-3.1.3]$ sbin/start-yarn.sh2、-help:输出这个命令参数[lu@hadoop102 hadoop-3.1.3]$原创 2020-08-09 17:26:48 · 335 阅读 · 0 评论 -
hadoop完全分布式部署及相应脚本
一:模板机的配置1、必要的硬件和软件配置内存4G,硬盘50G,网段均为192.168.6.X保证Linux虚拟机可以联网1.虚拟网络编辑器种VMnet8中子网IP为192.168.6.X2.window系统中网络连接中VMnet8的IPv4为192.168.6.X3.vim /etc/sysconfig/network-scripts/ifcfg-ens33中添加静态IP为192.168.6.X安装必要环境[root@hadoop100 ~]# yum install -y epel-原创 2020-08-07 13:44:35 · 248 阅读 · 0 评论