1. 批處理計算
批量處理無法實現實時計算,可以用Mapreduce和spark。
由於spark是將數據放在內存中計算的,而mapreduce數據在磁盤中,需要將數據從磁盤中讀取到內存,算完后再釋放回磁盤
因此spark可以實現接近准實時性和秒級的響應
2. 流計算
數據源源不斷的放入系統中計算(時間序列的數據),數據特點:少,但是要求響應極快(ms級別)
例如:大型應用系統的故障分析障礙
需要源源不斷的從日志中讀取,並對日志分析,再做出判斷
用啥解決:
storm可以實現
S4,Flume,DStream都可以進行流計算
spark可以
mapreduce是不可以的,他的響應一般是分鍾級別的
3. 圖計算(有邊和結點)
社交網絡的數據,誰和誰關系較好等
地理信息的數據,各個城市間的高鐵分布等
可以用MApreduce計算,但是效率特別低
google公司開發了專門針對圖計算的框架---pregel
Hama、power Graph等也可以進行圖計算
4. 查詢分析計算
企業中應用最多。對數據倉庫中的數據,用sql語句進行查詢分析
專門的計算實現:google公司的Dremel
hadoop生態圈的hive