大數(shù)據(jù)技術(shù)原理與應(yīng)用:大數(shù)據(jù)處理架構(gòu)Hadoop生態(tài)圈

Hadoop生態(tài)圈

概述

Hadoop簡(jiǎn)介
什么是Apache hadoop?
Apache Hadoop項(xiàng)目是以可靠、可擴(kuò)展和分布式計(jì)算為目的而發(fā)展而來(lái)的開(kāi)源軟件

Apache Hadoop 軟件庫(kù)是一個(gè)允許在集群計(jì)算機(jī)上使用簡(jiǎn)單的編程模型來(lái)進(jìn)行大數(shù)據(jù)集的分布式任務(wù)的框架。它是設(shè)計(jì)來(lái)從單服務(wù)器擴(kuò)展到成千臺(tái)機(jī)器上,每個(gè)機(jī)器都能高效地提供本地的計(jì)算和存儲(chǔ)。

Hadoop發(fā)展歷史



Hadoop特性

Hadoop在企業(yè)應(yīng)用架構(gòu)

Hadoop版本演變

Hadoop Version:0.x為Hadoop1.0;從0.23.x開(kāi)始為Hadoop2.x

Hadoop版本架構(gòu)演變:將繁重的調(diào)度工作整合成一個(gè)Yarn框架

其他版本Hadoop

Hadoop架構(gòu)

Hadoop生態(tài)圈

產(chǎn)品功能簡(jiǎn)介

Hadoop生態(tài)系統(tǒng)圖

產(chǎn)品術(shù)語(yǔ)說(shuō)明
Hadoop項(xiàng)目包括模塊:

  • Hadoop Common :通用的工具來(lái)支持其他的Hadoop模塊
  • Hadoop Distributed FileSystem(HDFS):一個(gè)提供高可用獲取應(yīng)用數(shù)據(jù)的分布式文件系統(tǒng)
  • Hadoop YARN;Job調(diào)度和集群資源管理的框架
  • Hadoop MapReduce:基于YARN系統(tǒng)的并行處理大數(shù)據(jù)集的編程模型
    其他Hadoop相關(guān)的項(xiàng)目:
  • Ambari:一個(gè)基于web的工具,用來(lái)供應(yīng)、管理和監(jiān)測(cè)Apache Hadoop集群包括支持Hadoop HDFS、Hadoop MapReduce、Hive、HCatalog、HBase、ZooKeeper、Oozie、Pig和Sqoop。Ambari 也提供一個(gè)可視的儀表盤來(lái)查看集群的健康狀態(tài)(比如熱圖),并且能夠以一種用戶友好的方式根據(jù)其特點(diǎn)可視化的查看MapReduce、pig和Hive 應(yīng)用來(lái)診斷其性能特征。
  • Avro :數(shù)據(jù)序列化系統(tǒng)。
  • Cassandra :可擴(kuò)展的多主節(jié)點(diǎn)數(shù)據(jù)庫(kù),而且沒(méi)有單節(jié)點(diǎn)失敗情況。
  • Chukwa : 管理大型分布式系統(tǒng)的數(shù)據(jù)收集系統(tǒng)
  • HBase ; 一個(gè)可擴(kuò)展的分布式數(shù)據(jù)庫(kù),支持大表的結(jié)構(gòu)化數(shù)據(jù)存儲(chǔ)
  • Hive : 一個(gè)提供數(shù)據(jù)概述和AD組織查詢的數(shù)據(jù)倉(cāng)庫(kù)
  • Mahout :可擴(kuò)展大的機(jī)器學(xué)習(xí)和數(shù)據(jù)挖掘庫(kù)
  • Pig :一個(gè)支持并行計(jì)算的高級(jí)的數(shù)據(jù)流語(yǔ)言和執(zhí)行框架
  • Spark : 一個(gè)快速通用的Hadoop數(shù)據(jù)的計(jì)算引擎。spark 提供一個(gè)簡(jiǎn)單和富有表現(xiàn)力的編程模型并支持多領(lǐng)域應(yīng)用,包括ETL、機(jī)器學(xué)習(xí)、流處理 和圖計(jì)算。
  • Tez : 一個(gè)通用的數(shù)據(jù)流處理框架,構(gòu)建在Hadoop YARN上,提供一個(gè)有力的靈活的引擎來(lái)執(zhí)行一個(gè)任意的DAG任務(wù)來(lái)處理數(shù)據(jù)(批處理和交互式兩種方式)。Tez 可以被Hive、Pig和其他Hadoop生態(tài)系統(tǒng)框架和其他商業(yè)軟件(如:ETL工具)使用,用來(lái)替代Hadoop MapReduce 作為底層的執(zhí)行引擎。
  • ZooKeeper :一個(gè)應(yīng)用于分布式應(yīng)用的高性能的協(xié)調(diào)服務(wù)。
