hadoop
qq_34352013
ruanwenfu
展开
-
JobPriority
JobPriority.java定义job的优先级,有几种优先级yarn能够对不同的优先级做出反应当前hadoop有以下几种枚举值@[email protected] enum JobPriority { VERY_HIGH, HIGH, NORMAL, LOW, VERY_LOW, DEFAULT, UNDEFINED_PRIORITY;}...原创 2021-04-13 22:30:11 · 146 阅读 · 0 评论 -
Tool.java
概述1、工具类接口,该接口能够被运行,根据设定的参数值int run(String[] args)提供运行方法Tool.javapackage com.ruanwenfu.base;/** * 工具类接口 * 可以配置 并且可以运行 */public interface Tool extends Configurable{ int run(String[] args) throws Exception;}...原创 2021-04-12 23:07:00 · 142 阅读 · 0 评论 -
Configured.java
概述1、配置类,提供了设置配置以及获取配置的方法Configured.javapackage com.ruanwenfu.base;import com.ruanwenfu.InterfaceAudience;import com.ruanwenfu.InterfaceStability;/** * 可配置类 */@[email protected] class Configured implements原创 2021-04-12 22:57:05 · 151 阅读 · 0 评论 -
Configurable.java
概述1、可配置接口,实现该接口的实现类都需要具备配置方法2、提供以下方法void setConf(Configuration conf)配置设置Configuation getConf()获取配置方法Configurable.javapackage com.ruanwenfu.base;/** * 可配置接口,实现该类的实现类都可以配置 * 1、可配置 * 2、可以返回配置信息 */public interface Configurable { /**原创 2021-04-12 22:38:16 · 149 阅读 · 0 评论 -
InterfaceStability.java
概述1、用于注释接口的稳定性InterfaceStability.javapackage com.ruanwenfu;import java.lang.annotation.Documented;import java.lang.annotation.Retention;import java.lang.annotation.RetentionPolicy;public class InterfaceStability { @Documented @Retention(Re原创 2021-04-12 22:15:06 · 75 阅读 · 0 评论 -
InterfaceAudience.java
总结1、注解可以作为另外一个类的成员属性,类似于内部类。2、通过一个类将具有类似功能的注解组织起来3、InterfaceAudience.java(接口观众类)的作用,因为java自身的权限访问控制比较严格,不符合访问控制的语法将会导致报错。hadoop中的这个类相当于是从应用层面对访问做的一个控制4、使用该类中的注解时,不需要实例化该类,可以直接使用代码InterfaceAudience.javapackage com.ruanwenfu;import java.lang.annotat原创 2021-04-09 01:31:25 · 157 阅读 · 0 评论 -
21 Mapreduce中的join操作
背景类似于sql语句中的join,两张表之间有关系,需要进行联合查询的场景订单表:1001 20170710 4 21002 20170710 3 1001003 20170710 2 401004 20170711 2 231005 20170823 4 551006 20170824 3 201007 20170825 2 31008 20170826 4 231009 ...原创 2020-11-23 23:49:04 · 65 阅读 · 0 评论 -
20 mapreduce推测执行机制
1、推测执行机制实际上是Hadoop提供的一种针对慢任务的优化方法: 当出现慢任务的时候,Hadoop会将这个慢任务复制一份放到其他节点上,两个节点同时执行相同的任务,谁先执行完,那么结果就作为最后的结果,另一个没有执行完的任务就会被kill掉2、慢任务出现的场景:任务分配不均匀机器性能不均等数据倾斜3、优化如果慢任务是由于上述的前两个因素导致的,那么可以通过推测执行机制实现优化。多个...原创 2020-11-23 23:47:23 · 380 阅读 · 0 评论 -
19 mapreduce小文件
小文件的危害1、存储:每一个小文件在HDFS上都会产生一条元数据。如果存储大量的小文件,那么就会产生大量的元数据。如果元数据过多,会大量占用NameNode的内存,并且还会导致元数据的查询效率变低2、计算:每一个小文件在MapReduce中对应一个切片。如果计算大量的小文件,那么就会产生大量的切片,每一个切片会对应一个MapTask(MapTask本质上线程),大量的切片就会产生大量的线程。如...原创 2020-11-23 23:47:33 · 88 阅读 · 0 评论 -
18 mapreduce 数据倾斜
什么是数据倾斜数据倾斜就是在多个节点之间,处理数据的压力不一样,有点节点比较忙,但是有点节点比较轻松,这个就是发生了数据倾斜。产生的原因1、数据本身具有倾斜的特性 - 数据本身就是不平均的 - 所以数据倾斜不能避免2、map端可能会发生数据倾斜。产生的条件三者缺一不可,分别是:多源输入、输入的文件不可切且大小不均等(从而导致有点mapTask任务重有点轻)—— 三个条件缺一不可,而且Map...原创 2020-11-23 23:46:41 · 148 阅读 · 0 评论 -
17 自定义输入输出格式以及源码分析
输入格式InputFormat1、InputFormat是MapReduce中提供输入格式化的顶级父类,所有的输入格式化都继承与这个父类。其中提供了两个主要方法:getSplits:规定切片过程createRecordReader:提供输入流来读取切片中的数据2、InputFormat发生在Map之前,在MapTask之前,先对文件切片,然后通过输入IO流读取数据,将读取的数据发送给Map...原创 2020-11-23 23:46:22 · 212 阅读 · 0 评论 -
15 mapreduce 基本理论
数据本地化策略把计算发到离数据近的地方,移动计算不移动数据1、实际过程中,Split大小 = Block大小/n,意味着Split的大小往往是Block大小的某个因子,例如Block是128M,Split是64M,n等于2,这么设置的目的是为了减少每一个MapTask所读取的次数 ,一般Split和Block大小相等2、数据本地话策略:两个方面① 为了减少跨集群的传输,往往是将DataNo...原创 2020-11-23 23:45:27 · 157 阅读 · 0 评论 -
14 mapreduce——combiner合并
作用避免任务在reduceTask上的积压。1、因为实际过程中MapTask的数量要远多于ReduceTask的数量,所以所有的计算压力最终都会落到ReduceTask上,所以就要考虑降低ReduceTask的计算压力 - 可以考虑将ReduceTask一部分的计算前移,在MapTask这一端先进行一次汇总,最后ReduceTask再进行最后的汇总2、Combiner的执行逻辑和Reduce...原创 2020-11-23 23:46:54 · 168 阅读 · 0 评论 -
13mapreduce——排序
作用类似于sql语句中的order by功能默认情况下,mapreduce中,会默认对Mapper输出的key来进行自然排序,所以如果说希望对结构中的某个字段进行排序的话,就把这个字段放到map输出的key里面去。【排序是为了合并,为了reduce的计算分组】概述1、在MapReduce中,会默认对Mapper输出的键来进行自然排序;,所以也要求Mapper输出的键对应的类型必须实现Com...原创 2020-11-23 23:45:37 · 1416 阅读 · 0 评论 -
12 mapreduce分区——partitioner
分区分区的业务场景分区的几个特点自动义分区类测试案例项目没有加入分区时的编码引入自定义分区修改Driver按月份统计学生的总成绩封装一个modelmapperreducerPartitionerDriver分区的业务场景在平常进行统计的时候,不仅仅会统计一个总数,可能还需要根据不同的维度进行汇总,比如SQL中的group by子句,先对数据进行分组,然后在组内进行汇总整合。所以mapredu...原创 2020-11-23 23:45:56 · 561 阅读 · 0 评论 -
10 mapreduce 统计单词出现的文件名
键值对类型k:单词,v:文件名如何获取value这一行来自于哪个文件? //获取属于哪个文件分片 FileSplit fs = (FileSplit) context.getInputSplit(); //属于哪个文件 String name = fs.getPath().getName();package text;import or...原创 2020-11-23 23:44:39 · 85 阅读 · 0 评论 -
11 map多级处理-找出隐藏好友-可能认识的人
ddd原创 2020-11-23 23:49:19 · 219 阅读 · 0 评论 -
09 mapreduce序列化应用二——统计总分
准备数据Bob 90 64 92Alex 64 63 68Grace 57 86 24Henry 39 79 78Adair 88 82 64Chad 66 74 37Colin 64 86 74Eden 71 85 43Grover 99 86 43序列化类写出啥就读到啥package serialscore;import org.apache.hadoop.io.W...原创 2020-11-23 23:45:02 · 261 阅读 · 0 评论 -
08 Mapreduce 序列化
背景现在提供如下文件:13877779999 bj zs 214513766668888 sh ls 102813766668888 sh ls 998713877779999 bj zs 567813544445555 sz ww 1057713877779999 sh zs 214513766668888 sh ls 9987reduce阶段,可能需要根据需求来对不同的字段进...原创 2020-11-23 23:47:50 · 324 阅读 · 0 评论 -
07 MapReduce计算总分,求和
package scoreCount;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.LongWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Mapper;import java.io.IOE...原创 2020-11-23 23:45:11 · 964 阅读 · 0 评论 -
06 MapReduce_取每人最高分
人名:分数1,分数2.分数3.分数4;取最大值package maxscore;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.LongWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Mapp...原创 2020-11-23 23:43:46 · 300 阅读 · 0 评论 -
05 MapReduce——IP去重
思路去除重复用什么?Setreduce阶段本身就会去除重复package ip;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.LongWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Map...原创 2020-11-23 23:43:55 · 521 阅读 · 0 评论 -
04 MapReduce——词频统计
分析he:1is:1dog:1Mapperpackage wordcoount;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Mapper;import java.io.IOException;public...原创 2020-11-23 23:43:12 · 126 阅读 · 0 评论 -
03 windows开发环境下运行hadoop任务时报错
1、如果双击winutils.exe出现缺失dll的错误,那么将预习资料中tar目录下的mscvr120.dll复制到C:\Windows\System322、如果运行MapReduce程序的时候,出现Could not locate executable null\bin\winutils.exe in the Hadoop binaries先检查环境变量是否配置正确 (hadoop_ho...原创 2020-11-23 23:43:33 · 359 阅读 · 0 评论 -
02 MapReduce API操作-字符统计
mapper类和reducer类,继承mr里面提供的父类mapper类的输入键类型:整型,默认情况下表示字节偏移量,第一个行是0,第二行是11(第一行是11个字节长度),第三行是前两行之后的字节偏移量 ,一行内容做为值处理(Text)入门案例一:字符统计创建maven项目导入依赖依赖见mavenmapper类开发统计1行中的单词个数,输出(字符,1)import org.apach...原创 2020-11-23 23:42:47 · 185 阅读 · 0 评论 -
01 MapReduce基本理论
概述1、MapReduce是Hadoop提供的一套用于进行分布式计算的框架 【移动计算而不是移动数据】2、MapReduce是Doug根据Google的论文阐述的原理来实现的3、MapReduce会将计算过程拆分成2个阶段:Map(映射)阶段和Reduce(规约)阶段工作过程在HDFS上有多个split分片,每个split会交由一个MapTask(其实就是一个线程)进行处理。Map处理...原创 2020-11-23 23:42:57 · 74 阅读 · 0 评论 -
0204 hadoop-HDFS文件上传工具配置
如果每次都需要通过代码传输局十分麻烦,通过工具可以连接到hdfs进行上传下载操作工具名1、安装HDFS+Explorer+Installer.msi如果在安装中报错:缺少xxx.NET,就安装NDP452-KB2901954-Web.exe 软件2、打开Cerebrata.AzureExplorer.UI.exe可能需要配置hosts文件文件上传时报错HttpRequestEx...原创 2020-11-23 23:59:53 · 402 阅读 · 0 评论 -
0203 hadoop-HDFS读写删除流程
写入请求读取,允许读取,请求第一个块地址,返回queue,从queue拿一个地址读取,请求下一个块并循环,读取结束,请求关流1. 客户端发起RPC请求到NameNode2. NameNode收到请求之后,先校验:校验是否有权限操作要写入的路径校验这个路径下是否有同名文件如果校验通过,那么NameNode给客户端返回一个信号表示允许写入客户端收到信号之后,就向NameNode发送...原创 2020-11-23 23:34:27 · 91 阅读 · 0 评论 -
0201 hadoop-HDFS介绍
HDFS基本介绍概述HDFS结构单机存储的问题HDFS基本结构Block数据块NameNode概述1、HDFS(Hadoop Distribute File System)是Hadoop提供的一套分布式文件存储系统 【很多框架的底层都是利用hdfs来存数据】2、HDFS是Doug根据Google的论文(GFS)来仿照实现的HDFS结构单机存储的问题文件太大,单机无法存储;备份耗时太多...原创 2020-11-23 23:34:52 · 254 阅读 · 0 评论 -
0102 hadoop-配置文件,配置参数
hdfs-site.xml配置项配置说明默认值修改值dfs.blocksize配置块大小128Mcore-site.xml配置项配置说明默认值配置说明hadoop.tmp.dirnamenode元数据存储目录/tmp/home/software/hadoop-2.7.1/tmpfs.checkpoint.sizeedit...原创 2020-11-23 23:49:27 · 79 阅读 · 0 评论 -
0202 hadoop- HDFS命令
HDFS Web页面: ip:50070Hadoop fs - put 文件名 /hdfs路径Hadoop fs -get 文件名 本地路径Hadoop fs -rm 文件名原创 2020-11-23 23:47:41 · 43 阅读 · 0 评论 -
02 hadoop安装
hadoop安装部署单机模式:只能启动MapReduce伪分布式:能启动HDFS、MapReduce、Yarn的大部分功能伪分布式配置文件完全分布式:能启动Hadoop的所有功能安装hadoop的过程中需要配置的配置文件包括:单机模式:只能启动MapReduce伪分布式:能启动HDFS、MapReduce、Yarn的大部分功能环境centos6关闭防火墙service iptable...原创 2020-11-23 23:51:42 · 120 阅读 · 0 评论 -
01 hadoop入门简介
大数据的6V特性1. 数据体量大。中小型公司的数据量在TB级别,大型公司的数据量是PB级别(京东每天的日志量达到2.5PB-3PB之间) 2. 数据的种类和来源多样化,致使处理手段越来越多样化 3. 数据增长越来越快。互联网的出现及发展使得信息传播速度越来越快 4. 数据的价值密度越来越低。价值密度是所需要的信息/信息的总量。单类数据的增长速度小于信息总量的增长速度 5. 数据的质量/真...原创 2020-11-23 23:33:33 · 119 阅读 · 0 评论