我是 hadoop mapreduce 框架领域的新手。我自己阅读了很多教程并理解了框架。我已经成功地在伪分布式模式下配置了一个 hadoop 设置。我有两个需要在 Hadoop MapReduce 中完成的特定任务。
我有许多具有以下格式的数据文件。
交换消息的数量;用户1;用户2;时间戳;
一个例子是:5;约翰·多伊;约翰·史密斯; 1900 年 1 月 1 日;
我想要完成的是
对用户名进行数据屏蔽(例如在用户名之上构建 SHA256,以便它们是匿名的。)
汇总给定期间(例如 1 周)内交换的消息数量
现在让我们来回答我的问题:根据我目前的知识,hadoop mapreduce 框架旨在完成第二个任务。我可以映射键值(交换消息的两个用户名,消息数量)并减少它以获得给定时间段(例如 1 周)内的消息总数。但是第一个任务呢?当我进行数据屏蔽时,没有reduce操作,这个任务不是hadoop mapreduce的任务吗?我想并行执行,但真的想不到应用 hadoop mapreduce 来完成第一个任务。我需要处理的数据文件数量非常大,这使得无论如何都要使用hadoop mapreduce。
感谢您的意见!
PS:问题可以概括为“hadoop MapReduce最适合哪种类型的任务?”