假设我有一个制表符分隔文件,其中包含如下格式化的用户活动数据:
timestamp user_id page_id action_id
Run Code Online (Sandbox Code Playgroud)
我想编写一个hadoop作业来计算每个页面上的用户操作,因此输出文件应如下所示:
user_id page_id number_of_actions
Run Code Online (Sandbox Code Playgroud)
我需要像复合键这样的东西 - 它将包含user_id和page_id.使用hadoop有没有通用的方法呢?我找不到任何有用的东西.到目前为止,我在mapper中发出这样的键:
context.write(new Text(user_id + "\t" + page_id), one);
Run Code Online (Sandbox Code Playgroud)
它有效,但我觉得这不是最好的解决方案.