【发布时间】:2024-01-19 19:01:01
【问题描述】:
您好,我有一些如下形式的查询日志文件:
q_string q_visits q_date
0 red ballons 1790 2012-10-02 00:00:00
1 blue socks 364 2012-10-02 00:00:00
2 current 280 2012-10-02 00:00:00
3 molecular 259 2012-10-02 00:00:00
4 red table 201 2012-10-02 00:00:00
我每天都有一个文件,一年中的每个月都有一个文件。我想做的是:
(1) 按月对文件进行分组(或者更具体地说,对属于每个月的所有 q_strings 进行分组)
(2) 由于相同的 q_string 可能会出现在多天,我想在一个月内对相同的 q_strings 进行分组,对 q_string 的所有实例的 q_visits 求和
(3) 根据分组的 q_string 标准化 q_visits(通过将分组的 q_string 的 q_visits 总和除以该月内所有 q_string 的 q_visits 总和)
我希望输出与输入具有相似的架构,除了有一个额外的列,其中包含标准化的每月 q_visit 卷。
我一直在 Python/Pandas 中执行此操作,但现在有更多数据,并且觉得问题更容易使用 MapReduce。
以上内容在 EMR/AWS 中是否易于实施?从概念上讲,执行上述操作的 MR 工作流程是什么?我想继续用 Python 编码,所以可能会使用流式传输。
提前感谢您的帮助。
【问题讨论】:
标签: hadoop mapreduce hadoop-streaming elastic-map-reduce