storm與hadoop的對照
阿新 • • 發佈:2017-05-19
family span 切片 nod 一個 hba data 獲得 結構
hadoop 是實現了 mapreduce 的思想,將數據切片計算來處理大量的離線數據。
hadoop處理的數據必須是已經存放在 hdfs 上或者類似 hbase 的數據庫中。所以
hadoop 實現的時候是通過移動計算到這些存放數據的機器上來提高效率而 storm
不同,storm 是一個流計算框架。處理的數據是實時消息隊列中的,所以須要我們
寫好一個 topology 邏輯放在那,接收進來的數據來處理,所以是通過移動數據平均
分配到機器資源來獲得高效率。
hadoop 的長處是處理數據量大(瓶頸是硬盤和 namenode,網絡等),分析
靈活,可以通過實現 dsl,mdx 等拼接 hadoop 命令或者直接使用 hive。pig 等來
靈活分析數據。適應對大量維度進行組合分析缺點就是慢:每次運行前要分發 jar
包,hadoop 每次 map 數據超出闕值後會將數據寫入本地文件系統,然後在 reduce
的時候再讀進來。
storm 的長處是全內存計算,由於內存尋址速度是硬盤的百萬倍以上,所以 storm
的速度相比較 hadoop 很快(瓶頸是內存。cpu)缺點就是不夠靈活:必需要先寫
好 topology結構來等數據進來分析。
storm與hadoop的對照