随笔分类 -  hadoop

摘要:在hadoop2.0中,datanode数据副本存放磁盘选择策略有两种方式:第一种是沿用hadoop1.0的磁盘目录轮询方式,实现类:RoundRobinVolumeChoosingPolicy.java第二种是选择可用空间足够多的磁盘方式存储,实现类:AvailableSpaceVolumeCho... 阅读全文
posted @ 2015-07-01 16:30 孟想阳光 阅读(1346) 评论(0) 推荐(0)
摘要:1. Storm是什么,怎么做,如何做的更好?Storm是一个开源的分布式实时计算系统,它可以简单、可靠地处理大量的数据流。Storm有很多应用场景,如实时分析、在线机器学习、持续计算、分布式RPC、ETL,等等。Storm支持水平扩展,具有高容错性,保证每个消息都会得到处理,而且处理速度很快(在一... 阅读全文
posted @ 2015-06-28 20:57 孟想阳光 阅读(1033) 评论(0) 推荐(0)
摘要:单机版使用的是FileSystem类的静态函数:FileSystem hdfs = FileSystem.get(conf) 伪分布式下需要使用Path来获得Path path = new Path("hdfs://mlj:9000/dir"); FileSystem hdfs = path.ge... 阅读全文
posted @ 2015-06-07 14:01 孟想阳光 阅读(900) 评论(0) 推荐(0)
摘要:需要先统计词频,再进行排序----------词频统计---------package TopK;import java.io.IOException;import java.util.StringTokenizer; import org.apache.hadoop.conf.Configurat... 阅读全文
posted @ 2015-05-05 17:52 孟想阳光 阅读(578) 评论(0) 推荐(0)
摘要:主要运用到了cleanup函数,该函数在map或reduce执行完毕之后再执行。 static class MyMapper extends Mapper{ long max = Long.MIN_VALUE; protected void map(LongWritable k1, Text v... 阅读全文
posted @ 2015-05-05 17:33 孟想阳光 阅读(956) 评论(0) 推荐(0)
摘要:map端分组即将相同Key的value分到一组中去,对如下原始数据进行分组,分组规则是如果第一列相同,求出第二列的最小值。3 33 23 12 22 11 1-----------------期望输出1 12 13 1-------------------在mapreduce自定义... 阅读全文
posted @ 2015-05-05 17:05 孟想阳光 阅读(271) 评论(0) 推荐(0)
摘要:3 33 23 12 22 11 1-----------------期望输出1 12 12 23 13 23 3将以上数据进行排序,排序规则是:按照第一列升序排序,如果第一列数值相同,则按照第二列升序排序。但是默认情况下结果是:1 12 22 13 33 23 ... 阅读全文
posted @ 2015-05-05 16:37 孟想阳光 阅读(549) 评论(0) 推荐(0)
摘要:分区的例子必须打成jar运行用处: 1.根据业务需要,产生多个输出文件2.多个reduce任务在运行,提高整体job的运行效率--------------------------与mapper reducer平级:static class KpiPartitioner extends HashPar... 阅读全文
posted @ 2015-05-05 16:07 孟想阳光 阅读(387) 评论(0) 推荐(0)
摘要:1.枚举声明:enum Counter { LINESKIP; } 使用:context.getCounter(Counter.LINESKIP).increment(1);2.动态声明声明:final Counter count=context.getCounter(String groupN... 阅读全文
posted @ 2015-05-05 15:46 孟想阳光 阅读(428) 评论(0) 推荐(0)
摘要:Long LongWritable Integer IntWritable Boolean BooleanWritable String Text 1.java类型转化为hadoop基本类型 调用hadoop类型的构造方法,或者调用set()方法。 new LongWritable(123L... 阅读全文
posted @ 2015-05-05 15:07 孟想阳光 阅读(402) 评论(0) 推荐(0)
摘要:RPC(remote process call)远程过程调用:不同java进程间的对象方法的调用。是hadoop框架运行的基础,hadoop建立在c/s基础之上。(源码中src/core/ipc/rpc.java体现)1.一方称作服务端(server),一方称作客户端(client)。 serve... 阅读全文
posted @ 2015-05-05 14:28 孟想阳光 阅读(189) 评论(0) 推荐(0)
摘要:1.读出hadoop目录下的hello文件:方案一(只能读不能写):import java.net.MalformedURLException;import java.net.URL;import java.io.*;import org.apache.hadoop.fs.FsUrlStreamHa... 阅读全文
posted @ 2015-05-05 11:09 孟想阳光 阅读(257) 评论(0) 推荐(0)
摘要:HDFS和HBase是Hadoop中两种主要的存储文件系统,两者适用的场景不同,HDFS适用于大文件存储,HBASE适用于大量小文件存储。本文主要讲解HDFS文件系统中客户端是如何从Hadoop集群中读取和写入数据的,也可以说是block策略。正文一写入数据 当没有配置机架信息时,所有的机器had... 阅读全文
posted @ 2015-04-23 11:26 孟想阳光 阅读(426) 评论(0) 推荐(0)
摘要:1.Hadoop集群可以运行的3个模式?单机(本地)模式伪分布式模式全分布式模式2.单机(本地)模式中的注意点?在单机模式(standalone)中不会存在守护进程,所有东西都运行在一个JVM上。这里同样没有DFS,使用的是本地文件系统。单机模式适用于开发过程中运行MapReduce程序,这也是最少... 阅读全文
posted @ 2015-04-23 11:20 孟想阳光 阅读(527) 评论(0) 推荐(0)
摘要:本文引自于吴超博客一. SSH无密码验证配置Hadoop 需要使用SSH 协议,namenode使用SSH 协议启动 namenode 和datanode 进程,伪分布式模式数据节点和名称节点均是本身,必须配置 SSH localhost无密码验证。以下用root用户登录仅为了方便起见。登录后,执行... 阅读全文
posted @ 2015-04-23 11:16 孟想阳光 阅读(170) 评论(0) 推荐(0)
摘要:大家都知道在hadoop2中对HDFS的改进很大,实现了NameNode的HA;也增加了ResourceManager。但是ResourceManager也可以实现HA。你没看错,确实是ResourceManager的HA。注意是在Apache Hadoop 2.4.1版本中开始加入的,可不是任意一... 阅读全文
posted @ 2015-04-23 11:12 孟想阳光 阅读(487) 评论(0) 推荐(0)
摘要:通过我们前面的操作,已经可以编译并且打包产生适合本机的hadoop包,目录是hadoop-dist/target/hadoop-2.2.0。使用root用户登录配置文件位于/usr/local/hadoop-dist/target/hadoop-2.2.0/etc/hadoop目录下。编辑文件had... 阅读全文
posted @ 2015-04-23 11:11 孟想阳光 阅读(144) 评论(0) 推荐(0)
摘要:hadoop2的中的MapReduce不再是hadoop1中的结构已经没有了JobTracker,而是分解成ResourceManager和ApplicationMaster。这次大变革被称为MRv2或者YARN,是一次革命性的变化。修改文件yarn-site.xml,内容如下yarn.resour... 阅读全文
posted @ 2015-04-23 11:06 孟想阳光 阅读(168) 评论(0) 推荐(0)
摘要:HDFS Federation(HDFS联邦)HDFS有两个主要层:Namespace 由目录、文件和块组成;支持所有命名空间对文件和目录的操作。Block Storage Service 由Block Management和Storage组成。Block Management 提供dataNode... 阅读全文
posted @ 2015-04-23 10:58 孟想阳光 阅读(281) 评论(0) 推荐(0)
摘要:最顶级是InputFormat抽象类 ,该类定义了两个方法,方法getSplits是负责切分输入文件(们)的,把很多的输入文件(们)切分成很多的输入分片,切分规则就是在这里定义的,每个InputSplit对应一个Mapper任务。方法createRecordReader是负责把getSplits生成... 阅读全文
posted @ 2015-04-23 10:53 孟想阳光 阅读(754) 评论(0) 推荐(0)