自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

安歌Object

不要因为走得太久,就忘记了出发的目的

  • 博客(18)
  • 收藏
  • 关注

原创 MapReduse框架原理—Shuffle机制

Shuffle机制  Mapreduce确保每个reducer的输入都是按key排序的。系统执行排序的过程(即将mapper输出作为输入传给reducer)称为shuffle,如图。 Partition分区  问题引出:要求将统计结果按照条件输出到不同文件中(分区)。   比如:将统计结果按照手机归属地不同省份输出到不同文件中(分区)。1.默认partition分区...

2018-09-08 17:00:46 603

原创 MapReduce框架原理—MapTask工作机制

并行度决定机制1.问题引出  maptask的并行度决定map阶段的任务处理并发度,进而影响到整个job的处理速度。那么,mapTask并行任务是否越多越好呢?2.MapTask并行度决定机制  一个job的map阶段MapTask并行度(个数),由客户端提交job时的切片个数决定,如图。 MapTask工作机制MapTask工作机制如图各个阶...

2018-09-08 16:38:03 347

原创 MapReduce框架原理—InputFormat数据输入(源码详解+实现类+切片机制+案例操作)

一、Job提交流程和切片源码详解1.job提交流程源码详解,如代码下图waitForCompletion()submit();// 1建立连接 connect(); // 1)创建提交job的代理 new Cluster(getConfiguration()); // (1)判断是本地yarn还是远程 ...

2018-08-21 03:06:56 645

原创 MapReduce框架原理—MapReduce工作流程

1.流程示意图,如图 2.流程详解  上面的流程是整个mapreduce最全工作流程,但是shuffle过程只是从第7步开始到第16步结束,具体shuffle过程详解,如下:1)maptask收集我们的map()方法输出的kv对,放到内存缓冲区中2)从内存缓冲区不断溢出本地磁盘文件,可能会溢出多个文件3)多个溢出文件会被合并成大的溢出文件4)在溢出过程中,及合并的过程中...

2018-08-18 14:40:10 476

原创 (HDFS)MapReduce核心思想+进程+编程规范+WordCount案例

聊聊MapReduce  Mapreduce是一个分布式运算程序的编程框架,是用户开发“基于hadoop的数据分析应用”的核心框架。   Mapreduce核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个hadoop集群上。MapReduce核心思想MapReduce核心编程思想,如图 1)分布式的运算程序往往需要分成至少2个阶段。...

2018-08-15 21:27:31 570

原创 (Hdoop)HDFS—HA高可用详解

一、HA概述1)所谓HA(high available),即高可用(7*24小时不中断服务)。2)实现高可用最关键的策略是消除单点故障。HA严格来说应该分成各个组件的HA 机制:HDFS的HA和YARN的HA。3)Hadoop2.0之前,在HDFS集群中NameNode存在单点故障(SPOF)。4)NameNode主要在以下两个方面影响HDFS集群NameNode机器发生意外,如...

2018-08-15 19:56:36 8729 4

原创 DataNode详解

一、DataNode工作机制DataNode工作机制,如图3 1)一个数据块在DataNode上以文件形式存储在磁盘上,包括两个文件,一个是数据本身,一个是元数据包括数据块的长度,块数据的校验和,以及时间戳。 2)DataNode启动后向NameNode注册,通过后,周期性(1小时)的向NameNode上报所有的块信息。 3)心跳是每3秒一次,心跳返回结果带有NameNode给该Da...

2018-08-15 08:52:33 2447

原创 NameNode和SecondaryNameNode详解

一、NN和2NN工作机制NN和2NN工作机制,如图 1.第一阶段:NameNode启动(1)第一次启动NameNode格式化后,创建fsimage和edits文件。 如果不是第一次启动,直接加载编辑日志和镜像文件到内存。(2)客户端对元数据进行增删改的请求。(3)NameNode记录操作日志,更新滚动日志。(4)NameNode在内存中对数据进行增删改查。2....

2018-08-14 21:19:00 15395 1

原创 HDFS的数据流—HDFS写数据流程和HDFS读数据流程

HDFS写数据流程一、剖析文件写入HDFS写数据流程,如图 1)客户端通过Distributed FileSystem模块向NameNode请求上传文件,NameNode检查目标文件是否已存在,父目录是否存在。2)NameNode返回是否可以上传。3)客户端请求第一个 block上传到哪几个datanode服务器上。4)NameNode返回3个datanode节点,分别为...

