对于只涉及map任务而不涉及reducer的作业,是否有任何真实的好用例/示例。只需要设置Map器而不需要设置还原器的作业。
s5a0g9ez1#
当然!想象一下,与著名的字数计算问题不同,您只需将每个单词替换为其长度。这样做,你Map每个单词的长度,你永远不会减少任何东西! Hello map reduce 会变成 5 3 6
Hello map reduce
5 3 6
hi3rlvi22#
我做过很多只做Map的工作。。。。这里有几个例子。你每天都要建立一个分类模型,你需要用这个分类器对所有数据进行分类。不需要reduce,只需从分布式缓存(或从数据库等远程资源)加载分类器,然后在Map器的map()函数中进行分类并将结果写入某处。在hbase表之类的对象上执行数据清理。读入Map器中的每一行,如果它匹配某个条件语句,则将其删除。这里不需要减少。基本上,如果不需要组合或聚合数据,只需要对每一段数据执行重复的串行处理,通常不需要缩减器。我还想说,如果您不需要reducer,那么您可能会问自己,使用apachestorm或其他开销较小的处理模型是否会更好。
2条答案
按热度按时间s5a0g9ez1#
当然!
想象一下,与著名的字数计算问题不同,您只需将每个单词替换为其长度。
这样做,你Map每个单词的长度,你永远不会减少任何东西!
Hello map reduce
会变成5 3 6
hi3rlvi22#
我做过很多只做Map的工作。。。。这里有几个例子。
你每天都要建立一个分类模型,你需要用这个分类器对所有数据进行分类。不需要reduce,只需从分布式缓存(或从数据库等远程资源)加载分类器,然后在Map器的map()函数中进行分类并将结果写入某处。
在hbase表之类的对象上执行数据清理。读入Map器中的每一行,如果它匹配某个条件语句,则将其删除。这里不需要减少。
基本上,如果不需要组合或聚合数据,只需要对每一段数据执行重复的串行处理,通常不需要缩减器。我还想说,如果您不需要reducer,那么您可能会问自己,使用apachestorm或其他开销较小的处理模型是否会更好。