草庐IT

java - 用于时间序列数据的 Cassandra Map Reduce

如何从映射器中访问Cassandra列族?具体来说,如何将map()方法的参数转换回我期望的java类型?Key{logType}->{列名:timeUUID,列值:csvlogline,ttl:1year}感谢@Chris&@rs_atl我成功运行了hadoop作业,这里是完整的代码:packagecom.xxx.hadoop;importjava.io.IOException;importjava.nio.ByteBuffer;importjava.util.Iterator;importjava.util.SortedMap;importorg.apache.cassandra.

Hadoop MapReduce 遍历 reduce 调用的输入值

我正在测试一个简单的mapreduce应用程序,但我在尝试理解当我迭代reduce调用的输入值时会发生什么时遇到了一些困难。这是一段行为异常的代码..publicvoidreduce(Textkey,Iterablevalues,Contextcontext)throwsIOException,InterruptedException{Iteratoriterator=values.iterator();Efirst=(E)statesIter.next();while(statesIter.hasNext()){Estate=statesIter.next();System.out.

hadoop - 哪个类将 Hive & Ping 解析为 Map Reduce

哪个是将pig和hive命令解析为MapReduce作业的类,这种解析背后的算法是什么? 最佳答案 Pig和Hive都使用ANTLR构建一个编译器来解析他们的脚本。如果你对编译原理不熟悉,建议你阅读一些相关资料。对于Pig,ANLTR的源代码是src/org/apache/pig/parser/QueryLexer.g和src/org/apache/pig/parser/QueryParser.g。它们将被编译为org.apache.pig.parser.QueryLexer和org.apache.pig.parser.QueryP

java - 映射器和缩减器的数量。这是什么意思?

我是MapReduce-hadoop世界的新手。在配置和文档中,他们指定了映射器和缩减器的数量。这到底是什么意思?我的疑问是:是否指定将完成映射/缩减的级别数。即,如果reducer的数量=2。那么reduce方法将被调用2次。是吗?是否指定并行工作的映射器/缩减器线程数,但每个线程只进行一次映射/缩减。哪个是正确的?或者它意味着别的东西。我很困惑..请回答我 最佳答案 不,你完全错了。指定maptasks的数量只是给框架一个提示,输入格式决定了输入拆分的数量,一个拆分=一个maptask。reducetasks的数量表示map输出

java - 从节点可以运行Hadoop Map/Reduce Job吗?

我在两个节点(主节点和从节点)上安装了Hadoop。我会问我是否可以从从机运行Map/Reduce作业或从从机使用HDFS。从主节点运行map/reduce作业没有问题,但是当我尝试从从节点运行Map/Reduce作业时,出现以下错误。Java.net.connectionException因连接异常而失败。 最佳答案 只要每个节点都配置了正确的jobtracker位置属性,您就可以从集群中的任何机器运行作业。事实上,您可以在任何机器上运行作业,包括您的个人台式机或笔记本电脑,只要您连接到服务器(也就是说,没有防火墙挡在您的路上)并

java - 如何从 Map-Reduce 中的多个目录读取多个文件

我想在Map-Reduce程序中从多个目录读取多个文件。我试图在main方法中给出文件名:FileInputFormat.setInputPaths(conf,newPath("hdfs://localhost:54310/user/test/"));FileInputFormat.setInputPaths(conf,newPath("hdfs://localhost:54310/Test/test1/"));但它只读取一个文件。读取多个文件应该怎么办?请提出解决方案。谢谢。 最佳答案 FileInputFormat#setInp

hadoop - mapreduce 的哪个部分/类是停止 reduce 任务的逻辑实现

在HadoopMapReduce中,在所有映射器完成之前,没有缩减器启动。有人可以解释一下这个逻辑是在哪个部分/类/代码行实现的吗?我说的是HadoopMapReduce版本1(不是Yarn)。我已经搜索了mapreduce框架,但是类太多了,我不太了解方法调用及其顺序。换句话说,我需要(首先用于测试目的)让reducers开始减少,即使仍然有工作的映射器。我知道这样我得到的工作结果是错误的,但我知道这是更改框架部分的一些工作的开始。那么我应该从哪里开始查看并进行更改? 最佳答案 这是在洗牌阶段完成的。对于Hadoop1.x,请查看

hadoop - 有什么方法可以防止在所有 map task 完成之前 reduce task 开始

我想在Hadoop集群上同时运行多个作业,但我想阻止某些作业在该作业的所有映射任务完成之前开始缩减阶段(使缩减槽繁忙或保留)。是否有任何配置可以像上面那样设置主题限制?谢谢。 最佳答案 减少慢启动默认情况下,调度程序会等待作业中5%的maptask完成为同一工作安排reducetask。对于大型作业,这可能会导致问题集群利用率,因为它们在等待map任务时占用reduce槽完全的。将mapred.reduce.slowstart.completed.maps设置为更高的值,例如0.80(80%),有助于提高吞吐量。引用:Hadoop权

hadoop - map() 和 reduce() 应该返回相同类型的键/值对吗?

在编写MapReduce作业(如果相关,特别是Hadoop)时,必须定义一个map()和一个reduce()函数,两者都会产生一系列键/值对。键和值的数据类型由应用程序自由定义。在字数统计的典型示例中,这两个函数都产生类型为(string,int)的对,键是一个字,值是出现次数。在这里-以及我见过的所有其他示例-输出的键和值类型在两个函数之间是一致的。map()和reduce()生成的键/值对的类型必须/应该在任何MapReduce应用程序中相同吗?如果是:为什么? 最佳答案 没有。显然,map的输出对类型和reduce的输入对类型

hadoop - map-reduce 是否可以有多个输出文件?

在我的输入文件中,我有一列作为国家/地区。现在,我的任务是将特定国家/地区的记录放入以该国家/地区命名的单独文件中。这可能在Map-reduce中做吗?!请分享您对此的看法。 最佳答案 是的,在hadoop中你可以使用MultipleOutputFormat要做到这一点,使用它的generateFileNameForKeyValue方法。使用您的国家/地区名称作为键并使用记录作为值,这应该完全按照您的需要工作。 关于hadoop-map-reduce是否可以有多个输出文件?,我们在Sta