自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 ZooKeeper

zookeeper简介直译:动物园的管理者管理的是hadoop生态圈。本质也是一个资源调度器为什么是动物园:hadoop(大象),hive(蜜蜂),hbase(鲸鱼),flink(松鼠)……与yarn的区别?yarn管理的是某个集群的资源调度zookeeper管理的整个hadoop生态圈的资源调度(跨集群)zookeeper = 文件系统 + 监听同步机制文件系统:一个小型的文件系统,存放的是大家都关心的数据。监听同步机制:​ 所有的节点都在监听大家都关心的数据,其中任何一个节点监测到数

2021-04-12 08:51:53 414

原创 Yarn组件专题

Yarn概述Yarn是Hadoop的第三个组件,是一个资源调度器资源:软件资源、硬件资源从另一个角度分析,Yarn可以看做是一个操作系统操作系统:只对当前计算机提供管理服务,与其他机器无关Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而mapreduce等运算程序则相当于运行于操作系统之上的应用程序。重要概念Yarn并不清楚用户提交的程序的运行机制Yarn只提供运算资源的调度(用户程序向Yarn申请资源,Yarn就负责分配资源)Yarn运行

2021-04-12 08:51:22 98

原创 MapReduce的输入输出格式

InputFormatTextInputFile最普通的文本文档格式,MR中默认的 InputFormat,不需要特殊指定每条记录是一行输入。键是LongWritable 类型,存储该行在整个文件中的字节偏移量。 值是这行的内容,不包括任何行终止符(换行符合回车符),它被打包成一个 Text 对象。SequenceFileInputFormat序列化文件格式,文件中两个字段,分别代表key和value。KEYIN VALUEIN (根据文件字段的实际类型确定)KeyValueFileInput

2021-04-12 08:50:51 1327

原创 MapReduce并行度

并行度一个任务同时由人执行的数量reduce和map的并行度没有任何数量关系reduce端的并行度reducetask默认值是1,可以通过 job.setNumReduceTasks(n) 设置n就是reduce的并行度,每个节点都可以执行0-n个reduceTask注意:reducetask=0,表示没有reduce阶段,输出文件个数和map个数一致。reducetask默认值就是1,所以输出文件个数为一个。如果数据分布不均匀,就有可能在reduce阶段产生数据倾斜re

2021-04-12 08:50:26 477

原创 MapReduce的Join业务

Join业务专题join在数据库中表示表连接在MapReduce中表示对两份数据data1和data2进行关键词连接(Join),连接不同类型文件的数据案例​ 原数据:​ commodity -> 02 小米手机​ order -> 001 02 10​ 需求:​ 001 02 小米手机 10利用Reducer实现Join操作思想比较中规中矩,但是代码比较复杂。把处理逻辑的核心放在reduce端1)原理分析:​ Map端的主要工作:为来自不同表(文件)的key/

2021-04-12 08:49:58 66

原创 MapReduce排序专题

部分排序MapReduce 根据输入记录的键对数据集排序。保证在结果文件中,每个文件内的数据有序,但是全局文件无序。MapReduce中正常执行的代码都是部分排序。全排序对于所有结果文件,不仅每个文件内部有序,同时全局有序。实现方式:按照逻辑有顺序的自定义分区规则把reduce数量设置为1(处理大型文件时效率极低)如果数据中某部分数据特别集中,分区的标准很难确定,就会造成reduce端计算数据倾斜问题,导致计算时间过程。解决方法 3通过随机抽样的方式获取自定义分区的临界点

2021-04-12 08:49:27 140

原创 MapReduce的Shuffle过程

认识Shufflemap task:map端可以执行的一个进程reduce task:reduce端可以执行的一个进程shuffle是介于maptask和reducetask之间的一个过程shuffle可以分为map端的shuffle和reduce端的shufflemapreduce中,map阶段处理的数据如何传递给reduce阶段,是mapreduce框架中最关键的一个流程,这个流程就叫shuffle具体来说:就是将map task输出的处理结果数据,分发给reduce task,并在分发的过

2021-04-12 08:48:56 4492

原创 MapReduce的Writable序列化机制

什么是序列化序列化:​ 把内存中的对象以字节数组的形式写入磁盘的过程反序列化:​ 把磁盘中的字节数组读到内存中为什么不用Java的序列化机制Java 的序列化是一个重量级序列化框架( Serializable),一个对象被序列化后,会附带很多额外的信息(各种校验信息, header,继承体系等),不便于在网络中高效传输。在Java中处理的数据量不是很大,没有问题。如果数据量达到海量数据的级别,不适合使用java本身的序列化Hadoop中的序列化在Java的基础上进行改进,形成了自己的轻

2021-04-12 08:48:09 258

原创 MapReduce简介

MapReduce:是hadoop中的一个非常重要的组件,解决海量数据怎么计算的问题的组件由来:谷歌论文 Map-ReduceMapReduce到底是什么东西从论文的角度分析:是一种思想从技术的角度分析:是分布式计算框架框架软件框架(software framework),通常指的是为了实现某个业界标准或完成特定基本任务的软件组件规范,也指为了实现某个软件组件规范时,提供规范所要求之基础功能的软件产品。规范思想上的规范map:最小化数据单元,并以键值对的形式传递到下一阶段。

2021-04-11 17:45:53 197

原创 HDFS零散知识点