2018-08-14 20:44:22 1113

原创 HDFS客户端操作

HDFS客户端环境准备1.根据自己电脑的操作系统拷贝对应的编译后的hadoop jar包到非中文路径(例如:D:\Develop\hadoop-2.7.2) 2.配置HADOOP_HOME环境变量,如图 3. 配置Path环境变量,如图 4.创建一个Maven工程,如:HdfsClientDemo 5.导入相应的依赖坐标+日志添加<dependencies>...

2018-08-14 20:20:10 551

原创 Hadoop集群搭建(详细步骤)—完全分布式运行模式

分析:1)准备3台客户机(关闭防火墙、静态ip、主机名称)2)安装jdk3)配置环境变量4)安装hadoop5)配置环境变量6)配置集群7)单点启动8)配置ssh9)群起并测试集群一、虚拟机准备详见: Hadoop运行环境搭建(含Linux网络配置和系统管理操作) https://blog.csdn.net/weixin_37838429/artic...

2018-08-11 15:40:16 7750 3

原创 Hadoop运行模式—伪分布式运行模式

一、启动HDFS并运行MapReduce程序1.分析 (1)配置集群 (2)启动、测试集群增、删、查 (3)执行wordcount案例 2.执行步骤 (1)配置集群  (a)配置:hadoop-env.sh   Linux系统中获取jdk的安装路径:[admin@ hadoop101 ~]# echo $JAVA_HOME/o...

2018-08-10 21:29:40 387

原创 Hadoop运行模式—本地运行模式

一、官方grep案例 1.创建在hadoop-2.7.2文件下面创建一个input文件夹[admin@hadoop101 hadoop-2.7.2]$ mkdir input 2.将hadoop的xml配置文件复制到input[admin@hadoop101 hadoop-2.7.2]$ cp etc/hadoop/*.xml input 3.执行share目录下的mapred...

2018-08-10 21:04:09 758

原创 Hadoop运行环境搭建(含Linux网络配置和系统管理操作)

虚拟机环境准备1. 克隆虚拟机 2. 修改克隆虚拟机的静态ip修改IP地址,如图[root@hadoop100 桌面]#vim /etc/sysconfig/network-scripts/ifcfg-eth0下图红框选中的项必须修改,有值的按照下面的值修改,没有该项的要增加。DEVICE=eth0 #接口名(设...

2018-08-10 20:05:38 2540

原创 HBase优化

高可用  在HBase中Hmaster负责监控RegionServer的生命周期,均衡RegionServer的负载,如果Hmaster挂掉了,那么整个HBase集群将陷入不健康的状态,并且此时的工作状态并不会维持太久。所以HBase支持对Hmaster的高可用配置。 1.关闭HBase集群(如果没有开启则跳过此步)[admin@hadoop2 hbase]$ bin/sto...

2018-08-10 12:04:35 121

原创 Hadoop(HDFS)的Shell操作

一、基本语法bin/hadoop fs 具体命令二、命令大全[admin@hadoop2 hadoop-2.7.2]$ bin/hadoop fs[-appendToFile <localsrc> ... <dst>] [-cat [-ignoreCrc] <src> ...] [-checksum <s...

2018-08-09 17:33:30 189

原创 Linux常见问题

1、明明bios已经调成 虚拟化支持了 但是安装64位版本的时候依然提示不支持64位 或者 提示没有打开虚拟化支持 解决: 换vm10的版本, 换32位的linux安装。2、vmware tools 安装不成功或者安装完毕后没有效果。 再次安装,则提示系统已安装。 解决:删除/etc/vmware-tools/* 在任意目录下 删除 rm -...

2018-08-09 16:36:54 122

原创 Linux_Shell编程

概述  Shell是一个命令行解释器,它为用户提供了一个向Linux内核发送请求以便运行程序的界面系统级程序,用户可以用Shell来启动、挂起、停止甚至是编写一些程序。   Shell还是一个功能相当强大的编程语言,易编写、易调试、灵活性强。Shell是解释执行的脚本语言,在Shell中可以调用Linux系统命令。Shell脚本的helloworld脚本格式 (1)脚本以#!/b...

2018-08-09 15:12:11 212

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除