
bigdata_hadoop
乔治大哥
脚踏实地,仰望星空。
展开
-
MapReduce太慢了,记一次对它的调优建议。
代码调优 代码调优,主要是mapper和reducer中,针对多次创建的对象,进行代码提出操作。这个和一般的java程序的代码调优一样。mapper调优 mapper调优主要就是就一个目标:减少输出量。我们可以通过增加combine阶段以及对输出进行压缩设置进行mapper调优。 combine介绍: 实现自定义combine要求继承reducer...原创 2019-11-29 11:18:43 · 3086 阅读 · 0 评论 -
mapreduce,map后面跟map是什么操作???
今天在一个群里和网友争论一个问题。先说问题的起源,一网友说map后面跟map怎么实现?刚开始没细想,说了一个map跟map?reduce后跟map吧?然后就被怼了,什么呀?是map后跟reduce好吧?xxxx我去。。。说不知道map后跟reduce。。。我就跟他详细说了一下,然后怼这样写没意义?真是然后转移话题,我们说的map后跟map,我说一样呀,一样的道理...原创 2019-11-28 21:50:12 · 469 阅读 · 0 评论 -
清洗弹幕数据,去不相关的列和空值,<MapReduce>
原始数据:话不多说,直接上代码!老样子先pom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ...原创 2019-11-28 09:55:16 · 914 阅读 · 0 评论 -
浅析Hadoop的三个作业调度器
目前,Hadoop作业调度器主要有三种:资源调度器FIFO(先进先出)、Capacity Scheduler(容量调度器)和Fair Scheduler(公平调度器)。Hadoop2.7.2默认的资源调度器是Capacity Scheduler。具体设置详见:yarn-default.xml文件<property><description>The cl...原创 2019-11-26 18:20:21 · 776 阅读 · 0 评论 -
MapReduce 源码分析(一)准备阶段
MapReduce 源码分析本篇博客根据wordCount代码进行分析底层源码的。以下称它为WC类。package com.henu;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.IntWritable;import...原创 2019-11-19 21:34:44 · 266 阅读 · 0 评论 -
RunJar是什么进程?
RunJar:完成job的初始化,包括获取jobID,将jar包上传至hdfs等。在hadoopAPI中runjar类也是这样描述:原创 2019-11-05 13:55:44 · 11833 阅读 · 2 评论 -
yarn集群启动时,并不自动启动resoucemanager的原因
根据其命令的信息中看出:vi start-yarn.shStart all yarn daemons. Run this on master node.在一个resoucemanager的节点上运行start-yarn.sh,即可!!!原创 2019-11-03 21:09:18 · 793 阅读 · 0 评论 -
spark on yarn的未解之谜
对spark on yarn研究比较多的朋友都应该发现过你明明给executor申请了1GB内存,结果发现该executor占用了yarn的2GB内存。其实,对于spark的driver和executor在申请内存的时候有个计算公式:spark.yarn.am.memoryOverhead除了指定的申请资源外额外申请(yarn-client模式):AMmemory* 0.10,...原创 2019-11-03 20:40:19 · 176 阅读 · 0 评论 -
mapreduce中的组合key的排序问题
package com.henu;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.*;import org.apache.hadoop.mapreduce.Job;import org.apache.hadoop.mapre...原创 2019-10-30 14:26:39 · 720 阅读 · 0 评论 -
Hadoop企业优化
Hadoop企业优化1.1 MapReduce跑的慢的原因Mapreduce 程序效率的瓶颈在于两点:1.计算机性能CPU、内存、磁盘健康、网络2.I/O 操作优化(1)数据倾斜(2)map和reduce数设置不合理 combineTextinputformat,分区(3)map运行时间太长,导致reduce等待过久(4)小文件过多(5)spill(溢出)次...原创 2019-10-29 23:11:13 · 302 阅读 · 0 评论 -
电信信息日志使用mapreduce统计后进行value中的上行数据包排序
package com.henu;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.LongWritable;import org.apache....原创 2019-10-29 21:41:09 · 278 阅读 · 0 评论 -
电信信息日志使用mapreduce统计的两种方式
信息准备:数据信息:1363157985066 13726230503 00-FD-07-A4-72-B8:CMCC 120.196.100.82 i02.c.aliimg.com 24 27 2481 24681 2001363157995052 13826544101 5C-0E-8B-C7-F1-E0:CMCC 120.197.40.4 4 0 264 0 20013...原创 2019-10-29 20:56:49 · 435 阅读 · 0 评论 -
split分片主要源码解析
问题提出:无意间看到假如260M的文件在进行mapreduce时:在FileInputFormat.getSplits方法中对文件进行了Split,分成两块128M和132M。向吴老大咨询,吴老大说不可能,别拿博客说,用源码来证明。所以来了,老弟!!!split分片主要源码解析:public List<InputSplit> getSplits(JobContext job) ...原创 2019-10-29 18:58:03 · 809 阅读 · 0 评论 -
HadoopIO和javaIO的区别
Java的序列化是一个重量级序列化框架(Serializable),一个对象被序列化后,会附带很多额外的信息(各种校验信息,header,继承体系等),不便于在网络中高效传输。所以,hadoop自己开发了一套序列化机制(Writable),特点如下:1.紧凑紧凑的格式能让我们充分利用网络带宽,而带宽是数据中心最稀缺的资源2.快速进程通信形成了分布式系统的骨架,所以需要尽量减少序列...原创 2019-10-29 09:34:05 · 276 阅读 · 0 评论 -
hdfs中一个block块默认多大?
版本不同,默认大小不同。64M、128M都正确。在Apache Hadoop中默认是64M,Cloudera Hadoop版本中默认是128M。原创 2019-10-29 08:23:33 · 6040 阅读 · 0 评论 -
当分区数量与reducer task数量不一致时,会怎么样。
此刻的情形:vi george上传hdfs[root@henu1 ~]# hdfs dfs -put george /分区两个的WordCount:https://blog.youkuaiyun.com/qq_41946557/article/details/102785927可以看出分区为2,reducer task为2 。查看hdfs文件结果:[root...原创 2019-10-28 20:22:12 · 1384 阅读 · 2 评论 -
随机数文件,上传到hdfs的特定目录/logs下,用mr求和
随机数文件,上传到hdfs的特定目录/logs下,用mr求和随机数文件:pom.xml文件<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-i...原创 2019-10-28 19:53:20 · 275 阅读 · 0 评论 -
HDFS的Shell客户端操作
HDFS的Shell客户端操作[root@henu1 ~]# hdfs dfs启动集群[root@henu1 ~]# hdfs dfs -help mv[root@henu1 ~]# hdfs dfs -ls /[root@henu1 ~]# hdfs dfs -mkdir -p /user/hello[root@henu1 ~]# ...原创 2019-10-28 18:38:28 · 228 阅读 · 0 评论 -
idea下mapreduce的wordcount
idea下mapreduce的wordcountpom.xml<?xml version="1.0" encoding="UTF-8"?><project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:sch...原创 2019-10-28 18:09:58 · 843 阅读 · 0 评论 -
小便利——免密钥简单写法
免密码登录产生密钥ssh-keygen -t rsa 不断回车复制ssh-copy-id henu1验证ssh henu1原创 2019-10-01 21:30:41 · 194 阅读 · 0 评论 -
从架构设计、部署方式、使用方法、应用场景等方面,比较tfs、hdfs、fastdfs、Tachyon的异同
详细资料:TFS https://blog.youkuaiyun.com/qq_41946557/article/details/102753394Hdfs https://blog.youkuaiyun.com/qq_41946557/article/details/102753444fastdfs https://blog.youkuaiyun.com/qq_41946557/article/details...原创 2019-10-26 14:19:52 · 1157 阅读 · 0 评论 -
HDFS二次开发常见问题
HDFS二次开发常见问题问题描述客户开发了一个HDFS应用,此应用存在多个线程,需同时往HDFS组件上写数据。在业务运行时,发现有业务线程和HDFS交互时,报如下异常:......Exception in thread "main" java.io.IOException: Filesystem closedat org.apache.hadoop.hdfs.DFSClient....转载 2019-10-26 14:14:09 · 379 阅读 · 0 评论 -
分布式文件系统之ceph是什么?
概念:Ceph是一种为优秀的性能、可靠性和可扩展性而设计的统一的、分布式文件系统。官网:https://ceph.io/架构设计:支持三种接口:Object:有原生的API,而且也兼容Swift和S3的API。Block:支持精简配置、快照、克隆。File:Posix接口,支持快照。Ceph核心组件及概念介绍Monitor一个Cep...原创 2019-10-26 11:33:15 · 1538 阅读 · 0 评论 -
分布式文件系统之Tachyon是什么?
Tachyon概念:Tachyon是一个高性能、高容错、基于内存的开源分布式存储系统,并具有类Java的文件API、插件式的底层文件系统、兼容Hadoop MapReduce和Apache Spark等特征。Tachyon能够为集群框架(如Spark、MapReduce等)提供内存级速度的跨集群文件共享服务。Tachyon充分使用内存和文件对象之间的世代(Lineage)信息,因此...原创 2019-10-26 11:16:57 · 1687 阅读 · 0 评论 -
分布式文件系统之Fastdfs是什么?
Fastdfs概念:是一款类似Google FS的开源分布式文件系统,是纯C语言开发的。FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。FastDFS是专为互联网应用量身定做,目的是追求高性能和高拓展性。它可以...原创 2019-10-26 10:44:52 · 5483 阅读 · 0 评论 -
分布式文件系统之Hdfs是什么?
Hdfs概念:Hadoop 实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。 Hadoop是Apache Lucene创始人Doug Cutting开发的使用广泛的文本搜索库。它起源于Apache Nutch,后者是一个开源的网络搜索引擎,本身也是Luene项目的一部分。Aapche Hadoop架构是MapReduce算法的一种开源...原创 2019-10-26 10:05:42 · 2482 阅读 · 0 评论 -
分布式文件系统之Tfs是什么?
Tfs概念:TFS(Team Foundation Server)是一个高可扩展、高可用、高性能、面向互联网服务的分布式文件系统,主要针对海量的非结构化数据,它构筑在普通的Linux机器集群上,可为外部提供高可靠和高并发的存储访问。架构设计:一个TFS集群由两个NameServer节点(一主一备)和多个DataServer节点组成。以block(通常为64M,可配置)为单位存...原创 2019-10-26 10:03:18 · 2245 阅读 · 0 评论 -
浅析NameNode/DataNode/SecondaryNameNode源码注释
NameNode源码注释/********************************************************** * NameNode serves as both directory namespace manager and * "inode table" for the Hadoop DFS. There is a single NameNode...原创 2019-10-25 17:08:21 · 240 阅读 · 0 评论 -
NameNode和SecondaryNameNode工作机制
原创 2019-10-25 16:25:32 · 295 阅读 · 0 评论 -
HDFS的安全模式
HDFS的安全模式HDFS的安全模式安全模式是HDFS的一种工作状态,处于安全模式的状态下,只向客户端提供文件的只读视图,不接受对命名空间的修改;同时NameNode节点也不会进行数据块的复制或者删除,如:副本的数量小于正常水平。NameNode启动时,首先fsimage载入内存,并执行编辑日志中的操作。一旦文件系统元数据建立成功,便会创建一个空的编辑日志。此时,NameNode开始...转载 2019-10-25 13:12:41 · 182 阅读 · 0 评论 -
浅析HDFS的副本存放策略
在大多数情况下,副本系数是3,HDFS的存放策略是:将一个副本存放在本地机架节点上,一个副本存放在同一个机架的另一个节点上,最后一个副本放在不同机架的节点上。简单说:在我们的笔记本中,搭建hadoop集群,可以理解成是同一个机架,上传大文件时,也就是要分区存储 时,整个过程也就是hdfs的写流程。Hadoop 03_Hadoop1.0核心https://blog.c...原创 2019-10-21 19:35:32 · 2384 阅读 · 1 评论 -
Hadoop 01_基础知识
1.1 Hadoop是什么1)Hadoop是一个由Apache基金会所开发的分布式系统基础架构集群:若干机器共同完成任务分布式:应用的拆分,独立部署和运行集群不一定是分布式,分布式一定是集群2)主要解决,海量数据的存储和海量数据的分析计算问题。3)广义上来说,HADOOP通常是指一个更广泛的概念——HADOOP生态圈1.2Hadoop的优势(分布式基础架构)技术选...原创 2019-09-26 22:27:32 · 308 阅读 · 0 评论 -
Hadoop 02_初学必知
Hadoop简介:http://hadoop.apache.org分布式存储系统HDFS(Hadoop Distributed File System )POSIX分布式存储系统提供了 高可靠性、高扩展性和高吞吐率的数据存储服务分布式计算框架MapReduce分布式计算框架(计算向数据移动)具有 易于编程、高容错性和高扩展性等优点。分布式资源管理框架YARN(Y...原创 2019-09-27 21:47:43 · 220 阅读 · 0 评论 -
Hadoop 03_核心:读写流程
Hadoop1.0核心HDFS读写流程:写流程:读流程:------------------------------------------------------------------------------安全模式namenode启动的时候,首先将映像文件(fsimage)载入内存,并执行编辑日志(edits)中的各项操作。一旦在内存中成功建立...原创 2019-09-27 22:08:21 · 424 阅读 · 2 评论 -
Hadoop 04_Hadoop2.0
Hadoop1.0的弊端导致人们再次改进技术Hadoop 2.0产生背景Hadoop 1.0中HDFS和MapReduce在高可用、扩展性等方面存在问题HDFS存在的问题(2个)NameNode单点故障,难以应用于在线场景 HANameNode压力过大,且内存受限,影扩展性 FMapReduce存在的问题响系统JobTracker访问压力大,影响系统扩...原创 2019-09-27 22:10:06 · 233 阅读 · 0 评论 -
Hadoop 05_MapReduce1.0
MapReduce1.0为什么叫MapReduce?MR原语:map + reduce输入(格式化k,v)数据集àmap映射成一个中间数据集(k,v)àreduce (sql)“相同”的key为一组,调用一次reduce方法,方法内迭代这一组数据进行计算 (类似的sql)排序比较遍历计算各种维度花销,音乐, 其他MapReduce:MapT...原创 2019-09-27 22:28:48 · 551 阅读 · 0 评论 -
Hadoop 06_MapReduce2.0(YARN)
Hadoop YARN (MRv2)MapReduce2.0MRv2:On YARNYARN:解耦资源与计算ResourceManager-主,核心-集群节点资源管理NodeManager-与RM汇报资源-管理Container生命周期-计算框架中的角色都以Container表示Container:【节点NM,CPU,MEM,I/O大小...原创 2019-09-28 14:45:03 · 327 阅读 · 0 评论 -
Hadoop _HDFS_JavaAPI进行读写创建
package com.henu.first;import java.io.BufferedInputStream;import java.io.FileInputStream;import java.io.IOException;import java.io.InputStream;import org.apache.hadoop.conf.Configuration;im...原创 2019-09-30 16:49:31 · 230 阅读 · 0 评论 -
Hadoop 00_hadoop伪分布式,完全分布式,HA搭建
伪分布式 (single node setup)---------------------------安装jdk、配置环境变量,测试rpm -i jdk-7u67-linux-x64.rpmcd /usr/java/jdk1.7.0_67/vi + /etc/profile export JAVA_HOME=/usr/java/jdk1.7.0_67 PATH=$PA...原创 2019-09-30 17:04:37 · 225 阅读 · 0 评论 -
Hadoop 07_MapReduce运行的三种方式
Mapreduce运行3种方式本地方式运行:pc环境1.1、将 Hadoop安装本地解压1.2、配置 Hadoop的环境变量添加%HADOOP_HOME%修改%PATH%添加%HADOOP_HOME%/bin;%HADOOP_HOME%/sbin3、在解压的 Hadoop的bin目录下添加 winutils.exe工具Java工程2.1、jdk一定要使用自己的jdk、不要使用 e...原创 2019-10-02 13:28:33 · 285 阅读 · 0 评论