集群间数据拷贝cp:本地之间的内容复制scp:远程复制,跨节点之间的数据复制不管数据是否一致,都复制一遍,比较浪费资源rsync:远程同步,跨节点之间的数据同步两个节点之间相同目录下,不一样的数据进行同步,节省资源hdfs dfs -cp:在同一个集群之间进行数据的复制distcp:跨集群的远程复制语法:hadoop distcp <srcurl> <desturl>注意:没有远程本地之分,都属于远程,路径必须写hdfs://ip:po

2021-04-11 17:43:59 80

原创 DataNode工作原理

DataNode工作机制DN在启动的时候,向NN注册自己。如果没有注册成功的,直接认定不可用。NN接收注册,把DN的数据信息记录下来,反馈回去(注册成功)DN每隔3秒钟(心跳机制)与NN进行一次数据传输目的是为了证明当前DN可以使用如果5分钟没有接收到心跳,NN主动寻找DN,达到10分钟没有找到,可以认定当前DN不可用(即使没有宕机,网络过慢也不适合继续使用)DN每隔一小时与NN汇报一次工作,上报块信息注意:hdfs-site.xml 配置文件中的heartbe

2021-04-11 17:42:33 209

原创 NameNode工作原理

NameNode的原理​ 满足速度快和数据安全的两个前提下,在磁盘和内存各存储一份当前的状态文件,如果第一次使用HDFS(格式化),创建这两种文件。如果不是第一次使用,直接从磁盘把这些文件读取到内存进行还原。怎么实现?编辑日志文件和镜像文件EDITS文件:存放HDFS文件系统的所有更新操作的路径,文件系统客户端执行的所有写操作首先会被记录到edits文件中。edits_m-n 记录hdfs操作的日志文件(不再修改)edits_inprogress_n+1 记录hdfs当前正在操

2021-04-11 17:38:36 362

原创 HDFS数据写入读出原理

HDFS中数据写入读出原理写数据原理客户端与NN发送写数据请求NN响应客户端,可以上传数据每个block块分别与NN发送请求,请求可以存储的DN列表NN分配DN列表客户端与被分配到的DN进行连接这些DN与客户端进行响应客户端开始发送数据给第一个节点由第一个节点传递给第二个节点,以此类推n个副本存储完毕,客户端通知NN,传递完毕NN记录元数据机架感知机架: 存放服务器的架子,也叫机柜​ 一个机房有很多个机架,每个机架有很多个服务器。感知策略:​ hadoop1版本

2021-04-11 17:32:43 137

原创 HDFS操作

1. shell操作hadoop/hdfs脚本没有参数,或参数为–help -help -h 打印帮助信息hadoop中包含但不限于hdfs命令,hdfs只有hdfs命令两个脚本中的每个命令实际都对应一个java类实现hdfs dfs 完全等价于 hadoop fs2. API操作1) 构建项目a. 普通方式,手动导包查找依赖包hadoop.tar.gz解压缩share-hadoop 搜索 .jar 共479个(包含重名包)搜索 -source 删除或剪切搜

2021-04-11 17:25:37 82

原创 HDFS介绍

HDFS​ Hadoop Distributed File System​ Hadoop的分布式文件系统什么是文件系统​ 在磁盘(硬件,只能做存储)的基础上,对于文件或目录进行内容和位置管理的软件系统,叫做文件系统。什么是分布式存储​ 对于一个容量特别大的文件进行存储的时候,一个单独的节点无法完成这个存储任务,必须对这个大文件按照某种规则进行切割,切割成很多个小文件,把每个小文件分别放在集群中的不同节点里,分散了海量数据的存储压力。文件系统的表现形式本地文件系统windows: fil

2021-04-11 17:24:43 226

原创 完全分布式环境搭建

整体规划一个集群,四个节点ip分别是201(node201) 202(node202) 203(node203) 204(node204)角色分配node201:NameNode ResourceManagernode202:DataNode NodeManagernode203:DataNode NodeManagernode204:DataNode NodeManager SecondaryNameNode搭建步骤创建节点:使用传统方式直接安装操作系统,比较麻

2021-04-11 17:23:51 66

原创 伪分布式环境搭建

注意配置分布式的前提条件jdk1.8ssh免密登录关闭防火墙如果访问不到webUI的几种处理情况windows或linux防火墙没有关闭主机名与ip没有在hosts文件中映射(更容易出现在windows下)浏览器不能使用IE或兼容模式如果需要重新格式化关闭服务删除所有节点的dfs目录重新格式化,重启服务伪分布式环境搭建下载安装包解压缩配置环境变量HADOOP_HOME=/home/bduser/modules/hadoopPATH=

2021-04-11 17:22:13 168

原创 Hadoop简介

定义: 一个可靠的,可扩展的,可以分布式计算的开源软件(计算框架)特点:使用简单计算模型,在集群中,分布式的处理海量数据集群:从硬件的角度分析,代表很多个服务器组成了一个集群分布式:从软件的角度分析,代表一个任务在集群中的计算方式集群中节点的数量可以从1到成千上万(可扩展),每个节点都可以有独立的计算和存储能力相对于在硬件层次上做优化,在应用层做优化会更好任何一个节点都可以出现错误。如果一个节点出现问题,还有集群中的其他节点继续完成工作。Hadoop到底是什么从技术

2021-04-11 17:21:02 212

空空如也

空空如也

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

TA关注的人

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