如何过滤hadoop map/reduce作业输出文件中的键或值?

kx1ctssn  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(439)

通常,hadoop map/reduce job会生成键值对列表,这些键值对会被写入job的输出文件(使用 OutputFormat 类)。很少,键和值都有用,通常键或值包含必需的信息。
是否有一个选项(在客户端)来抑制输出文件中的键或抑制输出文件中的值?如果我只想做一个特定的工作,我可以创造新的 OutputFormat 忽略键或值的实现。但我需要通用的解决方案,是可重用的更多的工作。
编辑:可能不清楚我所说的“我需要可重用的通用解决方案”是什么意思
假设我有很多准备 Mapper , Reducer , OutputFormats 班级。我想将它们组合到不同的“作业”中,并在不同的输入文件上运行这些“作业”,以生成不同的输出文件。在某些情况下(对于某些作业),我需要抑制键,这样它们就不会写入输出文件。我不想改变我的Map器,输出格式的缩减器的代码-他们中有太多的人这样做。我需要一些通用的解决方案,不需要改变给定的Map器,减少或输出格式的代码。我该怎么做?

vs3odd8k

vs3odd8k1#

hadoop流中的最后一步没有理由不能配置为编写 NullWritable 作为键或值。您不应该期望该文件在任何后续的map reduce步骤中有多大用处。

相关问题