草庐IT

Iterator-reducer

全部标签

java - 为什么我的 Reducer 没有读取文件?

我有一种方法可以从.txt文件创建哈希表,并使用该哈希表将值分配给传递给Reducer的值中的单词。这是我尝试这样做的方式:@Overridepublicvoidsetup(Contextcontext)throwsIOException{Pathpt=newPath("hdfs:/user/jk/sentiwords.txt");FileSystemfs=FileSystem.get(newConfiguration());BufferedReaderbr=newBufferedReader(newInputStreamReader(fs.open(pt)));Stringline=

java - Hadoop Iterator 在第一次迭代时跳过方法调用

我有一个MapReduce程序,在Reducer类中,我的方法在第一次迭代中没有被调用。我想要实现的是在迭代器的每2个连续值之间生成一些新行。(对像:(1,2),(2,3),(3,4)......)。我错过了什么?而且我还测试了我有我需要的对,看起来不错,但似乎第一对没有调用我的方法..generate()-将在每2个连续行之间生成新行(填补时间间隔)输入:X、Y、00:00:00、908X、Y、00:00:05、122X、Y、00:00:07、123期望的输出:X、Y、00:00:00、908X、Y、00:00:01、908X、Y、00:00:02、908X、Y、00:00:03、9

hadoop - 基于Map Reduce的OWL文件推理

我已经创建了一个大型本体(.owl),现在正处于推理步骤。事实上,问题是如何确保我的本体的可扩展推理。我在文献中进行了搜索,发现大数据可以很好地解决这个问题。不幸的是,我发现Map-reduce不能接受作为输入OWL文件。另外像SWRL、SPARQL这样的语义语言是不能用的。我的问题是:我应该用其他人更改猫头鹰文件吗?如何使用Map-reduce以可接受的格式转换规则(例如SWRL)?谢谢 最佳答案 “大数据可以充分解决这个问题”对于这个问题来说太简单了。确保OWL本体的可扩展性是一个非常复杂的问题。涉及的主要变量是公理的数量和本体

java - Hadoop Reducer 自定义可写

我有以下Reducer类publicclassCompanyMinMaxReducerextendsReducer{privateTextrText=newText();publicvoidreduce(Textkey,Iterablevalues,Contextcontext)throwsIOException,InterruptedException{intmin=Integer.MAX_VALUE;intmax=Integer.MIN_VALUE;LongWritableminDay=newLongWritable();LongWritablemaxDay=newLongWrit

hadoop - 在 Hadoop Map-Reduce 中向 reducer 添加计数器

我正在尝试编写一个mapreduce作业并想向我的reducer添加一个计数器。但是,当我运行作业时,计数器似乎没有出现在输出中。目前我正在使用这条线(Java):context.getCounter(ReducerCounters.COUNTDISTINCT).increment(1);老实说,我不能100%确定是否可以在reducer上使用这样的计数器。如果有人知道这是可能的还是不可能的,请告诉我。我似乎无法在网上找到任何关于reducer计数器的可靠示例。非常感谢。 最佳答案 以下是我的导入:importorg.apache.

hadoop - mapreduce 的 Reducer 函数中的 ArrayIndexOutOfBoundException

我不明白错误是什么,当我删除job.setSortComparatorClass(LongWritable.DecreasingComparator.class);我得到了输出,但是当我尝试使用它时出现了这个异常。我试图根据值从reducer中以降序获取输出,因此我使用了setsortcomparator类,所以请帮助我packagetopten.mostviewed.movies;importjava.io.IOException;importorg.apache.hadoop.io.IntWritable;importorg.apache.hadoop.io.LongWritabl

hadoop - 如何在没有键值对的情况下保存 Mapreduce 的 Reducer 输出?

我正在编写一个Mapreduce程序来处理Dicom图像。这个Mapreduce程序的目的是处理dicom图像,从中提取元数据,索引到solr,最后在Reducer阶段它应该将原始图像保存在hdfs中。我想在HDFS中保存相同的文件作为reducer输出所以我已经实现了大部分功能,但是在reducer阶段,当在hdfs中存储相同的文件时,它不起作用。我用dicom图像查看器测试了处理过的Dicom文件,它说文件被篡改了,而且处理过的dicom文件的大小也略有增加。Ex.原始Dicom大小为628Kb,当reducer将此文件保存在hdfs中时,它的大小变为630Kb。我尝试了这些链接的

java - Apache gora,在reducer中设置新表名的位置

我有一个基本上是ApacheGora的HbaseMapreduce作业的应用程序。我想将一个Hbase表数据复制到一个新表,这是一个非常简单的案例。在哪里写新表名。我评论了thisGuide但找不到放置新表名的位置。以下是代码片段,/*MappersareinitializedwithGoraMapper.initMapper()or*GoraInputFormat.setInput()*/GoraMapper.initMapperJob(job,inStore,TextLong.class,LongWritable.class,LogAnalyticsMapper.class,tru

map - hive 有自己的 map reduce 程序吗?

我想在我的应用程序上实现hive+hadoopmapreduce程序,我仍然想知道,因为我已经尝试了很多次关于在hive中查询和查找有关mapreduce程序的信息..我的问题是,hive有自己的mapreduce程序吗?因为当我尝试一个有点复杂的查询时,日志是这样的:Jobrunningin-process(localHadoop)2011-05-2614:10:02,004nullmap=100%,reduce=100%EndedJob=job_local_0001在该查询中有mapreduce过程,然后如果我尝试在google上搜索一些在hive中实现的mapreduce程序,也

hadoop - Map reduce value list顺序问题

正如我们所知,Hadoop按键对值进行分组,并将它们发送到同一个reduce任务。假设我在hdfs上的文件中有下一行。第1行2号线3号线....亚麻在maptask中,我打印文件名和行。在reduce中,我收到了不同的订单。例如key=>{line3,line1,line2,....}现在,我有下一个问题。我想得到这个值列表,以便它们位于文件中,作为key=>{line1,line2,...linen}有什么办法吗? 最佳答案 如果您使用TextInputFormat,你会得到一个作为映射器输入。LongWritable部分(或键)