aws hadoop mapreduce-平均字数

2guxujil  于 2021-05-27  发布在  Hadoop
关注(0)|答案(1)|浏览(358)

嗨,我有一个csv数据文件如下。
公共汽车,火车,公共汽车,火车,小汽车,公共汽车,火车,小汽车,小汽车,火车,手推车,公共汽车,自行车,自行车,小汽车,公共汽车,手推车,手推车,自行车,三轮车
我需要使用mapreduce计算上述csv中的平均字数。
例如:总线=5/20=0.25
我可以很容易地得到字数,但我需要的记录总数(20在这种情况下)采取平均字数。但是用全局变量传递它来减少函数并没有成功。我试着把它作为一个键值对在Map中传递。key=“total”value=减速机输入的总计数。它也没有成功。
有没有建议把这个总数从map函数传递到reducer函数?
我在emr集群中使用了一个主节点和3个从节点,如果这是一条需要的信息的话。
提前谢谢!!!

c7rzv4ha

c7rzv4ha1#

一旦你有了一对(k,v),其中k是单词,v是它出现的时间,你就可以把所有的都Map到一个键,比如说(w,(k,v))。现在您可以减少以获得总字数。然后可以执行另一个map/reduce步骤,将旧的键与新的计数连接起来。希望有帮助。

相关问题