![](https://img-blog.csdnimg.cn/20201014180756780.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
大数据学习笔记
文章平均质量分 82
lesileqin
桃花影落飞神剑,碧海潮声按玉箫
展开
-
Hadoop Yarn 概述 | 基础架构 | 工作机制 | 及作业提交全过程
文章目录一、Yarn是什么?二、Yarn基础架构三、Yarn工作机制四、Yarn作业提交全过程1、HDFS、YARN、MapReduce三者关系2、Yarn作业提交过程3、HDFS 与 MapReduce 作业提交过程一、Yarn是什么?在现实生产环境中,大数据处理服务器众多(如下图所示),那么如果管理集群资源、如何给任务合理的分配资源就是个问题,Yarn的作用就是解决这些问题Yarn是一个资源调度平台,负责为运算程序提供服务器运算资源,相当于一个分布式的操作系统平台,而MapReduce等运算程原创 2021-04-27 09:47:11 · 290 阅读 · 0 评论 -
Hadoop MapReduce 开发总结
Hadoop中的MapReduce是一种编程模型,用于大规模数据集的并行运算该博客是MapReduce开发系列文章总结~标题访问连接MapReduce 概述https://blog.csdn.net/lesileqin/article/details/115725023MapReduce 核心编程思想https://blog.csdn.net/lesileqin/article/details/115726080MapReduce 编程规范 及 常用数据序列化类型原创 2021-04-21 15:47:01 · 433 阅读 · 4 评论 -
Hadoop MapReduce 数据压缩
文章目录一、数据压缩概述二、MapReduce支持的压缩编码1、压缩算法对比介绍2、压缩性能对比三、压缩方式的选择四、压缩位置选择五、压缩参数配置六、压缩案例实操1、Map端采用压缩2、Reduce端采用压缩一、数据压缩概述压缩的好处和坏处:压缩的优点:减少磁盘IO、减少磁盘存储空间压缩的缺点:增加CPU开销压缩原则:运算密集型的Job,少用压缩IO密集型的Job,多用压缩二、MapReduce支持的压缩编码1、压缩算法对比介绍2、压缩性能对比还有一个压缩算法Snappy原创 2021-04-21 15:24:04 · 364 阅读 · 0 评论 -
Hadoop MapReduce ETL数据清洗 | 案例实操
文章目录一、什么是ETL数据清洗?二、案例实操1、需求分析2、撸代码一、什么是ETL数据清洗?ETL英文名:Extract-Transform-Load,用来讲数据从来源端经过抽取(Extract)、转换(Transform)、加载(Load)至目的端的过程在运行核心业务MapReduce之前,往往要先对数据进行清洗,清理掉不符合用户要求的数据。清理的过程往往只需要运行Mapper呈现,不需要运行Reduce程序二、案例实操1、需求分析需求:去除日志中字段个数小于等于11的日志输入数据(字段原创 2021-04-21 14:16:04 · 1083 阅读 · 0 评论 -
Hadoop MapReduce Join应用 | MapJoin案例实操
文章目录一、ReduceJoin的缺点与MapJoin优点二、实现MapJoin的步骤三、案例实操1、Driver类2、Mapper类一、ReduceJoin的缺点与MapJoin优点在上一篇博客中,使用ReduceJoin完成了对两张表的分析,合并的操作是在Reduce阶段完成的,在集群工作中,ReduceTask的个数会少于MapTask的个数,Reduce端的处理压力太大,Map节点的运算负载则很低,资源利用率不高,且在Reduce阶段极易产生数据倾斜。它的解决方案就是在Map端实现数据合并,原创 2021-04-21 13:30:44 · 483 阅读 · 0 评论 -
Hadoop MapReduce Join应用 | ReduceJoin案例实操
文章目录一、ReduceJoin 是什么二、ReduceJoin案例分析1、需求分析2、撸代码1)Bean对象2)Mapper3)Reducer一、ReduceJoin 是什么在现实世界,很多事情都是有关联的,这些关联的事务被抽象成数据的话,如果放在一个文件中是很麻烦的,所以人们一般会用多个文件进行存储,Join做的工作就是:把这些相关的文件都关联到一起。现在可能非常抽象,请耐心往下看案例分析Map端主要工作:为来自不通表或文件的k-v键值对,打标签以区别不同来源的记录,用连接字段作为key,其余部原创 2021-04-20 20:12:03 · 500 阅读 · 0 评论 -
Hadoop MapReduce 内核源码解析 | MapTask与ReduceTask工作机制
文章目录一、MapTask1、MapTask工作机制2、MapTask源码解析二、ReduceTask1、ReduceTask工作机制2、ReduceTask并行度决定机制3、ReduceTask源码解析一、MapTask1、MapTask工作机制Read阶段:MapTask通过InputFormat获得的RecordReader,从输入InputSplit中解析出一个个的k-vMap阶段:该节点主要是将解析出的k-v交给用户编写的map()方法处理,并产生一系列新的k-vCollect收集原创 2021-04-20 16:07:15 · 285 阅读 · 0 评论 -
Hadoop MapReduce 框架原理 | OutputFormat数据输出 | 案列实操
文章目录一、OutputFormat是做什么的?二、实现自定义OutputFormat的步骤 套路三、案例实操1、需求分析2、撸代码一、OutputFormat是做什么的?OutputFormat可以说是MapReduce处理过程的最后一步,由它负责把输出的信息输送到哪个文件或者哪个数据库,等等OutputFormat是MapReduce输出的基类,所有实现MapReduce输出都实现了OutputFormat接口,下图为OutputFormat的几个常见实现类(请忽略画横线的,那是我自定义的):原创 2021-04-20 14:39:06 · 270 阅读 · 0 评论 -
Hadoop MapReduce Shuffle机制之Combiner合并 | 水一篇博客
Combiner合并机制Combiner合并也属于Shuffle机制Combiner的父类是ReducerCombiner和Reducer的区别在于运行时的位置Combiner是在每一个MapTask所在的节点运行的Reducer接收全局所有Mapper的输出结果Combiner的意义就是对每一个MapTask的输出进行局部汇总,主要目的是为了减小网络的传输量并不是所有的场景都能适用Combiner,一般主要用于求和操作实现Combiner的步骤就是继承Reducer,最后在Dri原创 2021-04-19 17:06:26 · 229 阅读 · 0 评论 -
Hadoop MapReduce Shuffle机制之WritableComparable排序 | 案例分析 【图文详解】
文章目录一、WritableComparable排序是什么东西?二、排序分类三、案例分析1、全排序与二次排序1)需求分析2)撸代码2、区内排序(又叫部分排序)1)需求分析2)撸啊撸代码一、WritableComparable排序是什么东西?Map之后、Reduce之前的数据处理过程统称为Shuffle机制WritableComparable排序是Shuffle的一部分功能,它的作用是如果自定义数据类型做为key,则实现该接口,对所需要的字段进行排序。MapReduce规定必须对key进行排序,如原创 2021-04-19 16:36:27 · 783 阅读 · 0 评论 -
Hadoop MapReduce Shuffle机制之Partition分区 | 及分区案例实操
文章目录一、Partition是个什么东西?二、实现Partition的步骤 套路三、分区案例实操四、分区总结一、Partition是个什么东西?Map之后、Reduce之前的数据处理过程统称为Shuffle机制Partition分区是Shuffle的一部分功能,它的作用是按照条件把结果输出到不同的文件(分区)中。二、实现Partition的步骤 套路三、分区案例实操四、分区总结...原创 2021-04-19 14:36:23 · 1232 阅读 · 0 评论 -
Hadoop MapReduce 框架原理 | InputFormat 数据输入
文章目录一、切片与MapTask并行度决定机制二、Job提交流程三、切片执行流程解析四、FileInputFormat切片机制五、TextInputFormat六、CombineTextInputFormat切片机制一、切片与MapTask并行度决定机制MapTask的并行度决定Map阶段的任务处理并发读,进而影响到整个Job的处理速度,引入两个概念:数据块:Block是HDFS物理上把数据分成一块一块,数据块是HDFS存储数据单位数据切片: 只是在逻辑上对输入进行分片,并不会在磁盘上将其切分成原创 2021-04-17 20:14:40 · 805 阅读 · 8 评论 -
Hadoop MapReduce 序列化 与 序列化案例实操
文章目录一、序列化概述1、什么是序列化2、Java序列化机制与Hadoop序列化的对比3、自定义bean对象实现序列化 套路二、序列化案例实操1、需求分析2、撸代码1)实现序列化2)Mapper、Reducer、Driver编写3)测试一、序列化概述1、什么是序列化序列化就是把内存中的对象,转换成字节序列,然后用户存储到磁盘或网络传输反序列化就是把收到的序列化序列,转换成内存的对象,两者是相反的一方面,因为MapReduce在生产环境中是分布式工作的,那么就避免不了内存中的数据在网络上的传输,使原创 2021-04-16 21:09:21 · 997 阅读 · 0 评论 -
Hadoop MapReduce WordCount 案例实操 | 源码剖析 | 图文详解
文章目录一、需求分析二、环境准备三、编写程序1、Mapper类1)Mapper源码2)编写Mapper类代码2、Reducer类1)Reducer源码2)编写Reducer类3、Driver类四、测试1、本地测试2、提交到集群并测试一、需求分析统计给定文本中每一个单词出现的个数准备的文本数据:atguigu atguiguss sscls clsjiaobanzhangxuehadoopwtt wtt wzqwzq love wangtiantian期望的输出数据:atgui原创 2021-04-16 17:47:37 · 527 阅读 · 0 评论 -
Hadoop 图解 MapReduce 编程规范 | 常用数据序列化类型
文章目录一、下载MapReduce的WordCount二、常用数据序列化类型三、MapReduce编程规范1、Mapper阶段2、Reducer阶段3、Driver阶段一、下载MapReduce的WordCount要想了解MapReduce编程规范,直接看一下官方代码是怎么写的就知道了打开shell工具,下载hadoop-mapreduce-examples-3.1.3.jar包,路径是:/opt/module/hadoop-3.1.3/share/hadoop/mapreduce然后下载:原创 2021-04-15 17:27:30 · 650 阅读 · 0 评论 -
Hadoop MapReduce 核心编程思想
MapReduce核心编程思想拿一个需求来举例说明MapReduce的思想:有个300M的文件,统计每一个单词出现的总次数,要求查询结果a-p的为一个文件,q-z的为一个文件如果拿到现实中,要统计这么多单词并且按照a-p,p-z分区,会拿出两张纸,一张纸记录a-p的、另一张纸记录p-z的,但是300M的文件太大了,自己一个人肯定完不成,所以找来两个人来帮忙,他们都拿出两张纸按照同样的方法进行统计,到最后他们各自会拿出满满的两页纸,上面记录着各个单词,每个单词出现一次就记录为(hadoop->1)这原创 2021-04-15 16:01:42 · 247 阅读 · 0 评论 -
Hadoop MapReduce 概述
文章目录一、MapReduce学习思维导图二、MapReduce定义三、MapReduce的优缺点1、优点2、缺点一、MapReduce学习思维导图二、MapReduce定义MapReduce是Hadoop的一个分布式(多台机器)运算程序的编程框架,也是Hadoop的核心框架如果让我们用程序实现一个多台机器并发计算的程序,我们可能需要关心到数据传输、如何并发等很多底层的问题,MapReduce为我们提供了一系列的框架,我们可以直接调用MapReduce核心功能是将用户编写的业务逻辑代码和自带默原创 2021-04-15 14:58:29 · 685 阅读 · 0 评论 -
Hadoop HDFS | DataNode工作机制 | 数据完整性 | 掉线时限参数设置
文章目录一、DataNode工作机制二、数据完整性三、掉线时限参数设置一、DataNode工作机制直接看一张图:它的工作流程是:当DataNode启动后,必须向NameNode汇报自己的块信息,然后定期(6个小时)扫描、上报自己所有块的信息。块信息包括:数据、数据长度、校验和(即数据完整性)、时间戳每个DataNode必须定期向NameNode汇报说:我还活着。这个过程叫做心跳,心跳每三秒一次;如果超过10分钟+30秒 NameNode没有收到DataNode的心跳,就会认为DataNode原创 2021-04-15 10:34:02 · 720 阅读 · 0 评论 -
Hadoop HDFS | NameNode和SecondaryNameNode的工作机制 | Fsimage和Edits解析 | CheckPoint时间设置
文章目录一、NN和2NN工作机制1、元数据在什么地方?2、NN和2NN的工作机制二、FsImage和Edits解析1、FsImage和Edits文件所处位置2、oiv查看Fsimage文件3、oev查看Edits文件三、CheckPoint时间设置NameNode简称为NN,SecondaryNameNode简称为2NN一、NN和2NN工作机制1、元数据在什么地方?NameNode中有元数据,那么元数据是存在什么地方呢?如果元数据存储在NN的内存中,内存有两个特点就是:不可靠(断电即失)、计算速原创 2021-04-14 18:04:04 · 434 阅读 · 0 评论 -
Hadoop HDFS 读写流程 | 图文详解
文章目录一、HDFS写数据流程1、文件写入流程2、网络拓扑 - 节点距离计算3、机架感知(副本存储节点选择)二、HDFS读数据流程一、HDFS写数据流程1、文件写入流程下图为文件写入流程剖析图:想要上传一个200M的文件ss.avi到HDFS,它的写入流程是这样的:客户端创建Distributed FileSystem,该模块向HDFS的老大哥NameNode请求上传文件ss.avi老大哥NameNode是个做事很守规矩的人,所以他要检查权限和目录结构是否存在,如果存在就向Distribu原创 2021-04-14 16:28:17 · 4431 阅读 · 0 评论 -
Spark 快速上手 | WordCount的三种实现方式
文章目录一、搭建开发环境二、体验WordCount1)2)3)三、配置log4j一、搭建开发环境二、体验WordCount1)2)3)三、配置log4j原创 2021-04-14 14:01:50 · 593 阅读 · 0 评论 -
Spark 概述 | Spark 与 Hadoop的区别
文章目录一、Spark是什么二、Spark的核心模块二、Spark VS Hadoop一、Spark是什么Spark是一个基于内存的快速、通用、可扩展的大数据分析计算引擎二、Spark的核心模块如下图所示,Spark共有以下几个模块:Spark Core:提供了Spark最基础与最核心的功能,Spark其他的功能如:Spark SQL,Spark Streaming,GraphX,MLlib都是在Spark Core的基础上进行扩展的Spark SQL:是用来操作结构化数据的组件。通过S原创 2021-04-13 13:23:11 · 560 阅读 · 1 评论 -
scala 学习笔记(下) | 类和对象、特质
一、类和对象scala是支持面向对象的,也有类和对象的概念,依然可以基于scala语言来开发面向对象的应用程序1、创建类和对象使用class定义一个类使用new来创建对象示例:创建一个Person类,并创建它的对象步骤:在idea中创建一个Scala项目,并创建一个Object添加main方法创建类和对象package com.wzq.scala.oopobject _01ClassObject { class Person { } def main(ar原创 2021-04-11 15:40:46 · 259 阅读 · 4 评论 -
scala 学习笔记(中) | 函数式编程
五、函数式编程使用Spark/Flink的大量业务代码都会使用到函数式编程,都有下面这些操作:遍历(foreach)映射(map)映射扁平化(flatmap)过滤(filter)是否存在(exists)排序(sorted、sortBy、sortWith)分组(groupBy)聚合计算(reduce)折叠(fold)1、遍历 | foreach之前学习过了使用for表达式来遍历集合,使用foreach方法进行遍历、迭代,可以让代码更加简介foreach(f: (A) =>原创 2021-04-10 16:54:28 · 275 阅读 · 2 评论 -
scala 学习笔记(上)| 开发环境安装 | 循环判断 | 数据类型
文章目录一、开发环境安装1、安装JDK2、安装Scala SDK3、安装IDEA Scala插件二、变量1、基本定义2、自动推断3、惰性赋值三、字符串四、数据类型与操作符1、数据类型2、运算符3、scala类型层次结构五、条件表达式1、有返回值的IF2、块表达式六、循环1、for表达式1)简单循环2)嵌套循环3)守卫4)for推导式2、while循环3、break和continue1)实现break2)实现continue七、方法1、定义方法2、返回值类型推断3、方法参数1)默认参数2)带名参数3)变长参数原创 2021-04-09 18:10:10 · 137 阅读 · 2 评论 -
Hadoop HDFS API 操作图文详解及参数解读
文章目录一、使用API的套路二、文件上产三、文件下载可以点击这些文字去学习如何Hadoop搭建客户端API环境在进行下列操作之前,要确保Hadoop集群出于开启状态:一、使用API的套路使用API操作HDFS的套路有三步:获取FileSystem,即执行操作的对象使用FileSystem执行相关的操作释放FileSystem资源下面使用创建文件夹的例子来做使用一下这个套路:首先获取FileSystem对象,因为FileSystem是一个抽象类所以只能get,不能new:获取Fi原创 2021-04-08 15:23:30 · 2898 阅读 · 1 评论 -
Hadoop HDFS 搭建客户端 API 环境 | 图文详解 | 提供依赖下载连接
文章目录一、下载Hadoop客户端环境二、配置Hadoop环境变量三、在IDEA创建Maven工程一、下载Hadoop客户端环境Hadoop客户端环境与所需要微软运行库链接:https://pan.baidu.com/s/1pjDSImaztgGUIOj7dMUTEQ提取码:7qrk二、配置Hadoop环境变量将下载的Hadoop依赖包放在一个非中文且不能有空格存在的路径中!右键单击此电脑=>属性=>高级系统设置=>高级=>环境变量,到如下图所示的界面:点击系统原创 2021-04-07 15:12:06 · 3313 阅读 · 6 评论 -
Hadoop HDFS 常用Shell命令 | 图文详解
文章目录一、命令大全二、上传1、-mkdir 创建文件夹2、-moveFromLocal 从本地剪切粘贴到HDFS3、-copyFromLocal 或 -put从本地复制到HDFS4、-appendToFile 追加一个文件到已存在的文件末尾三、下载-copyToLocal 或 -get 从HDFS拷贝到本地四、HDFS直接操作1、-ls 显示目录信息2、-cat 显示文件内容3、-chgrp、-chmod、-chown 修改文件所属权限4、-cp 或 -mv 从HDFS的一个路径拷贝或移动到HDFS的另一原创 2021-04-05 17:33:24 · 3765 阅读 · 3 评论 -
Hadoop HDFS 概述 | 优缺点 | 组成架构 | 文件块大小
文章目录一、HDFS概述1、HDFS产生背景2、HDFS定义二、HDFS优缺点1、优点2、缺点三、HDFS组成架构1、NameNode(nn)Master主管、管理者2、DataNode NameNode下命令,DataNode实际执行3、Client 客户端4、Secondary NameNode NameNode的秘书。NameNode挂掉,能替换NameNode并提供服务四、HDFS文件块大小 重点一、HDFS概述1、HDFS产生背景随着数据量越来越大,一个操作系统放不下所有的数据,那么就分配原创 2021-04-05 15:33:37 · 711 阅读 · 2 评论 -
Hadoop 编写集群统一启动停止脚本 | 查看所有服务器Java进程脚本
文章目录一、Hadoop集群启停脚本 myhadoop.sh1、编写脚本2、脚本解读3、测试二、查看三台服务器Java进程脚本 jpsall1、编写脚本2、脚本解读3、测试三、脚本分发在配置两个脚本之前,需要配置好ssh免密登陆一、Hadoop集群启停脚本 myhadoop.sh1、编写脚本在用户家目录的bin下,创建脚本myhadoop.sh[wzq@hadoop102 ~]$ cd /home/wzq/bin/[wzq@hadoop102 bin]$ vim myhadoop.sh将原创 2021-04-04 11:15:10 · 4500 阅读 · 13 评论 -
Hadoop 配置历史服务器、日志聚集 | 常用端口号说明
khjjghkj原创 2021-04-04 10:30:47 · 2020 阅读 · 0 评论 -
Hadoop 群起集群并进行基本测试
文章目录一、群起集群1、配置workers2、启动集群1)初始化2)启动HDFS3)启动YARN4)在web端查看HDFS的NameNode http://hadoop102:98705)在web端查看YARN的ResourceManagerhttp://hadoop103:8088二、基本测试1、上传文件到集群2、文件的存储位置3、下载4、执行wordcount程序一、群起集群1、配置workers在hadoop102中编辑文件vim /opt/module/hadoop-3.1.3/etc/h原创 2021-04-03 20:47:15 · 1723 阅读 · 0 评论 -
Hadoop运行环境搭建 | 集群配置
文章目录一、Hadoop目录文件结构二、Hadoop的运行模式三、集群配置规划四、配置文件说明1、默认配置文件2、用户自定义配置文件五、配置集群1、核心配置文件 core-site.xml 2、HDFS配置文件 hdfs-site.xml 3、YARN配置文件 yarn-site.xml 4、MapReduce配置文件 mapred-site.xml 5、集群分发配置文件一、Hadoop目录文件结构查看hadoop的目录结构:[wzq@hadoop102 hadoop-3.1.3]$ ll原创 2021-04-02 18:02:58 · 175 阅读 · 0 评论 -
Hadoop运行环境搭建 | 安装Java、Hadoop以及集群分发脚本 | 图文详解
文章目录一、使用Xshell连接Linux二、安装Java三、安装Hadoop四、配置集群分发五、配置SSH无密登陆一、使用Xshell连接Linux连接之前一定要关闭防火墙!!!!!!!!!打开Xshell,点击新建:输入主机名称和ip地址,然后点击用户身份验证:输入用户名和密码,这里建议不要用root用户直接登陆:最后点击确定,连接成功是这个样子的:hadoop102、hadoop103同理二、安装Java使用Xshell文件传输工具把jdk和hadoop包上传到linux的原创 2021-04-02 16:35:44 · 744 阅读 · 2 评论 -
Failed to stop iptables.service: Unit iptables.service not loaded.
在关闭防火墙到时候,出现:Redirecting to /bin/systemctl stop iptables.serviceFailed to stop iptables.service: Unit iptables.service not loaded.解决方法:yum install iptables-services最后:systemctl stop iptables.service转载 2021-04-02 15:14:31 · 2701 阅读 · 0 评论 -
Hadoop运行环境搭建 | 克隆虚拟机 | 图文详解
文章目录1、克隆虚拟机1、克隆虚拟机克隆三台虚拟机,102、103、104因为Hadoop101是用来做伪分布式的,所以空了下来克隆之前一定要先关闭虚拟机!VMware左侧,有个hadoop100,点击右键—>管理,选择克隆虚拟机,打开之后显示如下界面,点击下一步选择虚拟机中的当前状态,点击下一步选择第二个,创建完整的克隆:给克隆的虚拟机起一个名字,并选择虚拟机位置,点击完成点击完成,等待克隆完毕会发现VMware右侧左侧多了个Hadoop102:然后按照上面的步骤,原创 2021-04-02 14:31:38 · 687 阅读 · 0 评论 -
Hadoop运行环境搭建 | 模板虚拟机准备 | 图文详解
文章目录一、模板虚拟环境准备1、安装VMware2、安装Linux CentOS 73、配置IP和主机名称,主机名称映射1)配置VMware的IP2)配置windows的IP3)配置Linux的IP4、安装epel-release5、关闭防火墙,关闭防火墙开机自启6、创建文件夹7、卸载虚拟机自带的JDK一、模板虚拟环境准备1、安装VMware安装VMware就像安装QQ一样,直接无脑点击下一步即可,这部分略!下面是下载连接:VMware:链接:https://pan.baidu.com/s/1l原创 2021-04-02 14:08:25 · 628 阅读 · 3 评论 -
大数据概论 + Hadoop概述
文章目录一、大数据概论二、Hadoop1、Hadoop是什么2、Hadoop的发展历史3、Hadoop的三大发行版本4、Hadoop的优势5、Hadoop的组成1)HDFS架构概述2)YARN架构概述3)MapReduce架构概述4)HDFS、YARN、MapReduce三者关系三、大数据技术生态体系四、推荐系统框架图一、大数据概论大数据主要解决,海量数据的采集、存储和分析计算问题大量、高速、多样、低价值密度应用场景:抖音:推荐你喜欢的视频电商站内广告推荐:给用户推荐可能喜欢的商品零售:分原创 2021-04-02 13:37:34 · 284 阅读 · 0 评论