![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
hadoop mapreduce
文章平均质量分 89
fansy1990
这个作者很懒,什么都没留下…
展开
-
Hadoop文本转换为序列文件
在以前使用hadoop的时候因为mahout里面很多都要求输入文件时序列文件,所以涉及到把文本文件转换为序列文件或者序列文件转为文本文件(因为当时要分析mahout的源码,所以就要看到它的输入文件是什么,文本比较好看其内容)。一般这个有两种做法,其一:按照《hadoop权威指南》上面的方面直接读出序列文件然后写入一个文本;其二,编写一个job任务,直接设置输出文件的格式,这样也可以把序列文件读成文原创 2013-07-30 23:30:00 · 4121 阅读 · 1 评论 -
hadoop 启动时间写入文件
hadoop1.0.4;昨天看了源码,说到可以使用log信息来打印出来JobTracker的启动时间,然后来解析这个Log文件,但是这里有个问题,就是log文件是在hadoop的主节点namenode的linux机器中的,不是在客户端,读取会有一定的问题,然后就又想到了还是写文件(hdfs文件系统)的方式。只要在JobTracker启动之后,然后再写入即可。还是按源码来说(首先把原来修改的原创 2013-12-20 14:31:36 · 2683 阅读 · 0 评论 -
MapReduce聚合
mapreduce的核心思想就是:map读入一条记录,然后重置其key 、value;reduce针对map的同一条key,把其values整合,然后重新输出key、value;这两天做mapreduce时,忽然有种想法:针对一行记录,是否有输出多行记录,包含有不同到key,value,的情况;这种情况到应用是否有好处呢?假设有这样的一个数据:其中第一列代表用户的标识,第二列代表书籍的原创 2012-09-07 10:37:32 · 3041 阅读 · 0 评论 -
hadoop任务监控实现
hadoop1.0.4,struct2.3。本工程仿效hadoop 50030监控界面,取得任务信息,并显示出来。工程可以在http://download.csdn.net/detail/fansy1990/6737451下载。一、先看效果吧:1. 正在运行的任务:从上面可以看到jobId为 job_201312181939_0002正在运行;2. 运行失败:上原创 2013-12-18 23:48:10 · 7843 阅读 · 1 评论 -
hadoop JobTracker获取启动时间
hadoop1.0.4;昨天写了一篇blog,是关于获取hadoop集群任务运行信息的例子,仿照50030界面实现。但是昨天遇到一个问题,就是当集群是第一次启动的时候,获得不了JobID,然后就拼凑不了JobID了,这样对后面的程序会有影响,所以想获得集群的第一个JobID,看到这个JobID是由“job_”+JobTracker启动时间+“0001”得到的,所以获得JobTracker的启动原创 2013-12-19 23:45:06 · 3197 阅读 · 0 评论 -
Hadoop集群算法调用--web平台2.0
前记各种版本:Mahout版本:0.7,hadoop版本:1.0.4,jdk:1.7.0_25 64bit,struts2本版本是《云算法调用平台--web 工程调用hadoop集群1.4》的升级版,项目源码可以在lz的资源页http://download.csdn.net/detail/fansy1990/6802083下载。项目继续沿用之前的框架struts2。当使用mahout算原创 2014-01-03 02:20:30 · 4445 阅读 · 10 评论 -
Maven构建Hadoop Web项目
使用Maven构建Hadoop Web项目,此项目是一个样例Demo,方便开发专注于后台以及Hadoop开发的人员在其上构建自己定制的项目。该Demo提供了两个样例:查看HDFS文件夹内容及其子文件/夹;运行WordCount MR任务;项目下载地址:Maven构建Hadoop Web项目系统软件版本Spring4.1.3Hibernate4.3.1Struts2.3.1hadoop2原创 2015-06-09 22:37:10 · 5906 阅读 · 2 评论 -
KNN算法Hadoop实现及kaggle digit recognition数据测试
软件版本:Hadoop2.6,MyEclipse10.0 , Maven 3.3.2源码下载地址:https://github.com/fansy1990/knn 。1. KNN算法思路:如果一个样本在特征空间中的k个最相似(即特征空间中最邻近)的样本中的大多数属于某一个类别,则该样本也属于这个类别。KNN算法中,所选择的邻居都是已经正确分类的对象。该方法在定类决策上只依据最邻近的一个或者几个样本原创 2015-07-28 11:08:39 · 4649 阅读 · 7 评论 -
Hadoop实现Clustering by fast search and find of density peaks (2)
本篇博客参考:Clustering by fast search and find of density peaks论文以及http://www.cnblogs.com/peghoty/p/3945653.html。 使用版本:Hadoop版本:2.6.0,Myeclipse:10.0 本地集群情况:node101 (主节点,namenode,datanode,ResourceManager,N原创 2015-07-24 16:22:35 · 2846 阅读 · 0 评论 -
Hadoop实现Clustering by fast search and find of density peaks
Hadoop实现Clustering by fast search and find of density peaks本篇博客参考:Clustering by fast search and find of density peaks论文以及http://www.cnblogs.com/peghoty/p/3945653.html。 Hadoop版本:2.6.0,Myeclipse:10.0 代原创 2015-06-04 18:07:48 · 4164 阅读 · 2 评论 -
Hadoop Web项目--Mahout0.10 MR算法集锦
此项目是在《Hadoop Web项目--Friend Find系统基础》之上整理Mahout0.10版本中MR程序的调用测试而成,重点演示如何调用Mahout0.10的MR算法、如何把MR算法嵌入到Web项目中,附带数据生成及数据查看、MR 任务监控等功能。里面含有了常用工具类、聚类算法、分推荐算法等的MR调用mahout命令以及其对应的实现类。原创 2015-08-18 17:52:02 · 3845 阅读 · 0 评论 -
基于HBase的冠字号查询系统1--理论部分
1. 软件版本和部署maven:3.3.9,jdk:1.7 ,Struts2:2.3.24.1,hibernate:4.3.6,spring:4.2.5,MySQL:5.1.34,Junit:4,Myeclipse:2014;Hadoop2.6.4,HBase1.1.2源码下载:https://github.com/fansy1990/ssh_v3/releases部署参考:http://blog原创 2016-06-04 11:02:58 · 17836 阅读 · 1 评论 -
基于HBase的冠字号查询系统2--实现部分
1. 软件版本和部署maven:3.3.9,jdk:1.7 ,Struts2:2.3.24.1,hibernate:4.3.6,spring:4.2.5,MySQL:5.1.34,Junit:4,Myeclipse:2014;Hadoop2.6.4,HBase1.1.2源码下载:https://github.com/fansy1990/ssh_v3/releases部署参考:http://blog原创 2016-06-04 21:13:02 · 17132 阅读 · 0 评论 -
requestedMemory=-1
软件版本: Hadoop2.6.0 (源码使用CDH5.7.0 ,对应hadoop 2.6.0),集群使用Hadoop2.6.4(原生,JDK1.8), Intellij idea14 (JDK1.8);问题描述: 使用Intellij IDEA编译打MR程序的Jar包,可以直接在终端使用hadoop jar的方式运行,但是直接在Intellij IDEA中提交却任务失败?查询日志表现为:2016原创 2016-10-26 23:03:44 · 4322 阅读 · 0 评论 -
Hadoop web项目使用Ajax监控MapReduce任务运行情况
项目代码可以在http://download.csdn.net/detail/fansy1990/5590951 下载;Hadoop集群版本:1.0.4 ,结合myeclipse开发;此次的hadoop web项目是前次的改进版,增加了ajax技术,主要用在了路径的检查(字符串检查和hdfs交互)以及在监控mapreduce过程时和后台交互获得job信息;整个项目的思路大概如下:原创 2013-06-16 16:15:47 · 4134 阅读 · 2 评论 -
Mahout决策树算法源码分析(4)
今天来说,应该是把所有Partial Implementation的内容分析完了(当然也只是分析了属性是离散值的情况的数据,而非离散的并没有分析),下面就说下Partial Implementation实战的第三部分:TestForest,这个源文件在$MAHOUT_HOME/example/src/main/java/org/apache/mahout/classifier/df/mapredu原创 2013-01-26 20:44:01 · 3681 阅读 · 2 评论 -
Mahout关联规则源码分析(1)
最近看了关联规则的相关算法,着重看了mahout的具体实现,mahout官网上面给出了好多算法,具体网址如下:https://cwiki.apache.org/confluence/display/MAHOUT/Parallel+Frequent+Pattern+Mining 。先说下命令行运行关联规则,关联规则的算法在mahout-core-0,7.jar包下面,命令行运行如下:fa原创 2012-11-01 18:35:18 · 8196 阅读 · 5 评论 -
Hadoop MapReduce链式实践--ChainReducer
版本:CDH5.0.0,HDFS:2.3.0,Mapreduce:2.3.0,Yarn:2.3.0。场景描述:求一组数据中按照不同类别的最大值,比如,如下的数据:data1:A,10A,11A,12A,13B,21B,31B,41B,51data2:A,20A,21A,22A,23B,201B,301B,401B,501最后输出为:A,23B,501假如这样的逻辑的m原创 2014-05-14 23:15:34 · 4060 阅读 · 1 评论 -
Hadoop 自定义Writable NullpointerException
Hadoop环境:Hadoop2.4在定义Hadoop的Writable时候,有时需要使用到数组,而不是简单的字符串或者单个的数值。比如下面的代码:package test;import java.io.DataInput;import java.io.DataOutput;import java.io.IOException;import org.apache.hadoop.io.W原创 2014-08-09 21:38:55 · 2897 阅读 · 0 评论 -
Hadoop大数据面试--Hadoop篇
本篇大部分内容参考网上,其中性能部分参考:http://blog.cloudera.com/blog/2009/12/7-tips-for-improving-mapreduce-performance/、http://www.idryman.org/blog/2014/03/05/hadoop-performance-tuning-best-practices/原理篇:1. Hadoop2.X的原创 2015-03-17 21:35:12 · 3549 阅读 · 0 评论 -
Hadoop的“全局变量”
以前有做过在Hadoop编写程序时使用全局变量的想法,但是最后却没有实现,上网查才看到说Hadoop不支持全局变量。但是有时候编程的时候又会用到,比如编写k-means算法的时候,如果可以有个全局变量存储中心点该多好呀。其实在hadoop中确实是有相关的实现的,比如可以在mapper中的setup函数中读取一个小文件,然后从这个文件中取出全局变量的值。那具体如何实现呢?首先提出一个问题,然后利原创 2012-09-27 16:29:50 · 4037 阅读 · 4 评论 -
Hadoop Combiner 操作
近期看了一本书:Data-intensive Text Processing with MapReduce,是讲如何设计MR程序的,看到一个例子是Combiner的设计模式,然后就动手实现了下。具体问题如下:现有输入数据如下:one 3.9one 4.0one 3.8two 44two 44two 44three 9898four 2323four 2323five 23原创 2012-09-22 16:18:32 · 2838 阅读 · 0 评论 -
Hadoop k-means 算法实现
经过昨天的准备工作,今天基本就可以编写整个k-means算法程序了。今天编写的时候遇到了一个问题,是combine操作时遇到的问题。除了这个问题基本都按照原来的思路进行。先说下我的思路吧。准备工作:在上传数据文件到HDFS上之前,先应该产生一个中心文件,比如我的输入文件如下:0.0 0.2 0.40.3 0.2 0.40.4 0.2 0.40.5 0.2 0.45.0 5.2 5.原创 2012-09-28 14:49:17 · 15986 阅读 · 54 评论 -
Hadoop实现关联规则算法--二项集挖掘
近期看mahout的关联规则源码,颇为头痛,本来打算写一个系列分析关联规则的源码的,但是后面看到有点乱了,可能是稍微有点复杂吧,所以就打算先实现最简单的二项集关联规则。算法的思想还是参考上次的图片:这里实现分为五个步骤:针对原始输入计算每个项目出现的次数;按出现次数从大到小(排除出现次数小于阈值的项目)生成frequence list file;针对原始输入的事务进行按freq原创 2012-11-08 10:20:15 · 4411 阅读 · 2 评论 -
HBase用一个MapReduce Job同时写入两张表
以前在学习HBase的时候,也曾想过是否可以在一个MR中同时写入两个表,但以前在网上找的时候都找不到比较相关的答案,这两天又重新找了下,居然有类似的实现,然后就自己参考着写了下,基本可以运行(本文参考:http://www.wildnove.com/2011/07/19/tutorial-hadoop-and-hbase-multitableoutputformat/),下面就详细说下思路:原原创 2013-01-15 11:46:54 · 4465 阅读 · 0 评论 -
Mahout决策树算法源码分析(2)
决策树Partial Implementation源码的第二部分为:BuildForest,其源码所在位置为:MAHOUT_HOME/example/src/main/java/org/apache/mahout/classifier/df/mapreduce/BuildForest.java,现对其进行简要分析:打开源码可以看到,BuildForest有如下四个步骤:(1)创建一个Dec原创 2013-01-22 21:29:55 · 2705 阅读 · 4 评论 -
Mahout决策树算法源码分析(3)
part3主要分析下名为“decision forest builder”的Job的操作,上篇说到这个Job只有Mapper,所以也就是针对这个Mapper,即Step1Mapper类的分析:Step1Mapper.java在org.apache.mahout.classifier.df.mapreduce.partial中,打开这个源文件,可以看到其操作主要有以下三点:1. setup(原创 2013-01-26 14:06:27 · 3301 阅读 · 7 评论 -
Hadoop 实现协同过滤算法(1)
最近一直在研究《Mahout in Action》,今天才算是把第一部分看完。在Chapter 6中有一个例子,是实现协同过滤进行推荐的例子,不过书上的是针对布尔值的输入数据,在mahout的安装目录里面也有这个算法的详细源码,但是毕竟是源码,读起来有点晦涩,所以就参考了书上的例子编写了(书上的例子思路比较清楚)不仅仅是布尔值的输入数据的代码;下面就详细说下思路及代码:输入数据:第一列原创 2012-10-12 16:02:49 · 8447 阅读 · 10 评论 -
Mahout决策树算法源码分析(3-1)建树实战
上篇主要分析了Partial Implementation的建树主要操作,下面就自己使用mahout的源码自己实战一下:(注意:所建的MR工程需要导入下面的包:http://download.csdn.net/detail/fansy1990/5030740,否则看不到console里面的提示)新建如下的类文件:package org.fansy.forest.test;imp原创 2013-01-26 14:33:17 · 3356 阅读 · 0 评论 -
hadoop mapreducce: wrong key class
今天做hadoop 的时候出现了一个异常,内容如下:java.io.IOException: wrong key class: class org.apache.hadoop.io.Text is not class org.apache.hadoop.io.IntWritable我的Mapper 和Reducer如下所示:public static class MyMapper原创 2012-07-31 12:18:54 · 5111 阅读 · 1 评论 -
MapReduce实现线性回归
1. 软件版本:Hadoop2.6.0(IDEA中源码编译使用CDH5.7.3,对应Hadoop2.6.0),集群使用原生Hadoop2.6.4,JDK1.8,Intellij IDEA 14 。源码可以在https://github.com/fansy1990/linear_regression 下载。2. 实现思路:本博客实现的是一元一次线性方程,等于是最简单的线性方程了,采用的是Coures原创 2016-10-29 11:34:02 · 7212 阅读 · 6 评论