所以,我试图在MapReduce Paradigm中编写FP-Tree算法, 为了创建频繁的项目集列表,我有以下问题:
输入:
File1.txt(包含所有交易)
123 452 221 12
45 76 987
77 76 123 354
[Each Line contains items Bought in one Transaction]
File2.txt(包含按降序购买的商品)
12 123
6 221
5 77
4 354
[Count] [Item Id]
输出:
output.txt
123 221
123 77 354
[2nd transaction is eliminated]
根据其计数的项目(降序),其他项目被删除
是否可以将File1.txt和File2.txt同时放入一个映射器类?因为这会解决我的问题
或者有没有办法以另一种方式执行此操作?
感谢任何帮助。
答案 0 :(得分:0)
查看mapreduce分布式缓存示例。可以帮助完整
http://myhadoopexamples.com/2014/04/16/hadoop-map-side-join-with-distributed-cache-example/
在设置方法中读取文件。上面的链接将给出很好的指导。
答案 1 :(得分:0)
您可以在一个MR程序中读取多个文件。但是每个文件应该分别有一个mapper类。由于两个输入文件都不同,因此读取逻辑会因两者而异。你可以有两个映射器,每个映射器的输出应该具有相同的KEY并传递给reducer。