小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

數(shù)據(jù)產(chǎn)品經(jīng)理術(shù)語之hadoop

數(shù)據(jù)產(chǎn)品經(jīng)理的工作描述中,“了解hadoop”是一個(gè)高頻出現(xiàn)的內(nèi)容。大多數(shù)產(chǎn)品經(jīng)理并沒有直接與hadoop打交道的經(jīng)驗(yàn),本文希望能夠幫助大家對Hadoop有一個(gè)基礎(chǔ)的理解。

數(shù)據(jù)產(chǎn)品經(jīng)理術(shù)語之hadoop

一、是什么

Hadoop是一個(gè)由Apache基金會所開發(fā)的分布式系統(tǒng)基礎(chǔ)架構(gòu),它封裝了復(fù)雜的分布式底層細(xì)節(jié),使開發(fā)人員能夠低門檻地開發(fā)分布式程序,充分利用集群的威力進(jìn)行高速運(yùn)算和存儲。

Hadoop是一個(gè)針對于大數(shù)據(jù)的存取、計(jì)算、加工、分析,由多個(gè)工具構(gòu)成的解決方案。

二、為了解決什么問題

任何新技術(shù)的提出,都是為了解決問題。那么,Hadoop是在什么樣的情況下應(yīng)運(yùn)而生的,它又解決了什么問題呢?

隨著互聯(lián)網(wǎng)數(shù)據(jù)量增多,數(shù)據(jù)產(chǎn)生速度增快,數(shù)據(jù)類型多樣性提高,之前的集中式的數(shù)據(jù)處理系統(tǒng)顯露出了很多問題。

  • 原有系統(tǒng)存儲容量有限,無法承載每日TB甚至PB級的數(shù)據(jù)量。
  • 原有系統(tǒng)適合處理簡單數(shù)據(jù),對于音視頻、圖片等多種類型的文件支持一般。
  • 原有系統(tǒng)應(yīng)對故障的能力弱。
  • 原有系統(tǒng)對機(jī)器要求高,構(gòu)建成本高。

Hadoop構(gòu)建了可以運(yùn)行在多個(gè)廉價(jià)小型機(jī)的分布式系統(tǒng)架構(gòu),以低成本的方案解決了上述問題,從而得到了行業(yè)中大量的應(yīng)用。

三、工作原理1. 示意圖

數(shù)據(jù)產(chǎn)品經(jīng)理術(shù)語之hadoop

Hadoop中的核心設(shè)計(jì)包括兩點(diǎn):HDFS和MapReduce。

圖中白色塊屬于HDFS,黑色塊屬于MapReduce。

2. HDFS

HDFS(Hadoop Distributed File System)是一個(gè)高度容錯性的分布式文件系統(tǒng),可以被廣泛的部署于廉價(jià)的PC上。它以流式訪問模式訪問應(yīng)用程序的數(shù)據(jù),這大大提高了整個(gè)系統(tǒng)的數(shù)據(jù)吞吐量,因而非常適合用于具有超大數(shù)據(jù)集的應(yīng)用程序中。

一個(gè)典型的HDFS集群包含一個(gè)NameNode節(jié)點(diǎn)和多個(gè)DataNode節(jié)點(diǎn),NameNode節(jié)點(diǎn)負(fù)責(zé)整個(gè)HDFS文件系統(tǒng)中的文件的元數(shù)據(jù)的保管和管理,集群中通常只有一臺機(jī)器上運(yùn)行NameNode實(shí)例,DataNode節(jié)點(diǎn)保存文件中的數(shù)據(jù),集群中的機(jī)器分別運(yùn)行一個(gè)DataNode實(shí)例。

在HDFS中,NameNode節(jié)點(diǎn)被稱為名稱節(jié)點(diǎn),DataNode節(jié)點(diǎn)被稱為數(shù)據(jù)節(jié)點(diǎn)。DataNode節(jié)點(diǎn)通過心跳機(jī)制與NameNode節(jié)點(diǎn)進(jìn)行定時(shí)的通信。

NameNode :

可以看作是分布式文件系統(tǒng)中的管理者,存儲文件系統(tǒng)的meta-data,主要負(fù)責(zé)管理文件系統(tǒng)的命名空間,集群配置信息,存儲塊的復(fù)制。

Secondary NameNode:

幫助 NameNode 收集文件系統(tǒng)運(yùn)行的狀態(tài)信息 。

DataNode :

是文件存儲的基本單元,它存儲文件塊在本地文件系統(tǒng)中,保存了文件塊的meta-data,同時(shí)周期性的發(fā)送所有存在的文件塊的報(bào)告給NameNode。

3. MapReduce

MapReduce是一種編程模型,用于大規(guī)模數(shù)據(jù)集的并行運(yùn)算。Map(映射)和Reduce(化簡),采用分而治之思想,先把任務(wù)分發(fā)到集群多個(gè)節(jié)點(diǎn)上,并行計(jì)算,然后再把計(jì)算結(jié)果合并,從而得到最終計(jì)算結(jié)果。

