从Hadoop工具传回多个值

时间:2018-08-14 09:14:16

标签: java hadoop mapreduce

在Hadoop Java应用程序中,我需要将多个整数值从MapReduce Tool实例传递回调用方。到目前为止,我已经尝试并失败如下:

  • TypeError: Failed to set the 'files' property on 'HTMLInputElement': The provided value is not of type 'FileList'.向其调用者返回一个整数值。
  • Tool.run()Configuration.set()很方便,但是如here所述,作业配置在运行时由jobtracker序列化为XML,并复制到所有任务中节点。对Configuration对象的任何更改都只会影响该对象,该对象是特定任务JVM的本地对象。不会更改每个节点的XML。
  • .get()仅在调用者自己扩展了Configuration.getCounter().set()并且调用了Configured时才起作用,而通过静态方法则不可能。
  • 我相信分布式缓存是只读的(因此,我实际上并没有尝试使用它,也许可以吗?)

有什么想法我该怎么做或应该怎么做?

1 个答案:

答案 0 :(得分:0)

我已经通过编写一个抽象的Tool包装器解决了这个问题,该包装器具有Job属性,一个受保护的setter和一个公共getter。