2009-04-27 24 views
4

任何人都可以點我參考或提供有關Facebook,雅虎,Google等公司如何執行大規模(如多TB範圍)日誌分析的高層次概述運營和特別是網絡分析?實施大規模的日誌文件分析

特別關注網絡分析,我對兩個密切相關的方面感興趣:查詢性能和數據存儲。

我知道一般的方法是使用map reduce來將每個查詢分佈在集羣上(例如使用Hadoop)。但是,什麼是最有效的存儲格式?這是日誌數據,所以我們可以假設每個事件都有一個時間戳,而且通常數據是結構化的而不是稀疏的。大多數Web分析查詢涉及分析兩個任意時間戳之間的數據片,並檢索該數據中的聚合統計信息或異常情況。

像大表(或HBase)這樣的面向列的數據庫是否是一種有效的存儲方式,更重要的是查詢這些數據?您是否選擇行的子集(基於時間戳)是否違背了此類存儲的基本前提?將它作爲非結構化數據存儲會更好嗎,例如。反向指數?

回答

5

不幸的是,沒有一個尺寸適合所有的答案。

我目前使用級聯,Hadoop,S3和Aster數據來處理每天通過AWS內的分級管道傳輸100個Gig。

Aster Data用於查詢和報告,因爲它提供了一個SQL接口來處理由Hadoop上的級聯進程清理和解析的海量數據集。使用Cascading JDBC接口,加載Aster Data是一個相當簡單的過程。

請記住像HBase和Hypertable這樣的工具是Key/Value商店,所以不要在沒有MapReduce/Cascading應用程序的幫助下執行特別查詢和連接來執行帶外連接,這是一個非常有用的模式。

完全披露,我是Cascading項目的開發人員。

http://www.asterdata.com/

http://www.cascading.org/

+0

對於指向Aster Data的指針+1。從來沒有聽說過他們,他們看起來很有趣。 – Elad 2011-04-14 07:16:56