思考問題
hadoop是什么?
- hadoop是一個(gè)由Apache基金會(huì)所開發(fā)的支持?jǐn)?shù)據(jù)密集型分布式系統(tǒng)的基礎(chǔ)架構(gòu)。
- hadoop特點(diǎn)是可以讓用戶在不了解分布式底層細(xì)節(jié)的情況下,開發(fā)分布式程序;能夠利用集群的威力進(jìn)行高速運(yùn)算和存儲(chǔ)。
hadoop有哪些部分構(gòu)成?
- hadoop框架地為應(yīng)用提供可靠性和數(shù)據(jù)移動(dòng)。核心設(shè)計(jì)就是HDFS(Hadoop Distributed File System) 和 MapReduce。
- hadoop實(shí)現(xiàn)了MapReduce的編程范式:應(yīng)用程序被分區(qū)成許多小部分,而每個(gè)部分都能在集群中的任意節(jié)點(diǎn)上運(yùn)行或重新運(yùn)行。
- hadoop還提供了分布式文件系統(tǒng),用以存儲(chǔ)所有的計(jì)算節(jié)點(diǎn)的數(shù)據(jù),這為整個(gè)集群帶來了非常高的帶寬。
- 子項(xiàng)目介紹
--Hadoop Common
Hadoop體系最底層的一個(gè)模塊,為Hadoop各子項(xiàng)目提供各種工具,如:配置文件和日志操作等。
--Avro
Avro是doug cutting主持的RPC項(xiàng)目,有點(diǎn)類似Google的protobuf和Facebook的thrift。avro用來做以后hadoop的RPC,使hadoop的RPC模塊通信速度更快、數(shù)據(jù)結(jié)構(gòu)更緊湊。
--Chukwa
Chukwa是基于Hadoop的大集群監(jiān)控系統(tǒng),由yahoo貢獻(xiàn)。
--HBase
基于Hadoop Distributed File System,是一個(gè)開源的,基于列存儲(chǔ)模型的分布式數(shù)據(jù)庫。
--HDFS
分布式文件系統(tǒng)
--Hive
hive類似CloudBase,也是基于hadoop分布式計(jì)算平臺(tái)上的提供data warehouse的sql功能的一套軟件。使得存儲(chǔ)在hadoop里面的海量數(shù)據(jù)的匯總,即席查詢簡(jiǎn)單化。hive提供了一套QL的查詢語言,以sql為基礎(chǔ),使用起來很方便。
--MapReduce
實(shí)現(xiàn)了MapReduce編程框架
--Pig
Pig是SQL-like語言,是在MapReduce上構(gòu)建的一種高級(jí)查詢語言,把一些運(yùn)算編譯進(jìn)MapReduce模型的Map和Reduce中,并且用戶可以定義自己的功能。Yahoo網(wǎng)格運(yùn)算部門開發(fā)的又一個(gè)克隆Google的項(xiàng)目Sawzall。
--ZooKeeper
Zookeeper是Google的Chubby一個(gè)開源的實(shí)現(xiàn)。它是一個(gè)針對(duì)大型分布式系統(tǒng)的可靠協(xié)調(diào)系統(tǒng),提供的功能包括:配置維護(hù)、名字服務(wù)、分布式同步、組服務(wù)等。ZooKeeper的目標(biāo)就是封裝好復(fù)雜易出錯(cuò)的關(guān)鍵服務(wù),將簡(jiǎn)單易用的接口和性能高效、功能穩(wěn)定的系統(tǒng)提供給用戶。