如何在 hadoop map reduce 编程框架中打印中间数据
How do I print intermediate data in hadoop map reduce programming framework
假设我们有一个文件包含测试::
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]
每个不同的字符串都是这样....
如果您需要将映射器输出保存为文件,您可以简单地 运行 一个单独的映射器作业。这可以通过删除减速器 class 或设置 属性 job.setNumReduceTasks(0) 来完成。
如果您的要求是打印映射器输出,您只需执行 System.out.println(key,value)。
如果您的要求是打印 reducer 输入,我指的是键,list[values]。你可以在reduce方法中做一个System.out.println。
为了打印所有的中间值,可以在Mapper class, Partitioner [=25=中做打印语句] 和 Reducer class.
输入文件::
德拉维班格洛尔
萨钦孟买
多尼兰契
斋浦尔
金奈多尼船
新德里
甘比尔德里
甘比尔加尔各答
减速器输出:: Dravid Banglore,Jaipur Dhoni Ranchi,Chennai Gambhir Delhi,Calcutta Sachin Mumbai Sehwag Delhi
这可以使用 Map Reduce 程序来实现。
Mapper Class : 玩家名称将是键,地名将是值。
Reducer Class:当我们遍历键(玩家名)时,我们得到所有与之关联的值(地名)。我们可以构造具有键(玩家姓名)和逗号分隔值(地名)的字符串,并从 reducer 中输出。
假设我们有一个文件包含测试::
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]
每个不同的字符串都是这样....
如果您需要将映射器输出保存为文件,您可以简单地 运行 一个单独的映射器作业。这可以通过删除减速器 class 或设置 属性 job.setNumReduceTasks(0) 来完成。 如果您的要求是打印映射器输出,您只需执行 System.out.println(key,value)。
如果您的要求是打印 reducer 输入,我指的是键,list[values]。你可以在reduce方法中做一个System.out.println。
为了打印所有的中间值,可以在Mapper class, Partitioner [=25=中做打印语句] 和 Reducer class.
输入文件:: 德拉维班格洛尔 萨钦孟买 多尼兰契 斋浦尔 金奈多尼船 新德里 甘比尔德里 甘比尔加尔各答 减速器输出:: Dravid Banglore,Jaipur Dhoni Ranchi,Chennai Gambhir Delhi,Calcutta Sachin Mumbai Sehwag Delhi
这可以使用 Map Reduce 程序来实现。
Mapper Class : 玩家名称将是键,地名将是值。
Reducer Class:当我们遍历键(玩家名)时,我们得到所有与之关联的值(地名)。我们可以构造具有键(玩家姓名)和逗号分隔值(地名)的字符串,并从 reducer 中输出。