
MapReduce
文章平均质量分 66
chenwq1988
这个作者很懒,什么都没留下…
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
MapReduce学习笔记
持之以恒,但求对MapReduce有所觉悟 理论学习:http://hadooptutorial.wikispaces.comhttp://developer.yahoo.com/hadoop/tutorial/module4.html 实践学习:执行倒排索引程序:本段代码是Yahoo! Hadoop tutorial的module4——MapReduce最后面的代...2011-10-21 23:12:07 · 106 阅读 · 0 评论 -
广度优先BFS的MapReduce实现
社交网络中的图模型经常需要构造一棵树型结构:从一个特定的节点出发,例如,构造mary的朋友以及mary朋友的朋友的一棵树。为构造这样的一棵树,最简单的方法是使用广度优先算法: 经常使用链表来表示图的节点以及节点之间的链接关系,如 frank -> {mary, jill}jill -> {frank, bob, james}mary -> {willi...原创 2012-05-25 21:47:16 · 808 阅读 · 0 评论 -
Hadoop ChainMap
单一MapReduce对一些非常简单的问题提供了很好的支持。但是如果处理过程变得更加复杂,这种复杂性应该体现为更多地MapReduce工作,而不是更加复杂的map函数和reduce函数。 在hadoop 中一个Job中可以按顺序运行多个mapper对数据进行前期的处理,再进行reduce,经reduce后的结果可经个经多个按顺序执行的mapper进行后期的处理,这样的Job是不会保存中间...2012-05-27 23:09:35 · 120 阅读 · 0 评论 -
MapReduce,组合式,迭代式,链式
1.迭代式mapreduce 一些复杂的任务难以用一次MapReduce处理完成,需要多次MapReduce 才能完成任务,例如Pagrank,K-means算法都需要多次的迭代,关于MapReduce 迭代在Mahout中运用较多。有兴趣的可以参考一下Mahout的源码。 在MapReduce的迭代思想,类似for循环,前一个MapReduce的输出结果,作为...原创 2012-05-27 23:27:09 · 107 阅读 · 0 评论 -
Hadoop DistributedCache
Hadoop的DistributedCache,可以把HDFS中的文件加载到DistributedCache中,当我们需要这些文件时,DistributedCache自动把这些文件下载到集群中节点的本地存储上(mapred.local.dir)。这样就不需要一一布置第三方的Jar包,并且Hadoop集群增加节点也不需要再上传了。 此外DistributedCache对于Read-Onl...2012-05-27 23:45:53 · 121 阅读 · 0 评论 -
Hadoop中两表JOIN的处理方法
1. 概述 在传统数据库(如:MYSQL)中,JOIN操作是非常常见且非常耗时的。而在HADOOP中进行JOIN操作,同样常见且耗时,由于Hadoop的独特设计思想,当进行JOIN操作时,有一些特殊的技巧。 本文首先介绍了Hadoop上通常的JOIN实现方法,然后给出了几种针对不同输入数据集的优化方法。2. 常见的join方法介绍 假设要进行join的数据分别来自F...2012-05-29 10:35:20 · 121 阅读 · 0 评论 -
MapReduce高级编程——自定义InputFormat
0、测试集样例ball, 3.5, 12.7, 9.0car, 15, 23.76, 42.23device, 0.0, 12.4, -67.1 1、测试Point3D InputFormatimport java.io.IOException;import java.net.URI;import javax.xml.soap.Text;im...2012-03-09 22:19:07 · 144 阅读 · 0 评论 -
MapReduce高级编程——自定义InputFormat——深入理解
0、本文承接上文 MapReduce高级编程——自定义InputFormat1、环境配置,本文的开发环境请直接参考 基于Eclipse的Hadoop应用开发环境的配置2、Mapper,Reducer参数解释 import java.io.IOException;import org.apache.hadoop.io.Text;import org.apache.ha...2012-03-10 10:38:22 · 159 阅读 · 0 评论 -
MapReduce高级编程之本地聚集与Combinner
1、Map/Reduce编程模型型原理 利用一个输入key/value pair 集合来产生一个输出的key/value pair 集合。MapReduce库的用户用两个函数表达这个计算:Map 和Reduce。 Hadoop Map/Reduce实现主要是通过继承Mapper和Reducer两个抽象类,并实现map和reduce两个方法实现的。 Mapper ...原创 2012-03-14 20:23:27 · 214 阅读 · 0 评论 -
Pagerank在Hadoop上的实现原理
转自:pagerank 在 hadoop 上的实现原理 PageRank 算法的基本思想是,网页的热门程度依赖于指向它的网页的热门程度。假设有页面 ,有 这 个页面包含指向 的链接,代表页面 所包含的指向别的页面的链接的数量, 是一个介于 0 和 1 之间的常数(称为阻尼系数,一般取 0.85),则页面 的 PR 值(PageRank 值) 这个思想也可以...原创 2012-07-19 16:04:30 · 248 阅读 · 0 评论 -
HADOOP程序日志
*.log日志文件和*.out日志文件 进入Hadoop_LOG目录,可以看到如下文件: 在启动Hadoop集群时,由hadoop-daemon.sh脚本指定一些列环境变量,然后log4j.properties文件读取相应的环境变量产生对应的*.log日志文件。这个日志文件输出类型为org.apache.log4j.DailyRollingFileAppender,它会自动按天更...原创 2012-05-23 19:53:39 · 134 阅读 · 0 评论 -
TFIDF based on MapReduce
Job1: Map: input: (document, each line of the document) # TextInputformat output: (word@document, 1) Reducer: output: ((word@document), n) n = sum of the values of each key(word...2012-05-23 11:58:19 · 104 阅读 · 0 评论 -
个人Hadoop 错误列表
错误1:Too many fetch-failures Reduce task启动后第一个阶段是shuffle,即向map端fetch数据。每次fetch都可能因为connect超时,read超时,checksum错误等原因而失败。Reduce task为每个map设置了一个计数器,用以记录fetch...原创 2012-05-23 11:31:36 · 235 阅读 · 0 评论 -
在Hadoop中使用MRUnit进行单元测试
最近在学习Marcello de Sales的TF-IDF示例的时候,需要用到MRUnit来对Map、Reduce、MapReduce做测试,网上找了一个极其简单的教程: 介绍: MRUnit是一款由Couldera公司开发的专门针对Hadoop中编写MapReduce单元测试的框架。它可以用于0.18.x版本中的经典org.apache.hadoop.m...原创 2012-04-28 21:50:02 · 142 阅读 · 0 评论 -
The Small Files Problem
原文:http://www.cloudera.com/blog/2009/02/the-small-files-problem/ 译文:HDFS处理大量小文件时的问题小文件指的是那些size比HDFS 的block size(默认64M)小的多的文件。如果在HDFS中存储小文件,那么在HDFS中肯定会含有许许多多这样的小文件(不然就不会用hadoop了)。而HDFS的问题在于无法很...原创 2012-05-16 21:38:28 · 157 阅读 · 0 评论 -
Hadoop Archive解决海量小文件存储
单台服务器作为Namenode,当文件数量规模不断增大时,元数据的规模增长将是一个需要面对的问题,由于Namenode需要将所有元数据Load到内存中,单台Namenode可能会无法管理海量的元数据。另一个是HDFS中SequenceFile存储方式的讨论,利用Block压缩方式可以很好的解决空间压力。 HDFS中文件是按Block来存储的,默认一个Bl...原创 2012-05-18 21:32:34 · 314 阅读 · 0 评论 -
Hadoop SequenceFile Writer And Reader
package cn.edu.xmu.dm.mpdemo.ioformat;import java.io.IOException;import java.net.URI;import org.apache.hadoop.conf.Configuration;import org.apache.hadoop.fs.FileSystem;import org.apac...2012-05-19 15:22:13 · 110 阅读 · 0 评论 -
Hadoop0.20+ custom MultipleOutputFormat
Hadoop0.20.2中无法使用MultipleOutputFormat,多文件输出这个方法。尽管0.19.2中的方法老的方法org.apache.hadoop.mapred.lib.MultipleOutputFormat还是可以继续在0.20.2中使用,但是org.apache.hadoop.mapred下的方法都是标记为“已过时”,在hadoop下个版本中可能就不能使用了。hadoop 0...原创 2012-05-20 11:46:01 · 116 阅读 · 0 评论 -
Eclipse:Run on Hadoop 没有反应
原因:hadoop-0.20.2下自带的eclise插件已过时。 解决方案:1、下载正确的插件:https://issues.apache.org/jira/secure/attachment/12460491/hadoop-eclipse-plugin-0.20.3-SNAPSHOT.jar 2、重命名:将下载的插件重命名为"hadoop-0.20.2-ecl...原创 2012-05-20 11:46:24 · 319 阅读 · 0 评论 -
Hadoop用于和Map Reduce作业交互的命令
用法:hadoop job [GENERIC_OPTIONS] [-submit <job-file>] | [-status <job-id>] | [-counter <job-id> <group-name> <counter-name>] | [-kill <job-id>] | [-events <...原创 2012-05-20 16:02:11 · 203 阅读 · 0 评论 -
Hadoop MapReduce Job性能调优——修改Map和Reduce个数
map task的数量即mapred.map.tasks的参数值,用户不能直接设置这个参数。Input Split的大小,决定了一个Job拥有多少个map。默认input split的大小是64M(与dfs.block.size的默认值相同)。然而,如果输入的数据量巨大,那么默认的64M的block会有几万甚至几十万的Map Task,集群的网络传输会很大,最严重的是给Job Tracke...2012-05-20 23:46:14 · 537 阅读 · 0 评论 -
Hadoop Map&Reduce个数优化设置以及JVM重用
Hadoop与JVM重用对应的参数是mapred.job.reuse.jvm.num.tasks,默认是1,表示一个JVM上最多可以顺序执行的task数目(属于同一个Job)是1。也就是说一个task启一个JVM。 比如在集群中配置每个slave节点最多同时运行16个map和2个reduce。那么在map阶段,slave节点会启动最多16个JVM用于m...2012-05-22 11:29:40 · 443 阅读 · 0 评论 -
Parallel K-Means Clustering Based on MapReduce
K-meansis a pleasingly parallel algorithm that very easily fits into the Iterativemap- reduce model.! 附件是一篇论文,伪代码和算法解释都很清楚。原创 2012-08-04 20:28:03 · 424 阅读 · 0 评论