舉個(gè)通俗的例子:

我們要數(shù)圖書館中的所有書,你數(shù)1號書架,我數(shù)2號書架,這就是“Map”。我們?nèi)嗽蕉啵瑪?shù)書就更快。

現(xiàn)在我們到一起,把所有人的統(tǒng)計(jì)數(shù)加在一起,這就是“Reduce”。

用戶提交任務(wù)給JobTracer,JobTracer把對應(yīng)的用戶程序中的Map操作和Reduce操作映射至TaskTracer節(jié)點(diǎn)中;輸入模塊負(fù)責(zé)把輸入數(shù)據(jù)分成小數(shù)據(jù)塊,然后把它們傳給Map節(jié)點(diǎn);Map節(jié)點(diǎn)得到每一個(gè)key/value對,處理后產(chǎn)生一個(gè)或多個(gè)key/value對,然后寫入文件;Reduce節(jié)點(diǎn)獲取臨時(shí)文件中的數(shù)據(jù),對帶有相同key的數(shù)據(jù)進(jìn)行迭代計(jì)算,然后把終結(jié)果寫入文件。

JobTracker:

當(dāng)有任務(wù)提交到 Hadoop 集群的時(shí)候負(fù)責(zé) Job 的運(yùn)行,負(fù)責(zé)調(diào)度多個(gè) TaskTracker 。

TaskTracker:

負(fù)責(zé)某一個(gè) map 或者 reduce 任務(wù) 。

四、優(yōu)缺點(diǎn)1. 優(yōu)勢
  1. 大數(shù)據(jù)文件,非常適合上T級別的大文件或者一堆大數(shù)據(jù)文件的存儲,如果文件只有幾個(gè)G甚至更小就沒啥意思了。
  2. 文件分塊存儲,HDFS會將一個(gè)完整的大文件平均分塊存儲到不同計(jì)算器上,它的意義在于讀取文件時(shí)可以同時(shí)從多個(gè)主機(jī)取不同區(qū)塊的文件,多主機(jī)讀取比單主機(jī)讀取效率要高得多。
  3. 流式數(shù)據(jù)訪問,一次寫入多次讀寫,這種模式跟傳統(tǒng)文件不同,它不支持動態(tài)改變文件內(nèi)容,而是要求讓文件一次寫入就不做變化,要變化也只能在文件末添加內(nèi)容。
  4. 廉價(jià)硬件,HDFS可以應(yīng)用在普通PC機(jī)上,這種機(jī)制能夠讓給一些公司用幾十臺廉價(jià)的計(jì)算機(jī),就可以撐起一個(gè)大數(shù)據(jù)集群。
  5. 硬件故障,HDFS認(rèn)為所有計(jì)算機(jī)都可能會出問題,為了防止某個(gè)主機(jī)失效讀取不到該主機(jī)的塊文件,它將同一個(gè)文件塊副本分配到其它某幾個(gè)主機(jī)上,如果其中一臺主機(jī)失效,可以迅速找另一塊副本取文件。
2. 缺陷

HDFS不適合用在:要求低時(shí)間延遲數(shù)據(jù)訪問的應(yīng)用,存儲大量的小文件,多用戶寫入,任意修改文件。

五、適用場景

搜索、日志處理、推薦系統(tǒng)、數(shù)據(jù)分析、視頻圖像分析、數(shù)據(jù)保存等。

六、生態(tài)
  • 部署,配置和監(jiān)控:Ambari,Whirr
  • 監(jiān)控管理工具:Hue, karmasphere, eclipse plugin, cacti, ganglia
  • 數(shù)據(jù)序列化處理與任務(wù)調(diào)度:Avro, Zookeeper
  • 數(shù)據(jù)收集:Fuse,Webdav,Chukwa,F(xiàn)lume, Scribe , Nutch
  • 數(shù)據(jù)存儲:HDFS
  • 類SQL查詢數(shù)據(jù)倉庫:Hive
  • 流式數(shù)據(jù)處理:Pig
  • 并行計(jì)算框架:MapReduce, Tez
  • 數(shù)據(jù)挖掘和機(jī)器學(xué)習(xí):Mahout
  • 列式存儲在線數(shù)據(jù)庫:HBase
  • 元數(shù)據(jù)中心:HCatalog (可以和Pig,Hive ,MapReduce等結(jié)合使用)
  • 工作流控制:Oozie,Cascading
  • 數(shù)據(jù)導(dǎo)入導(dǎo)出到關(guān)系數(shù)據(jù)庫:Sqoop,F(xiàn)lume, Hiho
  • 數(shù)據(jù)可視化:drilldown,Intellicus

    本站是提供個(gè)人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多