自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(11)
  • 资源 (1)
  • 收藏
  • 关注

原创 shuffle阶段数据的压缩机制

在shuffle阶段,可以看到数据通过大量的拷贝,从map阶段输出的数据,都要通过网络拷贝,发送到reduce阶段,这一过程中,涉及到大量的网络IO,如果数据能够进行压缩,那么数据的发送量就会少得多,那么如何配置hadoop的文件压缩呢,以及hadoop当中的文件压缩支持哪些压缩算法呢??接下来一 一细看 MapReduce的执行流程 为什么要配置压缩: MapReduce input mappe...

2019-11-20 08:40:21 2606

原创 MapReduce一次读取多个文件(获取数据所在文件的名称)

关键代码: 在Map代码中添加一下代码,可以获取每条数据所属的文件名 查看Hadoop支持的压缩格式 //获取所属的文件名称 FileSplit inputSplit = (FileSplit)context.getInputSplit(); String Filename = inputSplit.getPath().getName(); //FIlename是文件名称 ...

2019-11-19 21:13:07 3541

原创 如何能让Map端和Reduce端达到最优?

Map端的最高效率是 尽量减少环形缓冲区 的次数(减少磁盘IO 的使用次数) 如何能够减少环形缓冲区flush的次数: 1、 加大环形缓冲区的内存 2、 增大缓冲区阈值的大小 (考虑剩余的空间是不是够系统使用) 3、 对输出的进行压缩(压缩-解压的过程会消耗CPU) Reduce端的最高效率是 1尽量减少环形缓冲区flush的次数 2、尽量将所有的数据在内存中计算 在网络带宽、磁盘IO是瓶颈的前...

2019-11-19 21:04:11 2394

原创 MapReduce的执行流程

map阶段处理的数据如何传递给reduce阶段,是MapReduce框架中最关键的一个流程,这个流程就叫shuffle。 shuffle: 洗牌、发牌——(核心机制:数据分区,排序,分组,ComBine,合并等过程) shuffle是Mapreduce的核心,它分布在Mapreduce的map阶段和reduce阶段。一般把从Map产生输出开始到Reduce取得数据作为输入之前的过程称作shuffl...

2019-11-19 21:00:43 3003

原创 MapReduce并行计算框架求WordCount单词总和

**需求: 计算data.txt文档中每个单词出现的次数** zhangsan,lisi,wangwu zhaoliu,qianqi,niuba zhangsan,wangwu zhaoliu,niuba 第一步:创建maven项目 第二步:导pom.xml依赖的包 <repositories> <repository> <id...

2019-11-15 22:16:56 2512

原创 java中1+1d/5和1+1/5什么区别

主要区别就是数据类型不同. 1+1d/5的结果是1.2, 是double类型. 因为1d就是double类型,1d/5结果自动提升成double类型,1+1d/5结果也自动提升成double类型. . 1+1/5的结果1, 是int类型, 因为1/5是整除(会丢失小数部分的精度…) . 两边操作数都是int类型. 最后在加上1还是int类型.所以结果就是int类型. java参考代码如下 publ...

2019-11-14 11:07:22 2949

原创 HDFS中javaAPI创建文件写入内容报错:INFO hdfs.DFSClient: Exception in createBlockOutputStream

19/11/11 20:33:26 INFO hdfs.DFSClient: Exception in createBlockOutputStream java.net.ConnectException: Connection refused: no further information at sun.nio.ch.SocketChannelImpl.checkConnect(Na...

2019-11-11 20:47:08 3608

原创 Hadoop中新增节点

随着公司业务的增长,数据量越来越大,原有的数据节点的容量已经不能满足存储数据的需求,需要在原有集群基础上动态添加新的数据节点。 准备工作: 1.配置JDK 2.配置SSH免密钥 3.关闭防火墙 4.关闭selinux 5.修改主机名 6.修改hosts 注释:新增节点叫node04,namenode是node01 准备新节点 第一步:复制一台新的虚拟机出来 将我们纯净的虚拟机复制一台出来,作为我们...

2019-11-11 08:59:38 2702 1

原创 Hadoop中的HDFS学习总结

博主自己学习hdfs的一些笔记,整理了一下(有什么不懂的可以问我。尽量解答,希望对大家有帮助) Hadoop组成 Hadoop HDFS:一个高可靠、高吞吐量的分布式文件系统,对海量数据的存储。 Hadoop MapReduce:一个分布式的资源调度和离线并行计算框架。 Hadoop Yarn:基于HDFS,用于作业调度和集群资源管理的框架。 Hadoop Common:Hadoop工具包...

2019-11-10 16:55:16 3743

原创 SecondaryNameNode工作原理

前提:未使用secondarynameNode时,NameNode工作中会产生fsimage 和edtes,edits日志过大,直接导致集群二次开机恢复原本状态过慢,引起开机时间过长。 作用:加快集群二次启动的速度(减小集群二次启动的时间) ​ 定期合并edits和fsImage(如果没有配置SecondaryNameNode由NameNode自己完成) ​ 防止edits日志文件过...

2019-11-05 21:06:44 2707 1

原创 HDFS读取和写入数据过程的原理

文件的写入过程 这里的FSDatainputStream改成outputstream 第一步:客户client 发送文件上传的请求给NameNode,NameNode去检查目标文件是否存在,父目录是否存在,返回是否上传 第二步:接受指令 , 给NameNode发送Block1可以传输到datanode的那些服务器上 第三步:NameNode根据当前配置和机架感知原理来进行分配,如返回d...

2019-11-04 20:37:42 2932

Git-2.20.1-64-bit.rar

Git 是一个开源的分布式版本控制系统,用于敏捷高效地处理任何或小或大的项目。 Git 是 Linus Torvalds 为了帮助管理 Linux 内核开发而开发的一个开放源码的版本控制软件。

2020-06-17

空空如也

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

TA关注的人

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