
Hadoop
文章平均质量分 77
Hadoop学习笔记
Joy CR
欢迎关注我的公众号: 小秋的博客
https://blog.youkuaiyun.com/xiaoqiu_cr
https://github.com/crr121
https://segmentfault.com/u/chenrong_flying
联系邮箱:rongchen633@gmail.com
展开
-
reduce端的连接实现
背景:现在有两张表:customer、order,他们有个共同的cid,需要通过cid实现两张表的连接,并且通过cid进行分组排序思路:首先通过mapper从context里面获取到文件切片,从文件切片中得到路径,从而判断是customer.txt,还是order.txt然后依次读取每行内容,并且为每行数据打上一个标签,0表示customer,1表示order,最后组成一个新的组合ke...原创 2018-08-19 11:23:45 · 317 阅读 · 0 评论 -
利用mapper实现表的连接
现在有两张表customer和order,需要通过customerid实现customer和order的连接mapperpackage com.cr.JoinMap;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FSDataInputStream;import org.apach...原创 2018-08-19 11:23:57 · 1075 阅读 · 0 评论 -
Hadoop高可用high availability 集群配置
1、为什么配置高可用HA单点故障:在Hadoop2.0.0之前,每个Hadoop集群只有一个namenode节点,一旦该节点发生了故障,那么整个集群将瘫痪掉,只有重新启动该节点,或者重新移动到另外的节点,才能够重新运行该节点,这也就是所谓的单点故障2、HA的原理在同一个集群上配置两个名称节点,一个为激活态,一个为待命态。当激活态的名称节点出现了故障,那么可以快速的将待命态的名称节点快速容错,转为激...原创 2018-02-09 17:11:13 · 424 阅读 · 0 评论 -
Hadoop格式化namenode
格式化的时候需要先删除所有节点的Hadoop的临时缓存目录也就是我们在core-site.xml里面配置的hadoop.tmp.dir原创 2018-02-05 17:53:15 · 658 阅读 · 0 评论 -
Could not determine own NN ID in namespace 'mycluster'.
执行hdfs namenode -bootstrapStandby的时候报错如下java.io.IOException: java.lang.IllegalStateException: Could not determine own NN ID in namespace 'mycluster'. Please ensure that this node is one of the machine...原创 2018-02-09 16:07:53 · 2439 阅读 · 0 评论 -
添加了其他主机的公钥之后还是不能无密登陆到其他主机
修改authorized_keys的权限为644原创 2018-02-08 17:51:05 · 644 阅读 · 0 评论 -
hadoop-daemon.sh 和Hadoop-daemons.sh 的区别
Hadoop-daemon.sh:用于启动当前节点的进程例如Hadoop-daemon.sh start namenode 用于启动当前的名称节点Hadoop-daemons.sh:用于启动所有节点的进程例如:Hadoop-daemons.sh start datanode 用于启动所有节点的数据节点原创 2018-02-08 11:18:19 · 4349 阅读 · 0 评论 -
机架感知配置
0、hdfs存放副本的策略:先存放一个副本在本地机架的一个节点上,然后将第二个副本存放在本地机架的另外一个节点上,最后将第三个副本存放在不同机架的不同节点上1、配置机架感知Java类package com.cr.rackAware;import org.apache.hadoop.net.DNSToSwitchMapping;import org.mockito.internal原创 2018-02-06 17:52:17 · 333 阅读 · 0 评论 -
mapreduce统计数据库中的单词个数
1、建立数据库表2、导入jar包mysql-connector-java-5.1.38.jar3、创建实体类package com.cr.jdbc;import org.apache.hadoop.io.Writable;import org.apache.hadoop.mapred.lib.db.DBWritable;import java.io.D原创 2018-02-05 19:06:51 · 515 阅读 · 0 评论 -
Call From s150/192.168.109.150 to 0.0.0.0:10020 failed on connection exception:
参考博客:点击打开链接Hadoop连接本地数据库的时候报错Exception in thread "main" java.io.IOException: java.net.ConnectException: Call From s150/192.168.109.150 to 0.0.0.0:10020 failed on connection exception: java.net.C原创 2018-02-05 19:04:51 · 671 阅读 · 1 评论 -
message from server: "Host 'XXXX' is not allowed to connect to this MySQL server"
环境:mysql5.7.11 + windows10 64位问题现象:使用mysql远程登录命令mysql –uroot –h192.168.1.102 –p时,报错MySQL ERROR 1130 (HY000): Host ‘XXXX’ is not allowed to connect to this MySQL server问题原因:mysql服务器出于安全考虑,默认只允许本地登录数据库转载 2018-02-05 18:47:25 · 11386 阅读 · 2 评论 -
解决CentOS7关闭/开启防火墙出现Unit iptables.service failed to load: No such file or directory.
CentOS7中执行[plain] view plain copy print?service iptables start/stop service iptables start/stop会报错Failed to start iptables.service: Unit iptables.service failed to load: No such file or directory.在C转载 2018-02-02 15:24:05 · 418 阅读 · 0 评论 -
自定义分区随机分配解决数据倾斜的问题
1、第一阶段有三个文本待统计(设置分区的个数为3)package com.cr.skew;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.LongWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.M原创 2018-01-19 16:32:55 · 1078 阅读 · 0 评论 -
二次排序解析
1、定义组合keypackage com.cr.com.cr.test;import org.apache.hadoop.io.WritableComparable;import java.io.DataInput;import java.io.DataOutput;import java.io.IOException;public class ComKey implement原创 2018-01-14 17:02:33 · 865 阅读 · 0 评论 -
Hadoop二次排序
1、实现要求:对年份按照升序排列,对气温进行降序排列2、实现步骤1、定义组合keypackage com.cr.secondarySort;import org.apache.hadoop.io.WritableComparable;import java.io.DataInput;import java.io.DataOutput;import java.io.IOExc原创 2018-01-09 23:49:49 · 261 阅读 · 0 评论 -
Hadoop采样器实现全排序(报错java.io.EOFException)
利用采样器,mapreducer自动将数据按照从大到小的顺序,根据数据分布的概率,自动分区到不同的区域,之前我们是手动设置分区的范围,将数据分区到不同的分区点击打开链接下面我们采用Hadoop内置类-全排序分区类进行自动分区1、mapper类package com.cr.wordcount;import org.apache.hadoop.io.IntWritable;i原创 2018-01-08 12:43:10 · 1408 阅读 · 1 评论 -
Hadoop全排序
1、未分区,按照key排序1、mapper,输出都为intwritablepackage com.cr.wordcount;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.LongWritable;import org.apache.hadoop.io.Text;import org.apac原创 2018-01-07 18:23:10 · 495 阅读 · 0 评论 -
跟踪wordcount计数器的运行信息
1、mapper类package com.cr.wordcount;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.LongWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Mapper;i原创 2018-01-05 17:27:17 · 307 阅读 · 0 评论 -
运行wordcount的时候显示INFO mapreduce.Job: map 0% reduce 0%
错误提示:[xiaoqiu@s150 /home/xiaoqiu]$ hadoop jar wordcounter.jar com.cr.wordcount.WordcountApp hdfs://s150/user/xiaoqiu/data/wc.txt hdfs://s150/user/xiaoqiu/data/out18/01/05 09:12:52 INFO client.RMPro原创 2018-01-05 16:02:43 · 6438 阅读 · 8 评论 -
java.io.IOException: Incompatible clusterIDs
启动Hadoop集群的时候,所有的datanode启动不了,报错如下java.io.IOException: Incompatible clusterIDs in /home/xiaoqiu/hadoop_tmp/dfs/data:namenode clusterID = CID-7ecadf3f-9aa7-429a-8013-4e3ad1f28870; datanode clusterI原创 2018-01-04 23:24:18 · 866 阅读 · 0 评论 -
多输入的wordcount
1、处理序列的mapperpackage com.cr.hdfs;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.LongWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Mapper;im原创 2018-01-04 21:17:21 · 229 阅读 · 0 评论 -
MapFile检索序列文件
1、MapFile写入文件 /** * mapfile写入文件 * @throws IOException */ @Test public void save() throws IOException { Configuration conf = new Configuration(); conf.set("fs.原创 2018-01-04 21:02:29 · 669 阅读 · 0 评论 -
单词统计以序列格式输出
wordcount1类/** * wordcount单词统计 */public class wordcount1 { public static void main(String[] args) throws IOException, ClassNotFoundException, InterruptedException { //单例作业 Con原创 2018-01-04 17:00:41 · 353 阅读 · 0 评论 -
序列文件的读取和写入
1、序列文件(二进制)的写入 /** * 写入文件 * @throws IOException */ @Test public void save() throws IOException { Configuration conf = new Configuration(); conf.set("fs.defa原创 2018-01-04 14:13:53 · 1343 阅读 · 0 评论 -
Hadoop文件压缩放到远程centos调试
1、准备代码原创 2018-01-02 15:38:28 · 554 阅读 · 0 评论 -
Hadoop 文件压缩
1、指定编解码器类 public void deflateCompress() throws IOException { //获取deflate编解码器类 Class codecClass = DeflateCodec.class; //实例化 CompressionCodec codec = (CompressionCodec)原创 2018-01-02 15:05:40 · 265 阅读 · 0 评论 -
Hadoop集群运行wordcount jar包出错
出错提示[xiaoqiu@s151 /home/xiaoqiu]$ hadoop jar HDFSTest.jar com.cr.hdfs.wordcount1.wordcountAPP hdfs: //s150/usr/xiaoqiu/wordcount hdfs://s150/usr/xiaoqiu/wordcount/outputException in原创 2018-01-02 11:31:17 · 499 阅读 · 0 评论 -
MapReduce进行本地的单词统计
1、处理输入文本为对,继承Mapper方法package com.cr.hdfs;import org.apache.hadoop.io.IntWritable;import org.apache.hadoop.io.LongWritable;import org.apache.hadoop.io.Text;import org.apache.hadoop.mapreduce.Map原创 2017-12-31 11:23:14 · 561 阅读 · 0 评论 -
ERROR util.Shell: Failed to locate the winutils binary in the hadoop binary path
缺少了winutil.exe原创 2017-12-29 16:55:28 · 560 阅读 · 0 评论 -
Hadoop上传文件到HDFS失败
错误提示:INFO hdfs.DFSClient: Exception in createBlockOutputStreamjava.net.NoRouteToHostException: No route to host at sun.nio.ch.SocketChannelImpl.checkConnect(Native Method) at sun.ni原创 2017-12-29 16:56:22 · 2229 阅读 · 0 评论 -
Unable to load native-hadoop library for your platform... using builtin-java classes where applica
看了很多博客,对于这个问题的解决,但是最后都没有成功后来我重新在官网下载了一个Hadoop安装包配置好环境变量将Hadoop相关的jar包加入到项目里面重新编译就可以了注意这里加入的jar包来自于由于这里面的jar包包含了sources包和tests包我们把他分离出来这里只要加入_lib文件夹下面的jar包就可以了这里我想这个warning出现的原创 2017-12-29 16:54:51 · 639 阅读 · 0 评论 -
Hadoop通过url地址访问HDFS
新建Java工程package com.cr.java;import org.apache.hadoop.fs.FsUrlStreamHandlerFactory;import org.junit.Test;import javax.print.DocFlavor;import java.io.IOException;import java.io.InputStream;imp原创 2017-12-29 16:53:57 · 21269 阅读 · 0 评论 -
Hadoop通过API访问HDFS
1、version_1 /** * 通过Hadoop API访问HDFS * @throws IOException */ @Test public void readFileByAPI() throws IOException { //获取hadoop配置信息 Configuration conf = new Co原创 2017-12-29 16:53:27 · 839 阅读 · 0 评论 -
maven项目测试HDFS读取文件
1、读取文件 /** * 测试读取文件 * @throws IOException */ @Test public void testSave() throws IOException { Configuration conf = new Configuration(); FileSystem fs = File原创 2017-12-29 16:52:57 · 578 阅读 · 0 评论 -
查看镜像文件
1、查看镜像文件[xiaoqiu@s150 /home/xiaoqiu/hadoop_tmp/dfs/name/current]$ ls -h |grep fsimagefsimage_0000000000000000000fsimage_0000000000000000000.md5fsimage_0000000000000000966fsimage_0000000000000000原创 2017-12-29 16:52:33 · 984 阅读 · 0 评论 -
Hadoop启动命令
start-all.sh --->start-dfs.sh + start-yarn.shstart-dfs.sh ---->hadoop-daemon.sh start namenode + hadoop-daemons.sh start datanodestart-yarn.sh ----->yarn-daemon.sh start resourcemanager +原创 2017-12-29 16:52:06 · 5154 阅读 · 0 评论 -
HDFS设置配额管理
1、目录配额[xiaoqiu@s150 /home/xiaoqiu/hadoop_tmp]$ hadoop fs -lsr /lsr: DEPRECATED: Please use 'ls -R' instead.drwxr-xr-x - xiaoqiu supergroup 0 2017-12-29 15:50 /userdrwxr-xr-x - xiaoqi原创 2017-12-29 16:51:38 · 1539 阅读 · 0 评论 -
HDFS快照
在data目录下启用快照[xiaoqiu@s150 /home/xiaoqiu/hadoop_tmp]$ hdfs dfsadmin -allowSnapshot data创建快照[xiaoqiu@s150 /home/xiaoqiu/hadoop_tmp]$ hdfs dfs -createSnapshot data ss1查看快照信息[xiaoqiu@s1原创 2017-12-29 16:50:44 · 293 阅读 · 0 评论 -
rsync实现远程同步
如果采用scp会将符号链接转为目录,所以我们采用rsync实现远程同步删除slave-s131 Hadoop目录下的etc原创 2017-12-22 18:03:09 · 297 阅读 · 0 评论 -
HDFS文件系统
Hadoop fs 等价于 hdfs dfs [xiaoqiu@s150 bin]$ hdfs dfsUsage: hadoop fs [generic options] fs run a generic filesystem user client在HDFS文件系统创建文件夹[xiaoqiu@s150 bin]$ cd ~[xiaoqi原创 2017-12-25 15:47:21 · 241 阅读 · 0 评论