草庐IT

md-input-container

全部标签

hadoop - 从 "reduce input records"到 "reduce input groups"

运行MapRed作业后,我们会得到一些关于该作业的摘要,例如:...reduceinputrecords:10reduceinputgroups:3...我知道这是由组合重复键引起的。我的问题是reducer用来组合记录的方法是什么?key1.equals(key2)orkey1.hashCode==key2.hashCode?谢谢。 最佳答案 只有compareTo因为键必须实现WritableComparable.key.hashCode()用于分区原因。永远不会使用等于。 关于ha

hadoop - Apache pig -错误 2118 : For input string: "4f8:0:a111::add:9898"

我们最近升级了集群以使用Hadoop2.0.0-cdh4.4.0。更改后,我们需要重新安装pig,它曾经工作得非常好。安装后asdescribedhere,最简单的HBase作业不会创建。raw_protobuffer=LOAD'hbase://data_table'USINGorg.apache.pig.backend.hadoop.hbase.HBaseStorage('external_data:downloaded','-limit=1-gte=0-lte=1')AS(data:bytearray);魔法失败了:FailedJobs:JobIdAliasFeatureMessa

Hadoop : Number of input records for reducer

无论如何,每个reducer进程都可以确定它必须处理的元素或记录的数量吗? 最佳答案 简短回答-提前不,reducer不知道可迭代对象支持多少个值。您可以执行此操作的唯一方法是在迭代时进行计数,但您不能再对可迭代对象进行重新迭代。长答案-支持可迭代对象实际上是序列化键/值对的排序字节数组。reducer有两个比较器-一个用于按键顺序对键/值对进行排序,然后第二个用于确定键之间的边界(称为键分组器)。通常,键分组器与键排序比较器相同。当迭代特定键的值时,底层上下文检查数组中的下一个键,并使用分组比较器与前一个键进行比较。如果比较器确定

hadoop - 为什么 mapreduce 尝试由于 "Container preempted by scheduler"而被终止?

我刚刚注意到Hadoop上的许多Pig作业由于以下原因而被杀死:Containerpreemptedbyscheduler有人可以向我解释是什么原因造成的,我是否应该(并且能够)对此做些什么?谢谢! 最佳答案 如果您有公平的调度程序并启用了多个不同的队列,那么更高优先级的应用程序可以终止您的作业(以抢占方式)。Hortonworks有一个很好的解释和更多的细节https://docs.hortonworks.com/HDPDocuments/HDP2/HDP-2.3.2/bk_yarn_resource_mgt/content/pr

hadoop - Yarn Resource Manager UI 中的 Num Off Switch Containers 是什么意思?

我有一个ETL作业占用大量CPU和内存并运行了很长时间。我在调试时观察到的第一件事如下(来自资源管理器GUI上的作业)NumNodeLocalContainers(满足)=6NumRackLocalContainers(满足)=00NumOffSwitchContainers(满足)=11367我们只有两个架子。我需要帮助回答以下三个问题NumOffSwitchContainer的含义是什么?我如何识别这些“关闭开关”容器以及它们在哪些节点上运行?关闭开关容器是否会导致作业处理时间变慢? 最佳答案 1.NumOffSwitchCon

java.lang.NumberFormatException : For input string: "100" while executing MapReduce 异常

我正在编写一个MapReduce作业,用于在facebook上寻找共同的friend。这是我的映射器的输入:100,200300400500600200,100300400300,100200400500400,100200300500,100300600,100这是我的映射器代码的一部分:map{Stringline=value.toString();String[]LineSplits=line.split(",");String[]friends=LineSplits[1].trim().split("");for(inti=0;i当我执行此操作时,我在friend2中获得了正确

java - Hadoop Java : how to specify map key as one of the index of input split?

我有一个看起来像这样的输入数据:3070801,1963,1096,,"BE","",,1,,269,6,69,,1,,0,,,,,,,3070802,1963,1096,,"US","TX",,1,,2,6,63,,0,,,,,,,,,3070803,1963,1096,,"US","IL",,1,,2,6,63,,9,,0.3704,,,,,,,3070804,1963,1096,,"US","OH",,1,,2,6,63,,3,,0.6667,,,,,,,3070805,1963,1096,,"US","CA",,1,,2,6,63,,1,,0,,,,,,,3070806,196

input - 节点本地映射减少作业

我目前正在尝试编写一个map-reduce作业,其中输入数据不在HDFS中并且无法加载到HDFS中,主要是因为使用该数据的程序无法使用HDFS中的数据,而且有太多数据无法复制到HDFS中,每个节点至少1TB。因此,我的集群中的4个节点各有4个目录。理想情况下,我希望我的映射器只接收这4个本地目录的路径并使用file:///var/mydata/...之类的内容读取它们,然后1个映射器可以处理每个目录。即总共16个映射器。然而,为了能够做到这一点,我需要确保每个节点正好有4个映射器,并且恰好有4个映射器已分配到该机器的本地路径。这些路径是静态的,因此可以硬编码到我的文件输入格式和记录读取

hadoop - Nutch : org. apache.hadoop.mapreduce.lib.input.InvalidInputException: 输入路径不存在

当我执行nutch命令创建crawdb文件夹和内容时:soporte@CNEOSYLAP/usr/local/apache-nutch-2.2.1/runtime/local$bin/nutchcrawlurls-dircrawl-depth3-topN5我收到这个错误:InjectorJob:Usingclassorg.apache.gora.hbase.store.HBaseStoreastheGorastorageclass.Exceptioninthread"main"org.apache.hadoop.mapreduce.lib.input.InvalidInputExcep

hadoop - 无法启动 TaskTracker.Says 无法启动任务跟踪器,因为 java.lang.IllegalArgumentException : Does not contain a valid host:port authority:

编辑了mapred-site.xml、core-site.xml、hadoop-env.sh、hdfs-site.xml、masters和slaves。我有1个DataNode和2个Namenode。它们都成功启动,我可以在浏览器中看到它们。启动了start-mapred.sh并在Namenode上启动了JobTracker和TaskTracker,但无法在datanaode上启动Tasktracker。启动Tasktracker,输出如下。->hadooptasktrackerWarning:$HADOOP_HOMEisdeprecated.13/10/1703:21:55INFOm