hadoop
文章平均质量分 88
mark_yueye
热衷于技术提升,热爱编程。
展开
-
hadoop学习要点
一、HDFS(一)HDFS 概念(二)HDFS命令行接口(三)Java 接口(四)文件读取和文件写入,一致性(五)集群数据的均衡(六)存档 (七)NameNode 单点故障问题(八)大量小文件处理策略(九)数据备份和恢复(十)数据安全(十一)负载均衡和垃圾回收(十二)安装新节点(十三)卸载节点原创 2013-11-08 16:57:34 · 1608 阅读 · 1 评论 -
hadoop 测试框架
hadoop 0.21以前的版本中(这里拿0.20为例,其他版本可能有少许不同),所有的测试相关代码都是放置在${HADOOP_HOME}/src/test下,在该目录下,是按照不同的目录来区分针对不同模块的测试代码。这里需要了解的是:对于相应的hadoop代码和class的包结构,在test中也是以相同的包结构来管理。比如,对于org.apache.hadoop.hdfs.server.name转载 2013-12-04 01:01:50 · 1019 阅读 · 0 评论 -
Herriot
Herriot测试框架是Hadoop-0.21.0及以后版本中新加入的测试框架,它的出现主要是为了尽可能地模拟真实的大规模分布式系统,并且对该系统实现自动化测试。和Hadoop以前的测试框架MiniDFSCluster类似,Herriot也采用了JUnit框架,此外,Herriot还引入了面向切面编程(AOP)技术-AspectJ,实现了代码注入和错误注入,丰富了测试的内容。上图是采用Herr转载 2013-12-04 01:31:34 · 977 阅读 · 0 评论 -
thrift实现HDFS文件操作
thrift 文件如下namespace java com.pera.file.transformstruct File{ 1:string path , 2:string content,}service FileTransform { bool exists(1:string path), void mkdir(1:st原创 2013-12-16 14:50:42 · 1219 阅读 · 0 评论 -
Hadoop 的 TotalOrderPartitioner
Partition所处的位置Partition位置Partition主要作用就是将map的结果发送到相应的reduce。这就对partition有两个要求:1)均衡负载,尽量的将工作均匀的分配给不同的reduce。2)效率,分配速度一定要快。Mapreduce提供的PartitionerMapreduce默认的partitioner是转载 2014-01-27 14:26:45 · 1092 阅读 · 0 评论 -
地球物理学部分术语共现图
地球物理学部分术语共现图原创 2014-05-23 16:37:26 · 1649 阅读 · 0 评论 -
基于领域相关度和领域一致度的领域术语抽取实现
需要准备几个领域,每个领域准备大量的文本。比如:军事、科技、体育、财经、汽车、房产等等。有一些数据是不完整的,甚至是脏数据,需要在数据准备好之后做数据清洗,删除包含乱码的文本、删除英文文本、删除内容重复的文档,删除包含大量HTML标签的文档,删除内容中大量重复的内容(如:预料是新闻,可能会每篇文档中都包含“中新网北京1月23日电”之类的内容)。 每一个子文件夹中都包含该领域的文档,分别原创 2014-05-23 17:05:33 · 1358 阅读 · 0 评论 -
Mahout 模糊kmeans
FCM 算法用一个Job寻找cluster的中心点。在map的初始化节点,加载初始化(或上一轮迭代的结果)中心点。在map中计算point 和每一个簇的亲和度。在combiner计算同一个cluster的参数,该过程只能计算同一cluster的局部信息。在reduce中首先计算同一个cluster的全局参数,然后计算该cluster是否收敛,输出cluster。原创 2014-05-23 15:52:27 · 2419 阅读 · 0 评论 -
Mahout kmeans聚类
K-means算法是最为经典的基于划分的聚类方法,是十大经典数据挖掘算法之一。K-means算法的基本思想是:以空间中k个点为中心进行聚类,对最靠近他们的对象归类。通过迭代的方法,逐次更新各聚类中心的值,直至得到最好的聚类结果。Mahout kmeans MapReduce实现的原理和上述的一致,值得注意的是,Mahout将数据存储在HDFS,用MapReduce做批量并行的计算。在做kmeans之前,需要将文本用Mahout向量化模块工具做向量化。计算过程主要分为三个步骤:初始中心选取,寻找簇中心,划分数原创 2014-05-23 15:41:52 · 3688 阅读 · 1 评论 -
社会化网络分析
节点中心性是指网络中每个词在网络中处于什么地位。中心势反映整个词网中各个节点的差异性程度。由于计算方法的不同,节点中心度分为点度中心度,中间中心度和接近中心度。网络的中心势也分为点度中心势、中间中心势和接近中心势。 点度中心性中间中心性接近中心性绝对点度中心度原创 2014-05-23 17:24:29 · 1894 阅读 · 2 评论 -
hadoop 安装部署调优
一、集群安装 1.在所有的机器上建立相同的用户名,如:hadoop。 $adduser hadoop $passwd hadoop2.在/etc/hosts中添加机器名和IP hadoop@hadoop23:~/hadoop/hadoop-1.2.1/conf$ cat /e...2013-11-08 16:09:27 · 144 阅读 · 0 评论 -
hadoop 学习要点
一、HDFS(一)HDFS 概念(二)HDFS命令行接口(三)Java 接口(四)文件读取和文件写入,一致性(五)集群数据的均衡(六)存档 (七)NameNode 单点故障问题(八)大量小文件处理策略(九)数据备份和恢复(十)数据安全(十一)负载均衡和垃圾回收(十二)安装新节点(十三)卸载节...原创 2013-11-08 16:23:47 · 137 阅读 · 0 评论 -
hadoop数据排序(一)
1、概述1TB排序通常用于衡量分布式数据处理框架的数据处理能力。Terasort是Hadoop中的的一个排序作业。那么Terasort在Hadoop中是怎样实现的呢?本文主要从算法设计角度分析Terasort作业。2、算法思想实 际上,当我们要把传统的串行排序算法设计成并行的排序算法时,通常会想到分而治之的策略,即:把要排序的数据划成M个数据块(可以用Hash的 方法做 到),然后每...2013-11-10 12:27:44 · 197 阅读 · 0 评论 -
Hadoop RPC
hadoop rpc机制 && 将avro引入hadoop rpc机制初探1 RPCRPC(Remote Procedure Call)——远程过程调用,它是一种通过网络从远程计算机程序上请求服务,而不需要了解底层网络技术的协议。2 hadoop.ipc2.1 ServerRPC Server实现了一种抽象的RPC服务,同时提供Call队列。Ø RPC Server结构转载 2013-12-04 00:52:35 · 739 阅读 · 0 评论 -
抽取网页中的主要内容
抽取网页中的主要内容,是文本挖掘预处理中一个很头疼的问题。但是现在一切都不是问题。原创 2013-11-29 17:16:02 · 1128 阅读 · 0 评论 -
Hadoop Bloom Filter 使用
1.Bloom Filter 默认的 BloomFilter filter =new BloomFilter(10,2,1); // 过滤器长度为10 ,用2哈希函数,MURMUR_HASH (1) Key key =new Key("hadoop".getBytes()); filter.add(key); Key hb = new Key("原创 2013-11-29 15:55:01 · 2615 阅读 · 0 评论 -
hadoop 部署和调优
一、集群安装 1.在所有的机器上建立相同的用户名,如:hadoop。 $adduser hadoop $passwd hadoop2.在/etc/hosts中添加机器名和IP hadoop@hadoop23:~/hadoop/hadoop-1.2.1/conf$ cat /etc/原创 2013-11-08 17:04:42 · 2241 阅读 · 0 评论 -
Mapreduce 框架解析
MapReduce过程解析 一、客户端Map-Reduce的过程首先是由客户端提交一个任务开始的。public static RunningJob runJob(JobConf job) throws IOException { //首先生成一个JobClient对象 JobClient jc = new JobClient(job); ……原创 2013-11-09 15:56:11 · 1190 阅读 · 0 评论 -
Hadoop 数据排序(一)
1、概述1TB排序通常用于衡量分布式数据处理框架的数据处理能力。Terasort是Hadoop中的的一个排序作业。那么Terasort在Hadoop中是怎样实现的呢?本文主要从算法设计角度分析Terasort作业。2、算法思想实 际上,当我们要把传统的串行排序算法设计成并行的排序算法时,通常会想到分而治之的策略,即:把要排序的数据划成M个数据块(可以用Hash的方法做 到),然后每个m原创 2013-11-09 15:41:54 · 1500 阅读 · 0 评论 -
HDFS读写数据过程
一、文件的打开1.1、客户端HDFS打开一个文件,需要在客户端调用DistributedFileSystem.open(Path f, int bufferSize),其实现为:public FSDataInputStream open(Path f, int bufferSize) throws IOException { return new DFSClien原创 2013-11-09 15:50:31 · 2005 阅读 · 0 评论 -
hadoop学习大纲
原创 2013-11-10 13:08:21 · 1155 阅读 · 0 评论 -
hadoop学习视频
杨尚川的视频 http://www.tudou.com/plcover/EvJCo2zl9hQ/酷6视频 http://v.ku6.com/show/8PkgqGcarHKndyP3rl_pUw...html?nr=1优酷hadoop专辑 http://www.youku.com/playlist_show/原创 2013-11-10 13:29:41 · 3349 阅读 · 0 评论 -
hadoop运维
在实际的生产环境运维一个Hadoop集群有一些必须要关注的事情。1、Namenode的高可靠性2、节点配置与管理3、Mapreduce的内存配置4、启用trash首要的是保证数据安全可靠,其次再去考虑存储效率、计算效率、运维效率的优化与提高,当你觉得Hadoop集群的性能太差太差的时候,其实是你对Hadoop的了解太少,Hadoop的效率没有被发挥出来。数据的可转载 2013-11-26 09:08:22 · 938 阅读 · 0 评论 -
Hadoop家族
现在Hadoop家族产品,已经达到20个了之多。有必要对自己的知识做一个整理了,把产品和技术都串起来。不仅能加深印象,更可以对以后的技术方向,技术选型做好基础准备。本文为“Hadoop家族”开篇,Hadoop家族学习路线图目录Hadoop家族产品Hadoop家族学习路线图1. Hadoop家族产品截止到2013年,根据cloudera的统计,Hadoop家族产品已经达到转载 2013-11-13 09:47:32 · 1035 阅读 · 0 评论 -
Jenkins hash
最早,Bob Jenkins提出了多个基于字符串通用Hash算法(搜Jenkins Hash就知道了),而Thomas Wang在Jenkins的基础上,针对固定整数输入做了相应的Hash算法。其64位版本的 Hash算法如下:uint64_t hash(uint64_t key) { key = (~key) + (key 21); // key = (key key = k原创 2013-11-29 15:17:10 · 5956 阅读 · 0 评论 -
MurmurHash
public int hash(byte[] data, int length, int seed) { int m = 0x5bd1e995; int r = 24; int h = seed ^ length; int len_4 = length >> 2; for (int i = 0; i int i_4 =原创 2013-11-29 15:20:24 · 950 阅读 · 0 评论 -
Bloom Filter
Bloom Filter概念和原理焦萌 2007年1月27日 Bloom Filter是一种空间效率很高的随机数据结构,它利用位数组很简洁地表示一个集合,并能判断一个元素是否属于这个集合。Bloom Filter的这种高效是有一定代价的:在判断一个元素是否属于某个集合时,有可能会把不属于这个集合的元素误认为属于这个集合(false positive)。因此,Bloom Filter转载 2013-11-29 15:38:23 · 615 阅读 · 0 评论 -
Bloom filter 2
1 Bloom filter 计算方法如需要判断一个元素是不是在一个集合中,我们通常做法是把所有元素保存下来,然后通过比较知道它是不是在集合内,链表、树都是基于这种思路,当集合内元素个数的变大,我们需要的空间和时间都线性变大,检索速度也越来越慢。 Bloom filter 采用的是哈希函数的方法,将一个元素映射到一个 m 长度的阵列上的一个点,当这个点是 1 时,那么这个元素在集合内,反之转载 2013-11-29 15:41:20 · 675 阅读 · 0 评论 -
HDFS读写数据
一、文件的打开1.1、客户端HDFS打开一个文件,需要在客户端调用DistributedFileSystem.open(Path f, int bufferSize),其实现为:public FSDataInputStream open(Path f, int bufferSize) throws IOException { return new DFSClient.DF...2013-11-10 12:29:50 · 91 阅读 · 0 评论