日志文件看起来是这样的:Hadoop的 - 分析日志文件(Java)的
Time stamp,activity,-,User,-,id,-,data
-
2013-01-08T16:21:35.561+0100,reminder,-,User1234,-,131235467,-,-
2013-01-02T15:57:24.024+0100,order,-,User1234,-,-,-,{items:[{"prd":"131235467","count": 5, "amount": 11.6},{"prd": "13123545", "count": 1, "amount": 55.99}], oid: 5556}
2013-01-08T16:21:35.561+0100,login,-,User45687,-,143435467,-,-
2013-01-08T16:21:35.561+0100,reminder,-,User45687,-,143435467,-,-
2013-01-08T16:21:35.561+0100,order,-,User45687,-,-,-,{items:[{"prd":"1315467","count": 5, "amount": 11.6},{"prd": "133545", "count": 1, "amount": 55.99}], oid: 5556}
...
...
编辑
从该日志具体的例子:
User1234
得到了reminder
- th是reminder
具有id
= 131235467
,在此之后,他与以下data
由order
:{items:[{"prd":"131235467","count": 5, "amount": 11.6},{"prd": "13123545", "count": 1, "amount": 55.99}], oid: 5556}
在这种情况下id
和data
prd
是相同的,所以我想综上所述count
* amount
- >在这种情况下5 * 11.6 = 58和输出像
User 1234 Prdsum: 58
User45687
也作出了order
但他没有收到reminder
所以没有总结他data
输出:
User45687 Prdsum: 0
这篇日志的最终输出:
User 1234 Prdsum: 58
User45687 Prdsum: 0
我的问题是:我该如何比较这价值观 - >id
和data
prd
(?)? 关键是用户。自定义的Writable会有用 - > value =(id,data)。我需要一些想法。
有什么问题可以找到? – 2013-03-11 15:36:59