一圖簡述大數(shù)據(jù)技術生態(tài)圈
下面是一張生態(tài)圖,主要的組件都是為了方便大家從底層的MapReduce模型中脫離出來,用高層語言來做分布式計算,下文將分別為你作簡述。
1、HBase
是一個高可靠性、高性能、面向列、可伸縮的分布式存儲系統(tǒng),利用HBase技術可在廉價PC Server上搭建起大規(guī)模結構化數(shù)據(jù)集群。像Facebook,都拿它做大型實時應用。
2、Hive
Facebook領導的一個數(shù)據(jù)倉庫工具,可以將結構化的數(shù)據(jù)文件映射為一張數(shù)據(jù)庫表,并提供完整的sql查詢功能,可以將sql語句轉換為MapReduce任務進行運行。其優(yōu)點是學習成本低,可以通過類SQL語句快速實現(xiàn)簡單的MapReduce統(tǒng)計。像一些data scientist 就可以直接查詢,不需要學習其他編程接口。
3、Pig
Yahoo開發(fā)的,并行地執(zhí)行數(shù)據(jù)流處理的引擎,它包含了一種腳本語言,稱為Pig Latin,用來描述這些數(shù)據(jù)流。Pig Latin本身提供了許多傳統(tǒng)的數(shù)據(jù)操作,同時允許用戶自己開發(fā)一些自定義函數(shù)用來讀取、處理和寫數(shù)據(jù)。在LinkedIn也是大量使用。
4、Cascading/Scalding
Cascading是Twitter收購的一個公司技術,主要是提供數(shù)據(jù)管道的一些抽象接口,然后又推出了基于Cascading的Scala版本就叫Scalding。Coursera是用Scalding作為MapReduce的編程接口放在Amazon的EMR運行。
5、Zookeeper
一個分布式的,開放源碼的分布式應用程序協(xié)調服務,是Google的Chubby一個開源的實現(xiàn)。
6、Oozie
一個基于工作流引擎的開源框架。由Cloudera公司貢獻給Apache的,它能夠提供對Hadoop MapReduce和Pig Jobs的任務調度與協(xié)調。
7、Azkaban
跟上面很像,Linkedin開源的面向Hadoop的開源工作流系統(tǒng),提供了類似于cron 的管理任務。
8、Tez
Hortonworks主推的優(yōu)化MapReduce執(zhí)行引擎,與MapReduce相比較,Tez在性能方面更加出色。