hadoop
文章平均质量分 62
AuroraPetard
这个作者很懒,什么都没留下…
展开
-
sparkStreaming 写入 hdfs
1.saveAsTextFile value.repartition(1).map(_.mkString(",")).foreachRDD(rdd => { rdd.saveAsTextFile("hdfs://localhost:8020/log/" + System.currentTimeMillis())saveAsTextFile不支持追加。如果使用固定文件名调用,则每次都会覆盖它。 我们每次都可以saveAsTextFile(path+timestamp(System.cur原创 2020-08-07 22:21:47 · 3064 阅读 · 1 评论 -
多种语言版本的wordcount
shell :cat xxx | sort | uniq -c | awk '{print $2,$1}'spark:scala> sc.textFile("/home/lzq/test").map((_,1)).reduceByKey(_+_).sortBy(_._1,false).collectres0: Array[(String, Int)] = Array((z...原创 2020-01-22 14:58:16 · 214 阅读 · 0 评论 -
mr local run debug
只需要将main方法即driver中的下面几句去掉加注释即可,即表示在本地运行 // 设置采用yarn框架来运行程序 conf.set("mapreduce.framework.name", "yarn");// 设置yarn的主机名 conf.set("yarn.resourcemanager.hostname", "mini0原创 2018-04-03 23:24:12 · 131 阅读 · 0 评论 -
mr run permission deny
mr运行时hadoop默认按上传至hdfs的用户名决定,所以客户端api 可用 Configuration conf = new Configuration();// conf.set("fs.defaultFS","hdfs://mini01:9000"); fs = FileSystem.get(new URI("hdfs://mini01:9000原创 2018-04-04 16:04:37 · 149 阅读 · 0 评论 -
mr partitioner
Map Partitioner Reducemaptask执行后,分区采用hashPartitioner为默认方法分区,其实现了partitioner,通过getPartitioner方法 key.hashcode%numReduceTask,返回分区号保证了同key的到同一个分区里面,因为同一个key的hashcode是相同的但有时需要重写partitioner来实现业务原创 2018-03-29 18:38:38 · 300 阅读 · 2 评论 -
mr切片
每个切片对应一个maptask,由fileinputformat的getsplits()方法完成首先 获得hdfs待处理文件的路径,setinputpath,遍历路径下的文件,获取文件的大小,与默认block大小128M相比较超过默认值,则切下128M,即满128M切为一块,到最后不满128M自己为一块,大体将切片规划写入一个文件,然后传给yarn,启动mrappmaster原创 2018-03-28 18:42:50 · 573 阅读 · 0 评论 -
自定义封装对象mapred及流量分析
分析上行 下行流量,并求总流量,输入输出,key upFlow downFlow 三个对象所以 需要包装一下,package com.qq.bd;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.Path;import org.apache.hadoop.io.Lon原创 2018-03-28 17:30:22 · 128 阅读 · 0 评论 -
idea wordcount
mapper /*KEYIN:默认是mr框架所读到的一行文本的起始偏移量,longVALUEIN:默认是mr所读到的一行文本的内容KEYOUT:是用户自定义逻辑处理完成后输出数据中的key stringVALUEOUT:是用户自定义逻辑处理完成后输出数据中的value,在此处是单词次数 */public class wordcountmapp extends MapperL原创 2018-03-26 16:51:23 · 274 阅读 · 0 评论 -
mr 运行在yarn集群流程分析
客户端即jar 提交到集群上面,运行jar包main方法,job.submit() 就会生成一个代理对象,yarnrunner 会和resourceManager进行通信,实则rpc调用,申请提交一个application对集群来说jar程序就相当与application,原创 2018-04-02 18:48:32 · 848 阅读 · 0 评论 -
客户端提交mr job源码流程分析
job=job.getinstance获得job对象job.set 添加configuration等配置参数job.waitforcomplete()源码内部实则调用submit()方法之后jobsubmiter中有个成员cluster cluster中又有个成员proxy代理对象,帮助提交到yarn上去,yarnrunnable通过yarnrunnable拿到一个提交资源的路径s原创 2018-03-29 15:18:51 · 335 阅读 · 0 评论 -
mr join
一句sql就能解决的事,package com.zz.bd;import org.apache.commons.beanutils.BeanUtils;import org.apache.hadoop.io.LongWritable;import org.apache.hadoop.io.NullWritable;import org.apache.hadoop.io.Text;原创 2018-04-05 16:50:44 · 215 阅读 · 0 评论 -
mr之reduce端groupingcomparator
在分片进入reduce之前可以通过groupingcomparator自定义为相同的一组key常用在使具有相同的id号的bean看做相同的key,即一个bean是一个对象,默认情况下reduce认为一个bean就是一组首先需要定义一个类来extendswritablecomparator,最后在main方法中job.setgroupingcomparator()packag原创 2018-04-11 17:09:10 · 256 阅读 · 0 评论 -
mr outputformat
此处没有reduce即map处理后直接输出,那么也不会经过shuffle 所以进来是什么顺序,输出就是什么数据默认输出为TextOutputformat,既然要自定义输出就要extends FileOutputFormat情景:分析日志根据url去相应数据库查找,如果查找到内容就把内容添加到url后面,并输出到hdfs指定目录如果没有查找到内容,则在url后面添加toCrawl待爬字段再输出到hd...原创 2018-04-12 16:53:32 · 151 阅读 · 0 评论 -
NN Yarn HA 共用datanode safemode
namenode+secondaryNamenode fsimage持久化+edit日志,处理操作放在edit里面,一段时间过后,edit文件数量巨大,需合并在SN上面,SN将image+edit下载到本地 合并在内存变成一个大的全的image,合并完成,返回给NN替换原来的image但,一旦NN宕机,就不能提供服务,所以要两个namenode,一个active一个是standby数据同步原创 2018-04-18 17:06:31 · 172 阅读 · 0 评论 -
mr参数优化
MapReduce重要配置参数11.1 资源相关参数//以下参数是在用户自己的mr应用程序中配置就可以生效(1)mapreduce.map.memory.mb:一个MapTask可使用的资源上限(单位:MB),默认为1024。如果MapTask实际使用的资源量超过该值,则会被强制杀死。(2)mapreduce.reduce.memory.mb:一个ReduceTask可原创 2018-04-20 15:03:37 · 1338 阅读 · 0 评论 -
HA配置
hadoop-env.shexport JAVA_HOME=/opt/jdk-9.0.4core-site.xml fs.defaultFS hdfs://bi hadoop.tmp.dir /root/hdpdata原创 2018-04-20 18:23:02 · 258 阅读 · 0 评论 -
BD federation
HA+HA=federationcore-site.xmlfs.defaultFSviewfs:///fs.viewfs.mounttable.default.link./bihdfs://bi/fs.viewfs.mounttable.default.link./dthdfs://dt/hadoop.tmp.di原创 2018-04-21 18:00:41 · 176 阅读 · 0 评论 -
It looks like you are making an HTTP request to a Hadoop IPC port. This is not the correct port for
管理界面:http://localhost:8088NameNode界面:http://localhost:50070原创 2018-04-23 15:17:24 · 5133 阅读 · 1 评论 -
hadoop 常用命令
hdfsnamenode-format 格式化 namenodehadoop fs -put /test 1.txt /input 上传文件jps 查看进程hadoop 多节点位置需要一致Retrying after 10 seconds. Reason: Execution of '/usr/hdp/current/hadoop-hdfs-namenode/bin...原创 2019-05-23 17:02:24 · 459 阅读 · 0 评论 -
mr 过程
默认TextInputFormat 》 fileinputformat》inputformat map partitioner compare reduce outputformatmr 之间总称为shuffle````RecordReader 是 inputformat中的成员变量 中有方法read() 返回一个kv对自定义mapper之后 到outputCollector然后...原创 2018-03-31 12:24:42 · 474 阅读 · 0 评论 -
hdfs client api
public class HdfsClient { FileSystem fs = null; @Before public void init() throws Exception { Configuration conf = new Configuration();// conf.set("fs.defaultFS","hdfs://m原创 2018-03-23 22:22:47 · 331 阅读 · 0 评论 -
定时采集日志信息到hdfs
1 #! /bin/bash#set java env#直接export 是为了防止ssh远程登录无法找到也可#source /etc/profileexport JAVA_HOME=/opt/jdk-9.0.4export JRE_HOME=${JAVA_HOME}/jreexport CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME原创 2018-03-23 22:02:39 · 739 阅读 · 0 评论 -
hadoop idea run
from http://blog.csdn.net/u010171031/article/details/53024516首先我们需要新建一个java工程用于开发Mapper与Reducer,同时我们也需要导入hadoop的依赖包,这些包可以在hadoop的 share/hadoop 目录下找到,你可以把这些包单独取出来作为之后项目的备用。打开Project Structure原创 2018-03-18 00:34:20 · 230 阅读 · 0 评论 -
ssh免密码登陆
配置ssh免登陆1.进入.ssh文件夹#cd ~#cd .ssh#ls -al 2.生成一对密钥,一个公钥一个私钥,非对称加密#ssh-keygen -t rsa 三次回车后,ls查看发现生成了两个文件,id_rsa(私钥)和id_tsa.pub(公钥)3.把公钥拷贝给自己,自己就可以免登陆自己。用cp命令创建一个authorized_keys(文件名不能改)在原创 2017-09-20 20:16:35 · 216 阅读 · 0 评论 -
mr refuse connection error
用eclipse运行出错,两种解决办法1 将core-site中的端口改为error log中的那个端口2 url后添加9000主要原因url未加端口hdfs://localhost:9000/input/file1.txt原创 2017-11-18 20:37:14 · 188 阅读 · 0 评论 -
MRDriver
FileInputFormat.setInputPaths(job, new Path(args[0])); FileOutputFormat.setOutputPath(job, new Path(args[1])); System.exit(job.waitForCompletion(true)? 0 : 1);原创 2017-10-14 23:47:40 · 215 阅读 · 0 评论 -
yarn下的MR过程
1. 全分布式Hadoop启动和停止时,进程的启停顺序Java代码 [hadoop@hadoop sbin]$ ./start-all.sh This script is Deprecated. Instead use start-dfs.sh and start-yarn.sh Starting namenodes on [hadoop.master] hadoo原创 2017-10-18 21:25:45 · 205 阅读 · 0 评论 -
MR过程
1 HDFS简介1.1 Hadoop 2.0介绍Hadoop是Apache的一个分布式系统基础架构,可以为海量数据提供存储和计算。Hadoop 2.0即第二代Hadoop系统,其框架最核心的设计是HDFS、MapReduce和YARN。其中,HDFS为海量数据提供存储,MapReduce用于分布式计算,YARN用于进行资源管理。Hadoop 1.0和Hadoop 2.0的结构对比:原创 2017-10-18 15:08:52 · 655 阅读 · 0 评论 -
namenode secondarynamenode
namenode负责记录整个集群文件的位置,block具体放在哪台机器上,相当于一个中央账本,客户端每次操作都要经过namenode,可见namenode的重要性,原创 2018-03-19 19:36:31 · 185 阅读 · 0 评论 -
bd集群
1 hadoop-env.sh javahome 为全路径,不可为¥PATH直接指定如¥JAVA_HOME,因开启需要通过ssh远程,不读取profile故没有JAVA_HOME2 core-site.xml 在configuration中添加 fs.defaultFS默认文件系统访问哪一个 hdfs://mini01:9000指定那一个原创 2018-03-14 16:40:27 · 358 阅读 · 0 评论 -
mr combine
combine 和reduce实际差不多都是extend reducer,但combine是在map里面对map结果进行合并所以在main方法中添加 job.setcombine(reduce.class)但,使用combine一定不能影响最后结果输出 适合用做合并wordcount等但,不能用作平均值 用户可以自定义重写的组件InputFormat ma原创 2018-03-31 17:37:16 · 632 阅读 · 0 评论 -
mr共同好友
package com.lq.bd;import org.apache.hadoop.io.LongWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Mapper;import org.apache.hadoop.mapreduce.Reducer;import java.io.I原创 2018-04-08 16:46:52 · 429 阅读 · 0 评论 -
BD
hdfs dfsadmin -report 查看集群状况,web界面有时不能很好的展现jps 查看hadoop等的进程原创 2018-03-21 19:21:00 · 230 阅读 · 0 评论 -
mr处理问题的一般思路
既然解决问题,那就避免不了要重写组件来实现自己的要求inputformat map (combine) partitioner compare (writerable) grouping reduce outputformatinputformat 默认 Textinputformat 读取一行文件map toString() split 切分提取 然后如果是合并类似的操原创 2018-04-07 18:46:14 · 552 阅读 · 0 评论 -
mr 实现 显示一个字段在各个文件中的数量
a.txt hello tomhello jerryb.txthello jerryhello jerrytom jerryc.txthello jerryhello tom最终结果 hello a.txt 2 b.txt 2 c.txt 2思路 将word+filename 作为一个key传入 经过mrchuli得下面原创 2018-04-07 18:29:53 · 167 阅读 · 0 评论 -
map join解决数据倾斜
采用直接在map端join,避免在reduce阶段数据倾斜maptask任务在运行时可以加载,其分布式缓存中的文件,即其工作目录中的文件// 将产品信息表放到每个maptask工作目录job.addCacheFile(new URI("/home/lzq/product.txt"));这样每个maptask都能够读取到此文件大概流程, 提前实例化Text等原创 2018-04-07 18:05:41 · 1491 阅读 · 0 评论 -
mr compare
package com.qq.bd;import org.apache.hadoop.io.LongWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Mapper;import org.apache.hadoop.mapreduce.Reducer;import java.io.I原创 2018-03-30 18:14:24 · 315 阅读 · 0 评论 -
hadoop2.7伪分布安装配置
安装java和ssh并配置ssh免密码可能会出错连不上yes回车然后有.ssh目录JAVA_HOME=/home/lzq/jdk1.8.0_144export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jarexport PATH=$JAVA_HOME/bin:$PATH原创 2017-09-22 02:13:59 · 362 阅读 · 0 评论