溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

大數(shù)據(jù)hadoop領(lǐng)域技術(shù)總體介紹(各個組件的作用)

發(fā)布時間:2020-05-31 16:59:26 來源:網(wǎng)絡(luò) 閱讀:2106 作者:馬吉輝 欄目:大數(shù)據(jù)

2019/2/16 星期六

大數(shù)據(jù)領(lǐng)域技術(shù)總體介紹(各個組件的作用)
1、大數(shù)據(jù)技術(shù)介紹
大數(shù)據(jù)技術(shù)生態(tài)體系:
Hadoop 元老級分布式海量數(shù)據(jù)存儲、處理技術(shù)系統(tǒng),擅長離線數(shù)據(jù)分析
Hbase 基于hadoop 的分布式海量數(shù)據(jù)庫,離線分析和在線業(yè)務(wù)通吃
Hive sql 基于hadoop 的數(shù)據(jù)倉庫工具,使用方便,功能豐富,使用方法類似SQL
Zookeeper 集群協(xié)調(diào)服務(wù)
Sqoop 數(shù)據(jù)導(dǎo)入導(dǎo)出工具
Flume 數(shù)據(jù)采集框架 //經(jīng)常會結(jié)合kafka+flume數(shù)據(jù)流 或者用于大量的日志收集到hdfs上 日志收集分析大多數(shù)企業(yè)用elk
Storm 實時流式計算框架,流式處理領(lǐng)域頭牌框架
Spark 基于內(nèi)存的分布式運算框架,一站式處理all in one,新秀,發(fā)展勢頭迅猛
sparkCore //應(yīng)用開發(fā)
SparkSQL //sql操作 類似hive
SparkStreaming //類似于storm

機器學(xué)習(xí):
Mahout 基于mapreduce 的機器學(xué)習(xí)算法庫
MLLIB 基于spark 機器學(xué)習(xí)算法庫

大數(shù)據(jù)hadoop領(lǐng)域技術(shù)總體介紹(各個組件的作用)

大數(shù)據(jù)hadoop領(lǐng)域技術(shù)總體介紹(各個組件的作用)

由上圖可以看出,大數(shù)據(jù)hadoop生態(tài)圈中類似于一個動物園,zookeeper組件就類似于一個管理者,管理這些動物。//大數(shù)據(jù)生態(tài)圈的組件很多,不知我們上面提到的組件,圖中展示的為基本組件。

2、需要由潛到深
一、理解該框架的功能和適用場景
二、使用(安裝部署,編程規(guī)范,API)
三、運行機制
四、結(jié)構(gòu)原理
五、源碼

3、hadoop基本介紹
(1)hadoop 是用于處理(運算分析)海量數(shù)據(jù)的技術(shù)平臺,且是采用分布式集群的方式;
(2)hadoop 兩個大的功能:
? 提供海量數(shù)據(jù)的存儲服務(wù);
? 提供分析海量數(shù)據(jù)的編程框架及運行平臺;
(3)Hadoop 有3大核心組件:
? HDFS---- hadoop 分布式文件系統(tǒng)海量數(shù)據(jù)的存儲(集群服務(wù)),
? MapReduce----分布式運算框架(編程框架)(導(dǎo)jar 包寫程序),海量數(shù)據(jù)運算分析(替代品:storm /spark 等)
? Yarn ----資源調(diào)度管理集群(可以理解為一個分布式的操作系統(tǒng),管理和分配集群硬件資源)
(4)使用Hadoop:
? 可以把hadoop 理解為一個編程框架(類比:structs、spring、hibernate/mybatis),有著自己特定的API 封裝和用戶編程規(guī)范,用戶可借助這些API 來實現(xiàn)數(shù)據(jù)處理邏輯;從另一個角度,hadoop 又可以理解為一個提供服務(wù)的軟件(類比:數(shù)據(jù)庫服務(wù)
oracle/mysql、索引服務(wù)solr,緩存服務(wù)redis 等),用戶程序通過客戶端向hadoop集群請求服務(wù)來實現(xiàn)特定的功能;
(5)Hadoop 產(chǎn)生的歷史
最早來自于google 的三大技術(shù)論文:GFS/MAPREDUCE/BIG TABLE
(為什么google 會需要這么一種技術(shù)?)
后來經(jīng)過doug cutting 的“山寨”,出現(xiàn)了java 版本的hdfs mapreduce 和hbase
并成為apache 的頂級項目hadoop ,hbase
經(jīng)過演化,hadoop 的組件又多出一個yarn(mapreduce+ yarn + hdfs)
而且,hadoop 外圍產(chǎn)生了越來越多的工具組件,形成一個龐大的hadoop 生態(tài)體系

為什么需要hadoop
在數(shù)據(jù)量很大的情況下,單機的處理能力無法勝任,必須采用分布式集群的方式進行處理,而用分布式集群的方式處理數(shù)據(jù),實現(xiàn)的復(fù)雜度呈級數(shù)增加,所以,在海量數(shù)據(jù)處理的需求下,一個通用的分布式數(shù)據(jù)處理技術(shù)框架能大大降低應(yīng)用開發(fā)難度和減少工作量。

hadoop業(yè)務(wù)的整體開發(fā)流程:見圖
flume數(shù)據(jù)采集--->MapReduce清洗---->存入hbase或者hdfs---->hive統(tǒng)計分析---->存入hive表中--->sqoop導(dǎo)入導(dǎo)出--->mysql數(shù)據(jù)庫--->web展示

大數(shù)據(jù)hadoop領(lǐng)域技術(shù)總體介紹(各個組件的作用)

提示:其中我們當數(shù)據(jù)量非常大的時候,我們可以在flume數(shù)據(jù)采集節(jié)點加入kafka消息隊列形成緩存區(qū);在數(shù)據(jù)清洗階段我們可以用spark 或者storm flink等內(nèi)存和實時流算法框架(針對不同的業(yè)務(wù)場景);存入hadoop中的HBASE或者hdfs中;在數(shù)據(jù)分析階段,我們可以用hive或者impala等計算工具;web展示的時候,可以把數(shù)據(jù)用elk中kabina//數(shù)據(jù)可視化工具kabina或者Grafana

向AI問一下細節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI