Hadoop
总会有天明
这个作者很懒,什么都没留下…
展开
-
Yarn-day01-课程入门
一:课程介绍 1:理论 1.1:yarn的基础结构 1.2:yarn的工作机制 1.3:MapReduce/HDFS/Yarn 1.4:调度器和调度算法 1.4.1:FIFO 1.4.2:容量调度器 1.4....原创 2021-10-27 22:38:37 · 209 阅读 · 0 评论 -
MapReduce-day06-第四章Hadoop压缩
1:压缩的好处和坏处 压缩的优点:减少磁盘IO、减少磁盘存储空间2:压缩原则 1:运算密集型的Job,少用压缩 2:IO密集型的Job,多用压缩3:压缩算法对比压缩格式 Hadoop自带? 算法 文件扩展名 是否可切片 换成压缩格式后,原来的程序是否需要修改 DEFLATE 是 DEFLATE .deflate 否 和文件处理一样,不需要修改 GZIP 是 DEF...原创 2021-10-26 22:56:47 · 101 阅读 · 0 评论 -
MapReduce-day06-第三章框架原理-3.8MapReduce总结
1:InputFormat 1:默认的是TextInputFormat kv key:偏移量,v:一行内容 2:处理小文件CombineTextInputFormat 把多个文件合并到一起统一切片2:Mapper setup:初始化 map:用户的业务逻辑 clearup:关闭资源3:shuffle分区 默认分区:HashPartitioner,默认按...原创 2021-10-26 22:16:07 · 104 阅读 · 0 评论 -
MapReduce-day06-第三章框架原理-3.7ETL机制
1:概念:用来描述将数据从来源端经过抽取(Extract)、转换(Transform)、加载(Load)至目的端的过程。在运行核心业务MapReduce 程序之前,往往要先对数据进行清洗,清理掉不符合用户要求的数据。清理的过程往往只需要运行Mapper 程序,不需要运行Reduce 程序。2:案例:去除日志中字段个数小于等于11 的日志。package com.atguigu.mapreduce.etl;import org.apache.hadoop.io.LongWritable;imp原创 2021-10-26 22:04:56 · 120 阅读 · 0 评论 -
MapReduce-day05-第三章框架原理-3.6MapJoin机制
因为Map阶段文件量可能很大,如果都是放到Reducer阶段进行Join的话,可能会造成处理效率低下的现象。所以尽可能采用MapJoin,同时要注意缓存文件的问题。package com.atguigu.mapreduce.mapjoin;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.NullWritable;import.原创 2021-10-25 23:36:29 · 146 阅读 · 0 评论 -
MapReduce-day05-第三章框架原理-3.6ReduceJoin机制
1:案例原创 2021-10-25 23:03:25 · 115 阅读 · 0 评论 -
MapReduce-day05-第三章框架原理-3.5MapReduce内核机制
1:MapTask工作机制 1:Read 阶段:MapTask 通过InputFormat 获得的RecordReader,从输入InputSplit 中解析出一个个key/value。就是InputFormat阶段。 2:Map 阶段:该节点主要是将解析出的key/value 交给用户编写map()函数处理,并产生一系列新的key/value。就是用户自定义Mapper函数阶段。 3:Collect 收集阶段:在用户编写map()函数中,当数据处理完成后,一般会...原创 2021-10-19 21:53:58 · 115 阅读 · 0 评论 -
MapReduce-day05-第三章框架原理-3.4OutputFormat机制
1:默认输出格式TextOutputFormat2:自定义OutputFormat 2.1:应用场景:输出数据到mysql/hbase/elasticsearch等存储框架中 2.2:自定义步骤 2.2.1:自定义一个类继承FileOutputFormat 2.2.2:改写RecordWriter,具体改写输出数据的方法write()3:自定义OutputFormat案例 4:代码编写Log...原创 2021-10-19 21:28:24 · 108 阅读 · 0 评论 -
好久不见~
原创 2021-10-13 22:02:56 · 97 阅读 · 0 评论 -
MapReduce-day04-第三章框架原理-3.3Shuffle机制
1:shuffle机制shuffle是处于Map方法之后,Reduce方法之前的数据处理过程。2:Partition分区 1:要求将统计结果按照条件输出到不同的文件中(分区)。将统计结果按照手机归属地不同省份输出到不同文件中(分区)。 2:默认的Partition分区public class HashPartitioner<K, V> extends Partitioner<K, V> { public int getPar...原创 2021-07-25 15:27:05 · 176 阅读 · 2 评论 -
MapReduce-day03-第三章框架原理-3.2MapReduce工作流程
原创 2021-07-25 00:16:53 · 115 阅读 · 0 评论 -
MapReduce-day03-第三章框架原理-3.1InputFormat数据输入
1:上图理解1:Map阶段是在数据源通过InputFormat来设置通过什么样的一个方式来读取数据,比如之前的数据一行一行的方式读取,读取完之后交给Mapper,即用户编写的业务逻辑代码进行处理。2:然后通过Shuffle把Mapper阶段的数据拉到Reducer阶段,此阶段可以对数据进行排序,分区,压缩,合并等功能。3:Reducer处理完之后,通过OutputFormat可以对输出格式进行设置,比如设置把处理之后的数据写道HBase,数据库...原创 2021-07-24 23:55:28 · 243 阅读 · 1 评论 -
MapReduce-day02-第二章Hadoop序列化
1:序列化概述 1:序列化就是内存中的对象转换成字节序列,反序列化就是字节序列转换成内存中的对象。 2:原因:因为把一个虚拟机的内存中的对象数据传给另一台虚拟机内存,没办法传。3:不用Java的序列化原因: 因为Java的一个对象被序列化后,会覆盖很多额外的信息(各种校验信息、头、继承体系),不便于在网络中进行高效传输。 4:特点:结构紧凑,高效使用存储空间。快速,读写数据的额外开销小。互操作性:支持多语言的交互。加入Hadoop1...原创 2021-07-18 00:33:12 · 136 阅读 · 0 评论 -
MapReduce-day01-第一章MapReduce概述
1:MapReduce定义 是一个分布式运算程序的编程框架,核心功能是将用户编写的业务逻辑代码和自带默认组件整合成一个完整的分布式运算程序,并发运行在一个Hadoop集群上。2:MapReduce优缺点 优点1:易于编程。用户只关心业务逻辑,实现框架的接口即可。 2:良好的扩展性。可以动态的增加服务器,解决计算资源不够的问题。 3:高容错性。任何一台机器挂掉,可以将任务转移到其他节点。 ...原创 2021-07-16 23:59:37 · 195 阅读 · 6 评论 -
MapReduce-day01-课程介绍
1:MapReduce概述2:序列化3:MapReduce核心框架原理 1:输入数据的处理InputFormat 2:Shuffle 3:输出数据的处理OutputFormat 4:Join 5:ETL 6:总结4:压缩 1:有哪些压缩算法 2:各自的特点 3:在生成环境中如何使用...原创 2021-07-16 15:58:11 · 94 阅读 · 0 评论 -
HDFS-day03-总结
1:第一章(面试重点)有一个块大小的面试题,HDFS文件块大小,与硬盘读写速度有关2:第二章(开发重点)3:第三章(了解即可)4:第四章(面试重点)5:第五章(了解即可)6:第六章(了解即可)...原创 2021-07-16 15:51:05 · 103 阅读 · 0 评论 -
HDFS-day03-第六章DataNode
1:DataNode工作机制 1:首先,插上电的时候,DataNode会向NameNode汇报块信息,进行注册并记录块信息。 2:NameNode返回注册成功 3:因为可能DataNode的块在工作中可能会损坏,所以每周期会上报一次,默认是六小时,这个时间可以修改。这六个小时,是DataNode先检查一下自己所包含的块,然后再汇报。 4:为了保证DataNode节点正常允许,需要检测该节点的状态,就默认DataNode与NameNo...原创 2021-07-16 15:44:03 · 165 阅读 · 0 评论 -
HDFS-day02-第五章NN和2NN
思考:NN中的数据存放在什么位置: 如果是内存:那么计算快,但是可靠性差。如果是磁盘,可靠性好,但是计算慢。如果是内存+磁盘,由于内存计算快,然后持久到话磁盘,所以磁盘会拖慢整体效率,导致效率低下。 可以采用fsimage来存储磁盘中的数据,如果是随机读写,因为hdfs修改的效率比较低,所以不推荐。但是hdfs支持追加的方式进行读写(edits),edits文件只用来记录文件,不计算值,例如只记录a+10、a-30但是不计算等于多少。 内存中存储一部分数...原创 2021-07-15 23:32:47 · 250 阅读 · 0 评论 -
HDFS-day02-第四章HDFS的读写流程
1:HDFS写入数据的流程(如何在客户端把数据写入到HDFS集群)1:首先客户端向NameNode发送上传请求 2:NameNode检查客户端所传递的用户以及权限问题,还有是否存在等问题,如果均满足,则响应客户端可以上传问题 3:客户端请求上传地址,即上传第一个块的地址,返回指定的DataNode这种副本存储节点的选择有如图上的三种节点,应该是负载均衡方面的考虑。 4:NameNode返回节点,表示采用这几个节点存储数据...原创 2021-07-15 18:48:51 · 167 阅读 · 2 评论 -
HDFS-day02-第三章HDFS的API操作
第二章的HDFS的shell操作是在虚拟机上进行远程连接控制HDFS操控的。第三章的API操作时在Windows环境下,用idea开发工具使用Java代码进行远程操控的。 1:把资料包的hadoop文件夹拷贝到一个没有中路路径的地方。 2:在系统变量里面新增环境变量HADOOP_HOME D:\hadoop-3.1.0 3:然后配置path环境变量,新增以下内容%HADOOP_HOME%\bin 4:创建mav...原创 2021-07-15 17:55:26 · 150 阅读 · 0 评论 -
HDFS-day01-第二章HDFS的Shell操作
1基本语法 Hadoop fs 具体命令 OR hdfs dfs 具体命令 两个是完全相同的2:命令大全$ bin/hadoop fs#通过上述命令可查看所有HDFS的命令3:常用命令实操 1:准备工作 1:启动Hadoop集群[atguigu@hadoop102 hadoop-3.1.3]$ sbin/start-dfs.sh 2:-hel...原创 2021-07-13 22:13:23 · 154 阅读 · 0 评论 -
HDFS-day01-第一章
1:HDFS产出背景及定义 1:产生背景 需要一种系统来管理多台机器上的文件,HDFS只是分布式文件管理系统中的一种。 2:定义 分布式的文件系统。适用场景是适合一次写入,多次读出的场景。2:HDFS优缺点 优点 1:高容错性 数据自动保存多个副本,它通过增加副本的形式,提高容错性。 第一个副本丢失...原创 2021-07-13 21:36:24 · 171 阅读 · 0 评论 -
HDFS-day01-课程介绍
第一章:概述 1:HDFS的产生背景和定义 2:优缺点 3:组成 4:文件块大小问题第二章:HDFS的shell相关操作(开发重点)第三章:HDFS的客户端API 1:数据的上传和下载第四章:HDFS的读写流程(面试重点)第五章:NN和2NN第六章:DataNode工作机制...原创 2021-07-13 20:45:45 · 122 阅读 · 0 评论 -
Hadoop-day01-课程入门
1:概念 1:Hadoop是什么 1:Hadoop是一个由apache基金会所开发的分布式系统基础架构。 2:主要解决:海量数据的存储和海量数据的分析计算问题。 2:Hadoop发展历史 3:Hadoop的三大发行版本 4:Hadoop的优势 1:高可靠性:Hadoop底层维护多个数据副本,所以即使Hadoop某个计算元素或存储出...原创 2021-07-13 17:47:12 · 227 阅读 · 3 评论