
MapReduce编程
文章平均质量分 90
风声2012
这个作者很懒,什么都没留下…
展开
-
[MapReduce] mapreduce 编程向标准错误输出报告以跟踪Mapreduce程序运行过程中的中间信息
在 mapreduce streaming 程序中向标准错误输出日志语句是一个很好的习惯. 输出到标准错误的信息将以报告形式输出.这样可以在网页中查看job运行过程中的中间信息.并且 mapreduce 程序默认在一段时间中没有任何输出(stdout, stderr) 时会将 job kill, 这可以避免此类问题.例如: python 中的 print >>s原创 2013-09-19 13:32:08 · 2438 阅读 · 0 评论 -
[MapReduce] 如何向map和reduce脚本传递参数,加载文件和目录
本文主要讲解三个问题: 1 使用Java编写MapReduce程序时,如何向map、reduce函数传递参数。 2 使用Streaming编写MapReduce程序(C/C++, Shell, Python)时,如何向map、reduce脚本传递参数。 3 使用Streaming编写MapReduce程序(C/C++, Shell, Python)时,如何原创 2013-09-19 13:27:46 · 6354 阅读 · 0 评论 -
实现每个Map或Reduce任务只执行一次map或reduce方法
实现每个Map或Reduce任务只执行一次map或reduce方法 默认情况下map和reduce方法是针对每一个对执行一次,但是用户可以书写让map或reduce task只执行一次map或者reduce方法的应用程序。书写这样的程序之前,请先弄清MapReduce框架中map、reduce方法的运行方式。 实际上只需要在用户程序的map类和reduce类中重载run方法,把循环遍历每个输入的对放到map函数和reduce函数中处理就行了。 将代码打包成jar后,在集群中运行。 h原创 2010-08-16 19:12:00 · 3920 阅读 · 0 评论 -
Hadoop 中文编码相关问题 -- mapreduce程序处理GBK编码数据并输出GBK编码数据
输入是GBK文件, 输出也是 GBK 文件的示例代码:Hadoop处理GBK文本时,发现输出出现了乱码,原来HADOOP在涉及编码时都是写死的UTF-8,如果文件编码格式是其它类型(如GBK),则会出现乱码。此时只需在mapper或reducer程序中读取Text时,使用transformTextToUTF8(text, "GBK");进行一下转码,以确保都是以UTF-8的原创 2013-09-19 13:39:32 · 18919 阅读 · 3 评论 -
Java 命令行模式下编译 MapReduce 程序
不使用 eclipse 这些工具,直接使用 java 命令在命令行下编译 mapreduce 程序。首先需要设置CLASSPATH环境变量:将/root/hadoop/hadoop-0.20.1/hadoop-0.20.1/hadoop-0.20.1-core.jar和lib下的commons-cli-1.2.jar添加进入环境变量,export CLASSPA原创 2013-09-12 20:17:38 · 3020 阅读 · 0 评论 -
MapReduce框架中map、reduce方法的运行方式
MapReduce程序中的map和reduce方法是重载Mapper类和Reducer类的map和reduce方法。MapReduce程序中的map和reduce方法在框架中默认是如下运行方式:针对一个对运行一次map方法或者reduce方法,其具体实现见package org.apache.hadoop.mapreduce包下的Mapper类和Reducer类。实现机制: Mapper类和Reducer类的run方法中将针对输入的所有对,循环执行map方法和reduce方法。请见代码Mapper类:pac原创 2010-08-16 17:13:00 · 4779 阅读 · 0 评论 -
MapReduce 程序本地调试 / Hadoop 操作本地文件系统
将 hadoop 主目录下的 conf 下的配置文件全部置空.此时运行 hadoop 命令将使用本地文件系统, 可以在本地运行 mapreduce 程序, 操作磁盘上的文件.例如:kentHadoopUnit jar NewsProcessMR.jar view.txt out view 这将在本地执行 mapreduce 程序, 这可以方便本地做调试.原创 2013-04-14 12:04:47 · 4694 阅读 · 2 评论