如何在hadoop map reduce编程框架中打印中间数据

jv4diomz  于 2021-06-02  发布在  Hadoop
关注(0)|答案(2)|浏览(445)

假设我们有一个文件包含test::

hi how are you 
how is your  job 
how is your family
what is hadoop hi

mapperclass的期望输出:

hadoop[1]

hi[1,1]

how[1,1,1]

is[1,1,1]

your[1,1]

每个不同的字符串都是这样的。。。。

fjaof16o

fjaof16o1#

输入文件::dravid banglore sachin mumbai dhoni ranchi dravid jaipur dhoni chennai sehwag delhi gambhir delhi gambhir加尔各答减速机输出::dravid banglore,jaipur dhoni ranchi,chennai gambhir delhi,加尔各答sachin mumbai sehwag delhi
这可以通过使用map-reduce程序来实现。
Map器类:玩家名将是键,地名将是值。
reducer类:当我们遍历键(player name)时,我们得到与它相关的所有值(地名)。我们只需构造一个包含键(玩家名)和逗号分隔值(地名)的字符串,然后从reducer输出。

vsdwdz23

vsdwdz232#

如果需要将Map器输出保存为文件,只需单独运行Map器作业即可。这可以通过删除reducer类或设置propery job.setnumreducetasks(0)来完成。如果您的需求是打印Map器输出,那么只需执行system.out.println(key,value)。
如果您的要求是打印减速机输入,我指的是键,列出[值]。您可以在reduce方法中执行system.out.println。
为了打印所有中间值,可以在mapper类、partitioner类和reducer类中执行print语句。

相关问题