草庐IT

MAPREDUCE

全部标签

hadoop - Hadoop MapReduce 何时运行组合器的权威来源

已经有很多这样的问题,答案相互矛盾。我还在文献和博客中发现了相互矛盾的说法。在Hadoop权威指南一书中,它说Hadoopdoesnotprovideaguaranteeofhowmanytimesitwillcall[thecombiner]foraparticularmapoutputrecord,ifatall.Inotherwords,callingthecombinerfunctionzero,oneormanytimesshouldproducethesameoutputfromthereducer此处类似问题的答案Onwhatbasismapreduceframework

java - 在hadoop中没有reducer的情况下限制多输出中映射器的数量

您好,我有一个从HBase读取记录并将其写入文本文件的应用程序HBase表有200个区域。我在映射器类中使用MultipleOutputs来写入多个文件,并且我正在根据传入的记录创建文件名。我正在制作40个唯一的文件名。我能够正确获取记录,但我的问题是,当mapreduce完成时,它会创建40个文件以及2k个具有正确名称但附加的额外文件用m-000等等。这是因为我有200个区域,MultipleOutputs为每个映射器创建文件,所以200个映射器,每个映射器有40个唯一文件,所以它创建40*200个文件。如果没有自定义分区程序,我不知道如何避免这种情况。有什么方法可以强制将记录写入所

hadoop - 尝试执行 pig 语句时出错

我正在尝试执行一条pig语句,该语句向我显示txt文件中的数据,并且我在mapreduce模式下运行,但是我收到一个错误,请有人帮我解决这个问题!![root@master~]#pig-xmapreduce17/04/1917:42:34INFOpig.ExecTypeProvider:TryingExecType:LOCAL17/04/1917:42:34INFOpig.ExecTypeProvider:TryingExecType:MAPREDUCE17/04/1917:42:34INFOpig.ExecTypeProvider:PickedMAPREDUCEastheExecTy

java - Hadoop input.FileSplit 不能大小写为 mapred.FileSplit

我正在尝试使用以下代码在HadoopMapper中获取文件名:FileSplitfileSplit=(FileSplit)context.getInputSplit();Stringfilename=fileSplit.getPath().getName();我导入的库是:importorg.apache.hadoop.mapred.FileSplit;我得到异常:org.apache.hadoop.mapreduce.lib.input.FileSplitcannotbecasttoorg.apache.hadoop.mapred.FileSplit有人可以帮忙吗?

hadoop - 在 Cloudera Quickstart VM 中导入所有表时在 Sqoop 中出现错误

当我尝试通过sqoop导入所有表时出现以下错误:sqoopimport-all-tables-m12--connect在此处输入代码"jdbc:mysql://quickstart.cloudera:3306/retail_db"--username=retail_dba--password=cloudera--warehouse-dir=/r/cloudera/sqoop_importPleaseset$ACCUMULO_HOMEtotherootofyourAccumuloinstallation.17/04/2315:29:27INFOsqoop.Sqoop:RunningSqo

java - Hadoop 文件开头附加的奇怪字符

每当我使用Java在Hadoop中创建一个新文件并写入内容时,都会在文件开头附加特殊字符。有办法消除吗?下面是代码TransformerFactorytf=TransformerFactory.newInstance();Transformertransformer=tf.newTransformer();transformer.setOutputProperty(OutputKeys.OMIT_XML_DECLARATION,"yes");transformer.setOutputProperty(OutputKeys.METHOD,"xml");transformer.setOut

hadoop - mapreduce 中的 NoSuchElementException

我是mapreduce的新手,遇到NoSuchElementException,请帮忙。在文本下方输入文件容器:thisisahadoopprogramiamwritingitforfirsttime映射器类:publicclassMappersextendsMapReduceBaseimplementsMapper{privateTextword=newText();privateIntWritablesingleWordCount=newIntWritable();privateIntWritableone=newIntWritable(1);@Overridepublicvoid

python - 如何通过 pyspark/hadoop/etc 提高程序的速度?

我有一个大型矩阵目录,我正在对此类矩阵应用一些昂贵的操作。管道看起来像这样:Directory->extractmatrices->applyoperations->saveina.csvfile请注意,我将之前的“管道”包装到一个函数中。到目前为止,使用python的多处理库,我能够在1周内应用以前的管道。但是,我很好奇是否有可能以sparkmap-reduce的方式“并行化”之前的函数。因此,我的任务可以用pysparksmapreduce来增强吗?我怎样才能提高速度?(我只有两台笔记本电脑),你们推荐我在不修改功能的情况下提高管道速度的其他方法是什么?

hadoop - 如何避免 Hadoop 中的 Map/Reduce 任务失败

我有一个迭代次数太多的循环和一个在Reducer函数中计算量很大的函数。while(context.getCounter(SOLUTION_FLAG.SOLUTION_FOUND).getValue()MAX_ITR是迭代次数-用户输入问题是当我在Hadoop集群上运行它时出现超时错误并且Reducer任务被终止17/05/0621:09:43INFOmapreduce.Job:TaskId:attempt_1494129392154_0001_r_000000_0,Status:FAILEDAttemptID:attempt_1494129392154_0001_r_000000_0

hadoop - Hadoop 的 TaskStatus 类中的 getProgress() 方法是什么?

类TaskStatus类有一个方法getProgress()但我不确定这个方法实际返回什么。是花费的时间还是处理的输入数据?我想知道到目前为止在源代码中处理了多少数据。我应该怎么办?我应该使用getProgress()吗? 最佳答案 这是来自here的JavaDoc注释Getthecurrentprogress.Returns:anumberbetween0.0and1.0(inclusive)indicatingtheattempt'sprogress.在这里尝试成为mapreduce作业。