
Hadoop
镜子里的宇宙
这个作者很懒,什么都没留下…
展开
-
MapReduce 的 combiner
MapReduce 的 combiner原理代码实现原理每一个 map 都可能会产生大量的本地输出,Combiner 的作用就是对 map 端的输出先做一次合并,以减少在 map 和 reduce 节点之间的数据传输量,以提高网络IO 性能,是 MapReduce 的一种优化手段之一。combiner 是 MR 程序中 Mapper 和 Reducer 之外的一种组件combiner 组件的父类就是 Reducercombiner 和 reducer 的区别在于运行的位置:Combiner 是原创 2020-12-11 10:17:02 · 437 阅读 · 0 评论 -
hadoop_HA集群搭建(详细)
hadoop_HA集群搭建修改主机名修改IP修改主机名和IP的映射关系关闭防火墙ssh免密码登陆安装JDK,配置环境变量等集群时间同步集群部署节点角色的规划(3节点)安装配置zookeeper集群安装配置hadoop集群修改core-site.xml修改hdfs-site.xml修改mapred-site.xml修改yarn-site.xml修改slaves配置免密码登陆将软件拷贝到所有节点启动zookeeper集群启动journalnode格式化namenode格式化ZKFC(在active上执行即可)启原创 2020-10-22 10:02:45 · 1080 阅读 · 0 评论 -
hadoop_MapReduce yarn
yarnYarn通俗介绍Yarn基本架构Yarn三大组件介绍Yarn运行流程Yarn 调度器Scheduleryarn多租户资源隔离Yarn通俗介绍Apache Hadoop YARN (Yet Another Resource Negotiator,另一种资源协调者)是一种新的 Hadoop 资源管理器,它是一个通用资源管理系统和调度平台,可为上层应用提供统一的资源管理和调度。支持多个数据处理框架(MapReduce Spark Storm等)。具有资源利用率高、运行成本底、数据共享等原创 2020-11-11 20:32:41 · 432 阅读 · 0 评论 -
hadoop_MapReduce 多job串联 多个reduce
job串联适用场景代码实现适用场景一个稍复杂点的处理逻辑往往需要多个mapreduce程序串联处理,多job的串联可以借助mapreduce框架的JobControl实现代码实现仅提供主类代码:package Reduce1_Reduce2;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.LongWritable;import org.apache.hadoop.io.Text;import org.apach原创 2020-11-11 20:05:04 · 646 阅读 · 0 评论 -
hadoop_MapReduce 自定义outputFormat
自定义outputFormat适用场景分析实现思路代码实现:自定义一个outputformat定义RecordWriter类定义Map定义Driver主类适用场景将最终的数据分开到不同的文件夹下面去分析程序的关键点是要在一个mapreduce程序中根据数据的不同,输出两类结果到不同目录,这类灵活的输出需求可以通过自定义outputformat来实现实现思路实现要点:1、在mapreduce中访问外部资源2、自定义outputformat,改写其中的recordwriter,改写具体输出数据原创 2020-11-06 14:48:33 · 163 阅读 · 0 评论 -
Hadoop_MapReduce 自定义InputFromat合并小文件
自定义InputFromat适用场景分析实现思路代码实现:自定义InputFromat自定义RecordReader定义map定义主类适用场景无论hdfs还是mapreduce,对于小文件都有损效率,实践中,又难免面临处理大量小文件的场景,此时,就需要有相应解决方案分析小文件的优化无非以下几种方式:1、在数据采集的时候,就将小文件或小批数据合成大文件再上传HDFS2、在业务处理之前,在HDFS上使用mapreduce程序对小文件进行合并3、在mapreduce处理时,可采用combine原创 2020-11-05 21:23:50 · 363 阅读 · 1 评论 -
hadoop_MapReduce map端join算法实现
Join算法原理阐述实现示例原理阐述适用于关联表中有小表的情形;可以将小表分发到所有的map节点,这样,map节点就可以在本地对自己所读到的大表数据进行join并输出最终结果,可以大大提高join操作的并发度,加快处理速度实现示例map端的初始化方法当中获取缓存文件:package MapJoin;import org.apache.hadoop.filecache.DistributedCache;import org.apache.hadoop.fs.FSDataInputStre原创 2020-11-04 20:49:46 · 230 阅读 · 0 评论 -
hadoop MapReduce 压缩算法
压缩算法压缩好处hadoop支持的压缩格式各种压缩算法对应使用的java类常见的压缩速率比较压缩代码配置全局的MapReduce压缩压缩好处节约磁盘空间加速数据在网络和磁盘上的传输hadoop支持的压缩格式前面hadoop的版本经过重新编译之后,可以看到hadoop已经支持所有的压缩格式了,剩下的问题就是该如何选择使用这些压缩格式来对MapReduce程序进行压缩可以使用bin/hadoop checknative 来查看编译之后的hadoop支持的各种压缩,如果出现openssl为fa原创 2020-11-03 20:32:55 · 209 阅读 · 0 评论 -
分布式计算框架MapReduce 理论
分布式计算框架MapReduceHadoop组成什么是计算框架什么是并行计算框架什么是分布式计算理解MapReduce思想MapReduce并行计算Hadoop -MapReduce设计构思Hadoop组成Hadoop HDFS:一个高可靠、高吞吐量的分布式文件系统,对海量数据的存储。Hadoop MapReduce:一个分布式的资源调度和离线并行计算框架。Hadoop Yarn:基于HDFS,用于作业调度和集群资源管理的框架。什么是计算框架是指实现某项任务或某项工作从开始到结束的计算原创 2020-11-13 08:58:26 · 921 阅读 · 4 评论 -
hadoop_hdfs 新增节点(服务器)与 删除节点(退役服务器)超详细
hdfs 新增节点(服务器)与 删除节点(服务器)需求基础准备新节点需求基础随着公司业务的增长,数据量越来越大,原有的数据节点的容量已经不能满足存储数据的需求,需要在原有集群基础上动态添加新的数据节点。准备新节点这里的新节点为node04第一步:复制虚拟机 或者 新建一个虚拟机Linux复制虚拟机及网卡的配置第二步:关闭防火墙,关闭selinux关闭防火墙:service iptables stop关闭selinux:(需要重启才能生效,我们稍后重启)vim /etc/seli原创 2020-10-15 09:45:18 · 2755 阅读 · 0 评论 -
hadoop_hdfs namenode故障恢复(namenode中fsimage与edits文件损坏)
NameNode故障恢复原理流程namenode保存fsimage的配置路径namenode保存edits文件的配置路径secondaryNamenode保存fsimage文件的配置路径secondaryNamenode保存edits文件的配置路径故障恢复代码解决方案原理使用为什么使用故障恢复的原理流程secondaryNamenode对namenode当中的fsimage和edits进行合并时,每次都会先将namenode的fsimage与edits文件拷贝一份过来,所以fsimage与edit原创 2020-10-14 21:03:15 · 2725 阅读 · 0 评论 -
hadoop_hdfs SecondaryNameNode详解 辅助管理FSImage与Edits原理 作用
SecondaryNameNode辅助管理FSImage与Edits原理原理由于editlog记录了集群运行期间所有对HDFS的相关操作,所以这个文件会很大。集群关闭后再次启动时会将Fsimage,editlog加载到内存中,进行合并,恢复到集群的。由于editlog文件很大所有,集群再次启动时会花费较长时间。为了加快集群的启动时间,所以使用secondarynameNode辅助NameNode合并Fsimage,editlog。原理1、 secnonaryNN通知NameNode切换edi原创 2020-10-14 20:47:27 · 2088 阅读 · 0 评论 -
Hadoop_hdfs 初级命令、高级命令及快照snapShot管理
hdfs-高级命令文件夹内文件数量限制文件夹内存储空间大小限制进入退出安全模式文件夹内文件数量限制设置数量:hdfs dfsadmin -setQuota 2 /aa取消设置:hdfs dfsadmin -clrQuota /aa文件夹内存储空间大小限制设置大小:hdfs dfsadmin -setSpaceQuota 100M /aa取消设置:hdfs dfsadmin -clrSpaceQuota /aa进入退出安全模式查看状态:hd原创 2020-10-12 17:59:44 · 3613 阅读 · 0 评论 -
hadoop_hdfs 理论、数据读取、写入详解,存放机制 周期
HDFS全称Hadoop Distribute File System : Hadoop分布式文件系统主要作用:即存储海量数据为什么能存储海量数据??因为其空间大,空间大的原因为服务器多、磁盘多。且支持扩展HDFS组成部分 管理者-Master NameNode 集群中有1-2个,用于管理集群中的工作者 工作者-Slave DataNode 集群中有 辅助管理者工作 辅助管理 SecondaryNameNode 集群中有0-1 只负责辅助NameNo原创 2020-10-09 15:17:36 · 4605 阅读 · 0 评论 -
hadoop_hdfs javaAPI 操作
javaAPI操作创建maven工程并导入jar包获取FileSystem的几种方式实现数据增、删、改、查、上传、下载涉及的Class使用API对HDFS上的目录和数据进行增、删、改、查操作创建maven工程并导入jar包由于cdh版本的所有的软件涉及版权的问题,所以并没有将所有的jar包托管到maven仓库当中去,而是托管在了CDH自己的服务器上面,所以我们默认去maven的仓库下载不到,需要自己手动的添加repository去CDH仓库进行下载,以下两个地址是官方文档说明,请仔细查阅cd原创 2020-10-20 18:24:50 · 168 阅读 · 0 评论 -
hadoop_hdfs 权限问题以及伪造用户
首先停止hdfs集群,在主节点机器上执行以下命令cd /export/servers/hadoop-2.6.0-cdh5.14.0sbin/stop-dfs.sh修改主节点机器上的hdfs-site.xml当中的配置文件cd /export/servers/hadoop-2.6.0-cdh5.14.0/etc/hadoopvim hdfs-site.xml改:<property> <name>dfs.permissions</na.原创 2020-10-20 19:01:18 · 265 阅读 · 0 评论 -
hadoop_HA MapReduce 类定义及计数器
MapReduce统计数据中每个出现的单词总数上传文本到hdfs文件系统中idear创建maven项目导包定义一个mapper类定义一个reducer类定义一个主类,用来描述job并提交job将代码打包成jar包上传到服务器上运行运行结果上传文本到hdfs文件系统中hdfs dfs -mkdir /wordcounthdfs dfs -put /export/servers/wordcount.txt /wordcount/idear创建maven项目导包将代码复制到pom文件中:&l原创 2020-10-24 13:17:24 · 164 阅读 · 0 评论 -
Hadoop集群搭建(超详细)
dfgkjsdfgksdfjglsdfjg(fgsdfgsdfg)gsdfgsdgsdfgsghsfgsdfgsdgfghdfsgdfsdgdfgsdfgdfgsdfg(fgsdfgsdfg)yujryfujfjfghjghjfghjghjfghjfghjfghjfghjfghjfghjfghjfgjfghjfggsdfgsdgsdfgsghjgfhjfghjghjfghjfghjfghjfghjfgjfghjfghjfgj原创 2020-10-08 16:21:42 · 4505 阅读 · 1 评论 -
hadoop_机架感知_详细搭建配置
机架感知需要人为进行配置,编写Python脚本“RackAware.py”。内容为服务器IP与交换机的对应关系。(开源hadoop,使用RackAware.sh)#!/usr/bin/python #-*-coding:UTF-8 -*- import sys rack = { "12.12.3.1":"SW6300-1", "12.12.3.2":"SW6300-1", "12.12.3.3":"SW6300-1", .原创 2020-10-10 10:23:46 · 3482 阅读 · 0 评论