Hadoop 生態(tài)系統(tǒng) - 哥不是小蘿莉 - 博客園
http://www.cnblogs.com/smartloli/p/5640587.html
1.概述
最近收到一些同學(xué)和朋友的郵件秧倾,說能不能整理一下 Hadoop 生態(tài)圈的相關(guān)內(nèi)容线椰,然后分享一些轿秧,我覺得這是一個不錯的提議谓娃,于是,花了一些業(yè)余時間整理了 Hadoop 的生態(tài)系統(tǒng),并將其進(jìn)行了歸納總結(jié),進(jìn)而將其以表格的形式進(jìn)行了羅列。涉及的內(nèi)容有以下幾點(diǎn):
分布式文件系統(tǒng)
分布式編程模型
NoSQL 數(shù)據(jù)庫
SQL-On-Hadoop
數(shù)據(jù)采集
編程服務(wù)中間件
調(diào)度系統(tǒng)
系統(tǒng)部署
數(shù)據(jù)可視化
2.內(nèi)容
2.1 分布式文件系統(tǒng)
2.1.1 Apache HDFS
在分布式文件系統(tǒng)當(dāng)中茅信,首先為大家所熟悉的是 Apache 的 HDFS。全稱為 Hadoop Distributed File System墓臭,由多臺機(jī)器組建的集群蘸鲸,存儲大數(shù)據(jù)文件。HDFS 的靈感來自于 Google File System(GFS)窿锉。Hadoop 2.x 版本之前酌摇,NameNode 是存在單點(diǎn)故障的。在 ZooKeeper 的高可用性功能解決了 HDFS 的這個問題嗡载,通過提供運(yùn)行兩個冗余的節(jié)點(diǎn)在同一個集群中進(jìn)行主備切換窑多,即:Active & Standby
相關(guān)鏈接地址如下所示:
Apache Hadoop
Google File System
Cloudera
Hortonworks
2.1.2 Red Hat GlusterFS
GlusterFS 是一個擴(kuò)展的網(wǎng)絡(luò)附加存儲文件系統(tǒng)。GlusterFS 最初是由 Gluster 公司開發(fā)的洼滚,然后埂息,由 Red Hat 公司在2011年進(jìn)行了購買。2012年六月遥巴,Red Hat 存儲服務(wù)器被宣布為商業(yè)支持的整合與 Red Hat 企業(yè) Linux GlusterFS千康。Gluster 文件系統(tǒng),現(xiàn)在稱為 Red Hat 存儲服務(wù)器铲掐。
相關(guān)鏈接地址如下所示:
Gluster 官網(wǎng)
Red Hat Hadoop 插件
2.1.3 QFS
QFS 是一個開源的分布式文件系統(tǒng)軟件包拾弃,用于對 MapReduce 批處理工作負(fù)載。她被設(shè)計為一種 Apache Hadoop 的 HDFS 另一種選擇方案摆霉,用于大型加工集群提供更好的性能和成本效率豪椿。它用 C++ 和固定占用內(nèi)存管理。QFS 使用 Reed-Solomon 糾錯保證可靠的數(shù)據(jù)訪問方法携栋。Reed-Solomon 編碼在海量存儲系統(tǒng)中被廣泛應(yīng)用搭盾,以糾正與媒體缺陷相關(guān)的突發(fā)錯誤。而不是存儲每個文件或是像 HDFS 一樣刻两,存儲 3+ 次以上增蹭,QFS 僅僅需要 1.5 倍的原始容量滴某,因?yàn)樗鎯υ诎ゾ艂€不同的磁盤驅(qū)動上磅摹。
相關(guān)鏈接地址如下所示:
QFS 官網(wǎng)
Github QFS
Hadoop-8885
2.1.4 Ceph Filesystem
Ceph 是一個免費(fèi)的軟件存儲平臺滋迈,被設(shè)計為對象,塊和從單一節(jié)點(diǎn)到集群的文件存儲户誓。它的主要目標(biāo)是完全分布式無單點(diǎn)鼓掌饼灿,可水平擴(kuò)展到 PB 容量,對多種工作負(fù)載的高性能帝美,以及高可用性碍彭。
相關(guān)鏈接地址如下所示:
Ceph Filesystem 官網(wǎng)
Ceph and Hadoop
HADOOP-6253
2.1.5 Lustre file system
Lustre 是由 Linux 和 Cluster 演變而來呜舒,是為了解決海量存儲問題而設(shè)計的全新的文件系統(tǒng)俗扇”脑可支持達(dá) 1w 節(jié)點(diǎn)雇毫,PB 的存儲容量配名,100GB/S 的傳輸速度则酝。Lustre 是基于對象的存儲系統(tǒng)扎狱,減少元數(shù)據(jù)服務(wù)器的 iNode蝶怔。它實(shí)際上還是將數(shù)據(jù)條帶化到各個存儲目標(biāo)上占拍,所以可以實(shí)現(xiàn)高度聚合 IO 能力略就。Lustre 原生態(tài)支持海量小文件讀寫;且對大文件讀寫在 Linux 內(nèi)核做了特殊優(yōu)化晃酒。另外表牢,Lustre 是個對用戶透明的 Share 文件系統(tǒng),條帶化數(shù)據(jù)的位置信息不能完美的暴露出來贝次,所以要用上 Hadoop 的 MapReduce 優(yōu)勢還需要做很多工作崔兴。
相關(guān)鏈接地址如下所示:
Lustre WiKi
Hadoop with Lustre
Inter HPC Hadoop
關(guān)于分布式文件系統(tǒng)的內(nèi)容就贅述到這里;其它分布式文件系統(tǒng)浊闪,如:Alluxio恼布,GridGain 以及 XtreemFS[1.官網(wǎng),2.Flink on XtreemFS搁宾,3.Spark XtreemFS] 等這里就不多贅述了折汞,大家可以下去自己普及一下。
2.2 分布式編程模型
2.2.1 Apache Ignite
Apache Ignite 內(nèi)存數(shù)組組織框架是一個高性能盖腿、集成和分布式的內(nèi)存計算和事務(wù)平臺爽待,用于大規(guī)模的數(shù)據(jù)集處理,比傳統(tǒng)的基于磁盤或閃存的技術(shù)具有更高的性能翩腐,同時他還為應(yīng)用和不同的數(shù)據(jù)源之間提供高性能鸟款、分布式內(nèi)存中數(shù)據(jù)組織管理的功能。
它包含一個分布式的 Key/Value 存儲在內(nèi)存中茂卦,SQL 執(zhí)行能力何什,MapReduce 和其它計算,分布式數(shù)據(jù)結(jié)構(gòu)等龙,連續(xù)查詢处渣,消息和事件子系統(tǒng)伶贰。Hadoop 和 Spark 均有集成。Ignite 編譯于 Java罐栈,提供 .NET 和 C++ 的 API 接口黍衙。
相關(guān)鏈接地址如下所示:
Apache Ignite
Apache Ignite Documentation
2.2.2 Apache MapReduce
這個大家應(yīng)該不陌生,這是一個經(jīng)典的編程模型荠诬,用于在集群上處理并發(fā)琅翻,分布式大數(shù)據(jù)集。當(dāng)前版本編譯于 YARN 框架柑贞。這里就不多贅述了方椎。
相關(guān)鏈接地址,如下所示:
Apache MapReduce
Google MapReduce Paper
Writing YARN Applications
2.2.3 Apache Spark
這個編程模型钧嘶,大家也不會陌生辩尊,現(xiàn)在 Spark 的應(yīng)用場景和社區(qū)活躍度較高】导快速的執(zhí)行能力摄欲,豐富的編程 API 接口,使其備受恩寵疮薇。
相關(guān)鏈接地址胸墙,如下所示:
Apache Spark
Mirror of Spark on Github
RDDs-Paper
Spark Cluster Computing
Spark Research
2.2.4 Apache Storm
做實(shí)時流水?dāng)?shù)據(jù)處理的同學(xué),應(yīng)該也不陌生按咒,可以嫁接多種消息中間件(如Kafka迟隅,MQ等)。
相關(guān)鏈接地址励七,如下所示:
Storm Project
[Storm-on-YARN](file:///Users/dengjie/Downloads/hadoopecosystemtable.github.io-master/github.com/yahoo/storm-yarn)
2.2.5 Apache Flink
Apache Flink 是一個面向分布式數(shù)據(jù)流處理和批量數(shù)據(jù)處理的開源計算平臺智袭,它能夠基于同一個Flink運(yùn)行時(Flink Runtime),提供支持流處理和批處理兩種類型應(yīng)用的功能÷犹В現(xiàn)有的開源計算方案吼野,會把流處理和批處理作為兩種不同的應(yīng)用類型,因?yàn)樗麄兯鼈兯峁┑腟LA是完全不相同的:流處理一般需要支持低延遲两波、Exactly-once保證瞳步,而批處理需要支持高吞吐、高效處理腰奋,所以在實(shí)現(xiàn)的時候通常是分別給出兩套實(shí)現(xiàn)方法单起,或者通過一個獨(dú)立的開源框架來實(shí)現(xiàn)其中每一種處理方案。例如劣坊,實(shí)現(xiàn)批處理的開源方案有MapReduce嘀倒、Tez、Crunch、Spark测蘑,實(shí)現(xiàn)流處理的開源方案有Samza绕沈、Storm。 Flink在實(shí)現(xiàn)流處理和批處理時帮寻,與傳統(tǒng)的一些方案完全不同,它從另一個視角看待流處理和批處理赠摇,將二者統(tǒng)一起來:Flink是完全支持流處理固逗,也就是說作為流處理看待時輸入數(shù)據(jù)流是無界的;批處理被作為一種特殊的流處理藕帜,只是它的輸入數(shù)據(jù)流被定義為有界的烫罩。基于同一個Flink運(yùn)行時(Flink Runtime)洽故,分別提供了流處理和批處理API贝攒,而這兩種API也是實(shí)現(xiàn)上層面向流處理、批處理類型應(yīng)用框架的基礎(chǔ)时甚。
相關(guān)鏈接地址隘弊,如下所示:
Apache Flink
Stratosphere site
這里列舉了熱度較高的分布式編程模型,其它的編程模型荒适,如下表所示:
分布式編程模型
相關(guān)鏈接地址
Apache Pig
1.官網(wǎng)
2.示例
JAQL
1.JAQLL in Google Code
2.What is JAQL?
Facebook Corona
1.Corona on Github
Apache Twill
1.Twill 官網(wǎng)
Apache Tez
1.Tez 官網(wǎng)
2.Hortonworks Apacha Tez Page
2.3 NoSQL 數(shù)據(jù)庫
2.3.1 列數(shù)據(jù)模型
2.3.1.1 Apache HBase
靈感來自于 Google 的 BigTable梨熙。非關(guān)系性分布式數(shù)據(jù)庫。隨機(jī)實(shí)時讀寫操作列擴(kuò)展的大表刀诬。
相關(guān)鏈接地址咽扇,如下所示:
Apache HBase Home
HBase on Github
2.3.1.2 Apache Cassandra
Apache Cassandra 是一套開源分布式 Key-Value 存儲系統(tǒng)。它最初由 Facebook 開發(fā)陕壹,用于儲存特別大的數(shù)據(jù)质欲。 Cassandra 不是一個數(shù)據(jù)庫,它是一個混合型的非關(guān)系的數(shù)據(jù)庫糠馆,類似于 Google 的 BigTable嘶伟。Cassandra 的數(shù)據(jù)模型是基于列族(Column Family)的四維或五維模型。它借鑒了 Amazon 的 Dynamo 和 Google's BigTable 的數(shù)據(jù)結(jié)構(gòu)和功能特點(diǎn)又碌,采用 Memtable 和 SSTable 的方式進(jìn)行存儲奋早。在 Cassandra 寫入數(shù)據(jù)之前,需要先記錄日志 ( CommitLog )赠橙,然后數(shù)據(jù)開始寫入到 Column Family 對應(yīng)的 Memtable 中耽装,Memtable 是一種按照 key 排序數(shù)據(jù)的內(nèi)存結(jié)構(gòu),在滿足一定條件時期揪,再把 Memtable 的數(shù)據(jù)批量的刷新到磁盤上掉奄,存儲為 SSTable 。
相關(guān)鏈接地址,如下所示:
Cassandra On Github
Training Resources
Cassandra-Paper</>
2.3.1.3 Apache Kudu
Kudu 是 Cloudera 開源的列式存儲引擎姓建,具有一下幾個特點(diǎn):
C++ 語言開發(fā)
高效處理類 OLAP 負(fù)載
與 MR诞仓,Spark 以及 Hadoop 生態(tài)系統(tǒng)中其它組件友好集成
可以與 Cloudera Impala 集成
靈活的一致性模型
順序和隨機(jī)寫并存的場景下,仍能達(dá)到良好的性能
高可用速兔,使用 Raft 協(xié)議保證數(shù)據(jù)高可靠存儲
結(jié)構(gòu)化數(shù)據(jù)模型
相關(guān)鏈接地址墅拭,如下所示:
Apache Kudu Home
Kudu on Github
Kudu Technical
2.3.2 文檔數(shù)據(jù)模型
2.3.2.1 MongoDB
面向文檔的數(shù)據(jù)庫系統(tǒng)。它是數(shù)據(jù)庫系統(tǒng)中 NoSQL 家族的一部分涣狗。MongoDB 存儲結(jié)構(gòu)化數(shù)據(jù)以 JSON 格式的文件形式進(jìn)行存儲谍婉。
相關(guān)鏈接地址,如下所示:
MongoDB 官網(wǎng)
2.3.3 Key-Value 數(shù)據(jù)模型
2.3.3.1 Redis 數(shù)據(jù)庫
Redis是一個開源的使用ANSI C語言編寫镀钓、支持網(wǎng)絡(luò)穗熬、可基于內(nèi)存亦可持久化的日志型、Key-Value數(shù)據(jù)庫丁溅,并提供多種語言的API唤蔗。
相關(guān)鏈接地址,如下所示:
Redis Home
Redis Labs
2.4 SQL-On-Hadoop
2.4.1 Apache Hive
一款由 Facebook 開發(fā)的數(shù)據(jù)倉庫窟赏。數(shù)據(jù)聚合妓柜,查詢和分析。提供類 SQL 語言:HiveQL
相關(guān)鏈接地址涯穷,如下所示:
Apache Hive Home
Hive on Github
2.4.2 Apache Trafodion
Trafodion是一個構(gòu)建在Hadoop/HBase基礎(chǔ)之上的關(guān)系型數(shù)據(jù)庫领虹,它完全開源免費(fèi)。Trafodion能夠完整地支持ANSI SQL求豫,并且提供ACID事務(wù)保證塌衰。和傳統(tǒng)關(guān)系數(shù)據(jù)庫不同的地方在于,Trafodion利用底層Hadoop的橫向擴(kuò)展能力蝠嘉,可以提供極高的擴(kuò)展性最疆。而傳統(tǒng)數(shù)據(jù)庫,比如MySQL蚤告,在數(shù)據(jù)量達(dá)到P級別的時候就很難處理努酸。而Trafodion卻可以借助HBase的擴(kuò)展性,僅通過增加普通Linux服務(wù)器就可以增加計算和存儲能力杜恰,進(jìn)而支持大數(shù)據(jù)應(yīng)用获诈。
相關(guān)鏈接地址,如下所示:
Apache Trafodion Home
Apache Trafodion WiKi
Apache Trafodion On Github
2.4.3 Apache Drill
Drill 是 Apache 開源的心褐,用于大數(shù)據(jù)探索的 SQL 查詢引擎舔涎。她在大數(shù)據(jù)應(yīng)用中,面對結(jié)構(gòu)化數(shù)據(jù)和變化迅速的數(shù)據(jù)逗爹,她能夠去兼容亡嫌,并且高性能的去分析,同時,還提供業(yè)界都熟悉的標(biāo)準(zhǔn)的查詢語言挟冠,即:ANSI SQL 生態(tài)系統(tǒng)于购。Drill 提供即插即用,在現(xiàn)有的 Hive知染,HBase肋僧,S3 等存儲介質(zhì)中可以隨時整合部署。
相關(guān)鏈接地址控淡,如下所示:
Apache Drill Home
2.4.4 Cloudera Impala
類似于 Drill 的一款大數(shù)據(jù)實(shí)時查詢引擎嫌吠,依賴 CDH 環(huán)境。
相關(guān)鏈接地址逸寓,如下所示:
Cloudera Impala Home
Impala On Github
2.4.5 Apache Kylin
Kylin 是一款開源的分布式數(shù)據(jù)分析引擎由 eBay 公司提供。支持 Hadoop 大數(shù)據(jù)集 OLAP 業(yè)務(wù)/
相關(guān)鏈接地址覆山,如下所示:
Apache Kylin Home
另外竹伸,還有[Apache Tajo],[Apache Phoenix] 等簇宽,這里就不一一列舉了勋篓。
2.5 數(shù)據(jù)采集
2.5.1 Apache Flume
Flume 是一個分布式,可靠的魏割,可用的服務(wù)譬嚣,有效的收集,聚合和移動海量的日志數(shù)據(jù)钞它。它有一個簡單而靈活的架構(gòu)拜银,基于流數(shù)據(jù)流。具有很好的冗余和容錯性遭垛,以及可靠性和多故障轉(zhuǎn)移和恢復(fù)機(jī)制尼桶。它使用一個簡單的可擴(kuò)展數(shù)據(jù)模型,并允許在線分析應(yīng)用锯仪。
相關(guān)鏈接地址泵督,如下所示:
Apache Flume Home
2.5.2 Apache Sqoop
一款從 HDFS 到 RDBMS 之間做數(shù)據(jù)交互的工具。類似于 Flume庶喜。
相關(guān)鏈接地址小腊,如下所示:
Apache Sqoop Project
2.5.3 Apache Kafka
分布式發(fā)布-訂閱消息系統(tǒng),用于處理流式海量數(shù)據(jù)久窟。Kafka 是一個由 LinkedIn 開發(fā)的消息隊(duì)列秩冈。能嫁接 HDFS 這樣的存儲介質(zhì),能被 Storm斥扛,Spark這類實(shí)時或類實(shí)時數(shù)據(jù)模型消費(fèi)漩仙。
相關(guān)鏈接地址,如下所示:
Apache Kafka
Kafka On Github
2.5.4 Apache NiFi
Apache NiFi 是由美國國家安全局(NSA)貢獻(xiàn)給 Apache 基金會的開源項(xiàng)目,目前已被順利孵化完成成為 Apache 的頂級項(xiàng)目之一队他。Apache NiFi 其設(shè)計目標(biāo)是自動化系統(tǒng)間的數(shù)據(jù)流卷仑。基于其工作流式的編程理念麸折,NiFi 擁有易使用锡凝,高可用以及高配置等特性。其尤為突出的兩大特性是:強(qiáng)大的用戶界面和良好的數(shù)據(jù)回溯工具垢啼。NiFi 的用戶界面允許用戶在瀏覽器中直觀的理解并與數(shù)據(jù)流進(jìn)行交互窜锯,快速和安全的進(jìn)迭代。其數(shù)據(jù)回溯特性允許用戶查看一個對象如何在系統(tǒng)間流轉(zhuǎn)芭析,回放以及可視化關(guān)鍵步驟之前以及之后發(fā)生的情況锚扎,包括大量復(fù)雜的圖式轉(zhuǎn)換,F(xiàn)ork馁启,Join 以及其它操作等驾孔。另外,NiFi 使用基于組件的擴(kuò)展模型用以為復(fù)雜的數(shù)據(jù)流快速增加功能惯疙,開箱即用的組件中翠勉,處理文件系統(tǒng)的包括 FTP,SFTP 以及 HTTP 等霉颠,同樣也支持 HDFS对碌。
相關(guān)鏈接地址,如下所示:
Apache NiFi
另外蒿偎,還有 Facebook Scribe朽们,Apache Chukwa,Netflix Suro诉位,Apache Samza华坦,Cloudera Morphline,HIHO 等套件就不一一介紹了不从,大家可以下去了解這些數(shù)據(jù)采集套件相關(guān)內(nèi)容惜姐。
2.6 編程服務(wù)中間件
2.6.1 Apache Thrift
Thrift 是一個軟件框架,用來進(jìn)行可擴(kuò)展且跨語言的服務(wù)開發(fā)椿息。它結(jié)合了功能強(qiáng)大的軟件堆棧和代碼生成引擎歹袁,用以構(gòu)建在 C++,Java寝优,Python条舔,Ruby 等編程語言上,進(jìn)行無縫乏矾,高效的銜接孟抗。其最初由 Facebook 開發(fā)用做系統(tǒng)內(nèi)各個語言之間的 RPC 通信迁杨,后 Facebook 貢獻(xiàn)給 Apache,目前成為 Apache 的頂級項(xiàng)目之一凄硼。
相關(guān)鏈接地址铅协,如下所示:
Apache Thrift
2.6.2 Apache Zookeeper
Zookeeper 分布式服務(wù)框架是 Apache Hadoop 的一個子項(xiàng)目,它主要是用來解決分布式應(yīng)用中經(jīng)常遇到的一些數(shù)據(jù)管理問題摊沉,如:統(tǒng)一命名服務(wù)狐史,狀態(tài)同步服務(wù),集群管理说墨,分布式應(yīng)用配置項(xiàng)的管理等骏全。
相關(guān)鏈接地址,如下所示:
Apache Zookeeper
Google Chubby
2.6.3 Apache Avro
Apache Avro 是 Hadoop 中的一個子項(xiàng)目尼斧,也是 Apache 中的一個獨(dú)立的項(xiàng)目姜贡,Avro 是一個基于二進(jìn)制數(shù)據(jù)傳輸高性能的中間件。在 Hadoop 的其它項(xiàng)目中棺棵,例如 HBase楼咳,Hive 的 Client 端與服務(wù)端的數(shù)據(jù)傳輸也采用了這個工具。Avro 是一個數(shù)據(jù)序列化的系統(tǒng)律秃,它可以將數(shù)據(jù)結(jié)構(gòu)或?qū)ο筠D(zhuǎn)化成便于存儲或傳輸?shù)母袷脚老稹vro 設(shè)計之初就用來支持?jǐn)?shù)據(jù)密集型應(yīng)用治唤,適合于遠(yuǎn)程或本地大規(guī)模數(shù)據(jù)的存儲和交換棒动。擁有一下特點(diǎn):
豐富的數(shù)據(jù)結(jié)構(gòu)類型
快速可壓縮的二進(jìn)制數(shù)據(jù)形式,對數(shù)據(jù)二進(jìn)制序列化后可以節(jié)約數(shù)據(jù)存儲空間和網(wǎng)絡(luò)傳輸帶寬
存儲持久數(shù)據(jù)的文件容器
可以實(shí)現(xiàn)遠(yuǎn)程過程調(diào)用 RPC
簡單的動態(tài)語言結(jié)合功能
相關(guān)鏈接地址宾添,如下所示:
Apache Avro
另外船惨,還有 Apache Curator,Twitter Elephant Bird缕陕,Linkedin Norbert 等工具粱锐,這里就不一一介紹了。
2.7 調(diào)度系統(tǒng)
2.7.1 Apache Oozie
在 Hadoop 中執(zhí)行的任務(wù)有時候需要把多個 MR 作業(yè)連接到一起扛邑,這樣才能達(dá)到目的怜浅。在 Hadoop 生態(tài)圈中,Oozie 可以把多個 MR 作業(yè)組合到一個邏輯工作單元中蔬崩,從而完成更大型的任務(wù)恶座。Oozie 是一種 Java Web 應(yīng)用程序,它運(yùn)行在 Java Servlet 容器中(即:Tomcat)中沥阳,并使用數(shù)據(jù)庫來存儲一下內(nèi)容:
工作流定義
當(dāng)前運(yùn)行的工作流實(shí)例跨琳,包括實(shí)例的狀態(tài)和變量
Oozie 工作流是放置在控制依賴 DAG 中的一組動作(如 Hadoop 的 MR 作業(yè),Pig 作業(yè)等)桐罕,其中指定了動作執(zhí)行的順序脉让。
相關(guān)鏈接地址桂敛,如下所示:
Apache Oozie
Oozie On Github
2.7.2 Linkedin Azkaban
Hadoop 工作流管理。提供友好的 Web UI 界面進(jìn)行批處理作業(yè)調(diào)度(定時或及時)溅潜。
相關(guān)鏈接地址术唬,如下所示:
Azkaban Home
Azkaban On Github
2.7.3 Apache Falcon
Apache Falcon 是一個面向 Hadoop 的,新的數(shù)據(jù)處理和管理平臺伟恶,設(shè)計用于數(shù)據(jù)移動碴开,數(shù)據(jù)管道協(xié)調(diào),生命周期管理和數(shù)據(jù)發(fā)現(xiàn)博秫。它使用終端用戶可以快速的將他們的數(shù)據(jù)以及相關(guān)的處理和管理任務(wù)上載到 Hadoop 集群潦牛。在 Apache Falcon 中,基礎(chǔ)設(shè)施端點(diǎn)挡育,數(shù)據(jù)集巴碗,處理規(guī)則均是聲明式的。這種聲明式配置顯式定義了實(shí)體之間的依賴關(guān)系即寒。這也是該平臺的一個特點(diǎn)橡淆,它本身只維護(hù)依賴關(guān)系,而并不做任何繁重的工作母赵,所有的功能和工作流狀態(tài)管理需求都委托給工作流調(diào)度程序來完成逸爵。
相關(guān)鏈接地址,如下所示:
Apache Falcon
2.8 系統(tǒng)部署
2.8.1 Apache Ambari
用于創(chuàng)建凹嘲,管理师倔,監(jiān)控 Hadoop 集群的工具,可以很方便的安裝周蹭,調(diào)試 Hadoop 集群趋艘,支持的平臺組件也是越來越多,如 Spark凶朗,Storm 等計算模型瓷胧,以及資源調(diào)度平臺 YARN 等,都能通過 Ambari 輕松部署管理棚愤。
相關(guān)鏈接地址搓萧,如下所示:
Apache Ambari
2.8.2 CDH
Cloudera 公司的產(chǎn)品,類似于 Ambari 產(chǎn)品宛畦,用于創(chuàng)建瘸洛,管理,監(jiān)控 Hadoop 集群刃永。
相關(guān)鏈接地址货矮,如下所示:
CDH
2.9 可視化
2.9.1 Apache Zeppelin
你可以制作出漂亮的數(shù)據(jù),使用 SQL斯够,Scala 或者其它囚玫。它擁有以下特性:
數(shù)據(jù)收集
數(shù)據(jù)發(fā)掘
數(shù)據(jù)分析
數(shù)據(jù)可視化和集成
目前支持的中間件有:Spark喧锦,md,sh抓督,Hive燃少,Tajo,F(xiàn)link铃在,Cassandra阵具,Phoenix,Kylin 等
相關(guān)鏈接地址定铜,如下所示:
Apache Zeppelin
3.總結(jié)
Hadoop 生態(tài)圈是非常龐大的阳液,上述列舉的只是其生態(tài)圈中常用的一部分,下圖給大家展示了本篇博客相關(guān)內(nèi)容的關(guān)聯(lián)圖揣炕,如下圖所示:
4.結(jié)束語
這篇博客就和大家分享到這里帘皿,如果大家在研究學(xué)習(xí)的過程當(dāng)中有什么問題,可以加群進(jìn)行討論或發(fā)送郵件給我畸陡,我會盡我所能為您解答鹰溜,與君共勉!