草庐IT

mapReduce

全部标签

java - 使用 Hadoop 自定义数据类型时出现 EOF 异常

我是第一次在Hadoop中使用自定义数据类型。这是我的代码:自定义数据类型:publicclassTwitterDataimplementsWritable{privateLongid;privateStringtext;privateLongcreatedAt;publicTwitterData(Longid,Stringtext,LongcreatedAt){super();this.id=id;this.text=text;this.createdAt=createdAt;}publicTwitterData(){this(newLong(0L),newString(),newL

java - 在 Hadoop 中解析 XML 文件

您好,我已经在VMware上以伪分布式模式安装了hadoop-0.20.2-cdh3u5。我想使用这个已建立的环境来解析XML文件。我可以通过编写map/reduce代码,然后将它们作为.jar文件导出到集群上,然后在集群上执行它们来实现。我无法弄清楚的是如何将此的java解析代码(使用SAXON解析器)放入map/reduce类中,然后在输出中生成csv文件。所以我有这个解析代码:(在这里使用SAXon解析器)importjava.io.FileNotFoundException;importjava.io.FileReader;importjava.io.IOException;i

hadoop - 在 hadoop 0.23.6 中运行 mapreduce 示例时出错

我在Ubuntu12.04LTS中部署了Hadoop0.23.6。我能够复制文件并进行文件操作。我正在使用YARN进行mapreduce。当我尝试使用hadoop-mapreduce-examples-0.23.6.jar运行任何mapreduce应用程序时出现以下错误使用的命令:bin/hadoopjarhadoop-mapreduce-examples-0.23.6.jarrandomwriter-Dmapreduce.randomwriter.mapsperhost=1-Dmapreduce.job.user.name=$USER-Dmapreduce.randomwriter.

hadoop - Hadoop 的 MapReduce 中的 "Map"和 "Reduce"函数

我一直在看hadoop的这个字数统计示例:http://hadoop.apache.org/docs/r1.0.4/mapred_tutorial.html#Source+Code而且我对Map函数有点困惑。在所示的map函数中,它接受一个LongWritable类型的“键”,但这个参数从未在Map函数的主体中使用。应用程序程序员希望Hadoop为这个key传递什么?如果map函数只是从一行文本或其他内容中解析值,为什么它需要一个键。有人可以给我一个输入需要键和值的例子吗?我只看到map为V1->(K2,V2)。另外一个问题:在hadoop的真正实现中,他们的多个归约步骤是不是?如果是

Hadoop 2.0。它只支持新的 MapReduce 2 还是同时支持经典和新的 MapReduce?

Hadoop2.0是只支持新的MapReduce2(YARN)还是同时支持经典和新的MapReduce? 最佳答案 两者都支持。不同之处在于,您所谓的经典mapreduce现在将作为应用程序运行,而不是集成为框架的一部分。YARN允许社区构建其他类似mapreduce的应用程序以在Hadoop平台上运行。另一个MR2应用程序的示例可以在下面的第一个链接中找到,名为DIstrutedShellBriefExplanationMR2andYARN本文的最底部明确说明了这一点。所有更改为MRv2的人都必须重新编译他们的源代码,它应该可以运

java - 与数据库交互时出现 ClassNotFoundException 错误

我试图运行一个在底层数据库之上运行的mapreduce程序。当我安装了一个hadoop发行版时,它可以在hadoop下载中找到。这些程序适用于此发行版。但是当我编译我自己的hadoop发行版并尝试运行相同的程序时,我收到以下错误。我遵循了将mysql连接器jar放在hadoop/lib目录中并将一个放在分布式缓存中的过程。虽然这些程序适用于hadoop下载下可用的发行版,但它们不适用于我创建的发行版。谁能告诉我可能出了什么问题?我尝试了所有其他方法,例如更新类路径和HADOOP_CLASSPATH变量,但都没有用。hduser@ramanujan:~$hadoopjarSimpleCo

hadoop - 针对不同映射器的 HBase MapReduce 拆分扫描

我正在努力以正确的方式为多个maptask分配我的HBase行。我的目标是通过行键拆分我的扫描,并将一组行分别分配给map作业。到目前为止,我只能定义一个扫描,其中我的映射器一次总是获取一行。但这不是我想要的-我需要map-inputset-wise。那么是否有可能拆分我的HBase表resp。扫描成n组行,然后输入n个映射器?我不是在寻找一种解决方案来启动一个MapReduce作业来编写n个文件,然后另一个MapReduce作业将它们作为文本输入再次读回以获取这些集合。提前致谢! 最佳答案 Mappers每次总是获取一行——这就是

java - 如何计算 MR 作业中 HDFS 中的文件数?

就此而言,我是Hadoop和Java的新手。我正在尝试从我正在编写的MapReduce驱动程序计算HDFS上文件夹中的文件数。我想在不调用HDFSShell的情况下执行此操作,因为我希望能够传入我在运行MapReduce作业时使用的目录。我尝试了很多方法,但由于我对Java的经验不足,都没有成功实现。如有任何帮助,我们将不胜感激。谢谢,游牧。 最佳答案 您可以只使用文件系统并遍历路径内的文件。这是一些示例代码intcount=0;FileSystemfs=FileSystem.get(getConf());booleanrecurs

hadoop - 如何在代码中找到 hadoop 作业的作业 ID?

我有一个Hadoop程序,它有一个循环。在循环的每次迭代中,都会创建一个作业。如何在代码中找到作业ID? 最佳答案 当您提交Job实例时,您可以使用getJobID方法获取有关作业ID的信息:Configurationconfig=newConfiguration();Jobjob=newJob(config);//configureyourjobjob.submit();//atthatpointyourjobissubmittedbutnotfinishedandshouldhaveyourjobidStringjobid=jo

Hadoop 1.0.4 分布式缓存错误

我正在MapReduce中构建一个日志分析程序。为此,我使用MaxMindGeoIP数据。现在我想将GeoIP数据放入分布式缓存中。我正在Eclipse中开发我的应用程序。这是我正在做的Jobjob=newJob();DistributedCache.addCacheFile(newURI(args[3]),job.getConfiguration());其中args[3]将具有路径。我在这里使用它protectedvoidsetup(Contextcontext){try{//Stringdbfile="GeoIP//GeoIPCountry.dat";org.apache.hado