如何在hadoop中维护变量?

g6ll5ycj  于 2021-06-03  发布在  Hadoop
关注(0)|答案(1)|浏览(279)

我几乎没有记录说

session1    click1    time1 

session1    click2    time2

session1    click3    time3

session2    click1    time1

session2    click2    time2

session2    click3    time3

现在我需要计算会话中每次单击的访问时间

session1    click1    time1    (time2-time1)

session1    click2    time2    (time3-time2)

session1    click3    time3     0

session2    click1    time1    (time2-time1)

session2    click2    time2    (time3-time2)

session2    click3    time3    0

我可以使用hadoop的哪个组件来获得上述功能?

xt0899hw

xt0899hw1#

一种可能的解决方案是使用map reduce。
Map可以发出键,值为 SessionID, Click-Time 一对。在减速机端,排序 Click-Time 按时间顺序配对。所以你可以很容易地得到第一次,第二次和第三次的点击。休息很简单,只是释放 Key, Click, Time, Time Difference (每个由分隔符选项卡分隔)对于异径管的每对。减速机的价值可以是 NullWritable .

相关问题