日誌文件看起來是這樣的: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