草庐IT

java - Java 中 hadoop map/reduce 程序中奇怪的格式问题

我有一个包含以下示例记录的csv文件。|publisher|site|adclicks|adviews||============|====================|===========|==========||publisher1|www.sampleSite.com|50|75||publisher1|www.sampleSite2.com|10|40||publisher2|www.newSite1.com|100|175||publisher2|www.newSite2.com|50|65|在java中使用map/reduce,我试图汇总每个发布商的所有广告点击次数和

hadoop - Amazon Elastic Map Reduce 是否在每个实例中运行一个或多个映射器进程?

我的问题是:我应该自己关心映射器中的多重处理(从标准输入读取任务,然后将它们分配给工作进程,在主进程中组合结果并输出到标准输出)还是Hadoop会自动处理它?我在HadoopStreaming文档和AmazonElasticMapReduce常见问题解答中都没有找到答案。 最佳答案 Hadoop有一个“槽”的概念。Slot是mapper进程运行的地方。您配置每个tasktracker节点的槽数。它是映射进程的理论最大值,它将在每个节点上并行运行。如果没有足够的输入数据的单独poprtions(称为FileSplits),它可能会更少

java - 如何在 Hadoop 中显式指定 map 节点或 reduce 节点

是否有任何.xml文件或类似文件明确指定是我要运行Map任务或Reduce任务的节点。如果这是依赖于hadoop体系结构的,那么如何指定节点。 最佳答案 不,没有这样的功能。我怀疑是否会创建这样的功能,因为这会破坏可扩展性和容错性。 关于java-如何在Hadoop中显式指定map节点或reduce节点,我们在StackOverflow上找到一个类似的问题: https://stackoverflow.com/questions/10781968/

performance - Hadoop Map reduce - 如何加速作业启动/设置

我正在使用mongo-hadoop适配器来运行map/reduce作业。除了启动时间和工作所花费的时间外,一切都很好。即使数据集非常小,map时间也为13秒,reduce时间为12秒。事实上,我已经更改了mapred-site.xml和core-site.xml中的设置。但是map/reduce花费的时间似乎是恒定的。有什么办法可以减少它。我还从hanborq探索了优化的hadoop分布.他们使用工作池来更快地启动/设置作业。由于hanborq分布不是很活跃,是否有其他地方可用的等效项。它是4个月前更新的,基于旧版本的hadoop。我的一些设置如下:mapred-site.xml:ma

java - 使用 Hadoop Map Reduce 加入来自 NoSQL 数据库的数据

我目前正在使用Solr作为NoSQL数据库。我已经为各种类型的文档编制了索引,这些文档有时之间存在关联。对于新用例,我必须执行Solr不支持的等效连接。我想知道是否有一种方法可以将map-reduce作业提交到hadoop,然后hadoop可以从Solr中提取数据并执行连接。我正在寻找:讨论执行此操作的现有开源项目示例代码或批评告诉我这既不容易完成,也不能在一般情况下完成。提前致谢。注意:我在这里看到了一些关于相关或类似主题的问题:here,here和here但我没有得到我要找的东西。 最佳答案 您有两个基本选项。1)使用SOLRR

hadoop - 为什么我的 hadoop map reduce 程序中出现类转换异常?

为什么我在我的hadoopmapreduce程序中出现类转换异常?现在这给了我一个异常(exception)。我的map应该以键/值的形式将输出生成为Text/IntWritable。我正在这样做,但仍然收到IOExceptionpublicclassAverageClaimsPerPatentsByCountry{publicstaticclassMyMapextendsMapReduceBaseimplementsMapper{@Overridepublicvoidmap(LongWritablekey,Textvalue,OutputCollectoroutput,Reporte

hadoop - 在 map reduce 中引用来自 hadoop dfs 的文件

对于我的mapreduce作业,我正在读取输入文件中的行以获取外部文件路径。所以我用作输入的文件如下所示:/user/local/myfiles/temp1.png/user/local/myfiles/temp2.jpg/user/local/myfiles/temp3.txt/user/local/myfiles/temp4.txt....我想对这些文件执行一些操作。我需要从我在map函数中读取的字符串路径中获取文件对象。我的问题是:我应该把这些文件的实际副本放在哪里,以便我可以获取它们?我是否将它们放在hadoopdfs上?当我把它们放在本地系统上时,我得到一个找不到文件的错误,

hadoop - 如何在Hadoop中根据集群大小设置reduce任务

我想将#ofreducetasks设置为正好等于一个作业中可用的reduceslots的数量。默认情况下,reduce任务被计算为可用reduce插槽数量的约1.75倍(在ElasticMapreduce上)。我注意到我的工作非常均匀地完成reduce任务,因此最好在工作中每个reduce槽运行1个reducer。但是如何从我的作业配置中识别集群指标? 最佳答案 你可以使用ClusterMetrics获取Map-Reduce集群当前状态信息的类,如集群大小、黑名单和退役跟踪器数量、集群槽容量、当前占用/保留的map&reduce槽数

hadoop - 如何使用 LZO 以外的压缩处理 Hadoop Map/Reduce 中的 Protocol Buffer 文件?

我想使用HadoopMap/Reduce来处理delimited使用LZO以外的东西压缩的ProtocolBuffer文件,例如xz或gzip。Twitter的elephant-bird库似乎主要支持读取LZO压缩的protobuf文件,因此似乎不能满足我的需求。是否有现有的库或标准方法来执行此操作?(注意:正如您从我选择的压缩算法中看到的那样,解决方案没有必要使protobuf文件可拆分。您的答案甚至不需要指定特定的压缩算法,但应该至少允许我提到的其中之一。) 最佳答案 您可能需要查看Hadoop的RAgzip补丁,以处理大型gz

c# - 在 MapReduce 中使用 Windows Azure 存储执行 Reduce 函数后无法看到最终结果

我正在使用c#.net编写map和reduce函数。我基本上遵循给出的示例here最终命令Hadoopjarhadoop-streaming.jar-files"hdfs:///example/apps/map.exe,hdfs:///example/apps/reduce.exe"-input"/example/apps/data.csv"-output"/example/apps/output.txt"-mapper"map.exe"-reducer"reduce.exe"作业成功运行现在从交互式JS模式,如果我写js>#cat/example/apps/output.txtcat