ambari通過(guò)開(kāi)發(fā)提供、管理和監(jiān)測(cè)Hadoop集群的軟件使得hadoop的管理更簡(jiǎn)單
Avro 是數(shù)據(jù)序列化系統(tǒng),簡(jiǎn)單的集成了動(dòng)態(tài)語(yǔ)言,代碼生成不再需要讀寫數(shù)據(jù)文件也不再使用或集成RPC協(xié)議。
Cassandra是一個(gè)高可擴(kuò)展的、最終一致、分布式、結(jié)構(gòu)化的k-v倉(cāng)庫(kù),Cassandra將BigTable的數(shù)據(jù)模型和Dynamo的分布式系統(tǒng)技術(shù)整合在一起。
Chukwa 是一個(gè)監(jiān)測(cè)大型分布式系統(tǒng)的開(kāi)源數(shù)據(jù)收集系統(tǒng)。
Hbase是一個(gè)開(kāi)源的,分布式,版本化,非關(guān)系的數(shù)據(jù)庫(kù),仿照自Google的BigTable,BigTable的分布式數(shù)據(jù)存儲(chǔ)由GFS(Google File System)提供,HBase在Hadoop和HDFS上提供類似大表能力。
Hive架構(gòu):Apache Hive數(shù)據(jù)倉(cāng)庫(kù)軟件用于查詢和管理大數(shù)據(jù)集駐扎在分布式倉(cāng)庫(kù)上。
mahout 項(xiàng)目目標(biāo)是構(gòu)建一個(gè)快速創(chuàng)建可擴(kuò)展高性能的機(jī)器學(xué)習(xí)應(yīng)用的環(huán)境。
Pig是數(shù)據(jù)流執(zhí)行引擎
Spark龐大的生態(tài)圈
Tez是一個(gè)針對(duì)Hadoop數(shù)據(jù)處理應(yīng)用程序的新分布式執(zhí)行框架
ZooKeeper是一個(gè)開(kāi)源的來(lái)提供高可靠的分布式協(xié)調(diào)的服務(wù)

Sqoop是一個(gè)用來(lái)將Hadoop和關(guān)系型數(shù)據(jù)庫(kù)中的數(shù)據(jù)相互轉(zhuǎn)移的工具
Flume是一個(gè)分布式、可靠的、高可用的有效收集、聚合和轉(zhuǎn)移大量日志文件的服務(wù)

Impala類似與Hive,是Cloudera公司主導(dǎo)開(kāi)發(fā)的新型查詢系統(tǒng),比hive更加高效

Hadoop 安裝部署

偽分布式安裝

目前Hadoop的Stable版本歸為2.9.0,這里以2.9.0版本為例子:

部署教程可以看我的另外一篇文章:Centos7部署Hadoop偽分布式集群.

集群部署建議

Hadoop集群中需要有哪些節(jié)點(diǎn)類型?

集群硬件要求

硬件配置推薦

集群網(wǎng)絡(luò)拓?fù)浣ㄗh
集群網(wǎng)絡(luò)拓?fù)?/div>

集群部署方式建議
集群部署方式建議

集群基準(zhǔn)測(cè)試建議
Hadoop集群基準(zhǔn)測(cè)試:TestDFSIO/WordCountExample.jar

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容