亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        揭秘Hadoop生態(tài)圈

        2016-12-17 20:34:54林琳
        科技視界 2016年26期

        林琳

        【摘 要】Hadoop的兩大核心是HDFS和YARN。Hadoop是一個軟件框架,能夠?qū)A繑?shù)據(jù)進行分布式處理。Hadoop的特點是可靠、高效、可伸縮。

        【關(guān)鍵詞】Hadoop;HDFS;YARN

        0 引言

        從誕生至今,Hadoop已經(jīng)發(fā)展成為一個龐大的與大數(shù)據(jù)相關(guān)的軟件生態(tài)系統(tǒng)。本文收集整理了跟Hadoop相關(guān)的Apache下的開源項目,主要是對 Hadoop生態(tài)系統(tǒng)有個初步的認識。那么Hadoop生態(tài)系統(tǒng)都包括哪些內(nèi)容呢?

        Hadoop生態(tài)系統(tǒng)主要包括分布式文件管理系統(tǒng)HDFS,分布式計算框架MapReduce,分布式協(xié)作服務(wù)Zookeeper,實時分布式數(shù)據(jù)庫Hbase,數(shù)據(jù)倉庫Hive,數(shù)據(jù)流處理Pig,數(shù)據(jù)挖掘Mahout,日志收集工具Flume,數(shù)據(jù)庫ETL工具Sqoop,安裝、部署、配置和管理工具Ambari。

        Ambari(安裝、部署、配置和管理工具)

        Zookeeper (分布式協(xié)作服務(wù))

        Hive(數(shù)據(jù)倉庫)

        Pig(數(shù)據(jù)流處理)

        Mahout(數(shù)據(jù)挖掘庫)

        Flume(日志收集工具)

        Hbase(實時分布式數(shù)據(jù)庫)

        MapReduce(分布式計算框架)

        Sqoop(數(shù)據(jù)庫ETL工具)

        HDFS(分布式文件系統(tǒng))

        1 HDFS(Hadoop分布式文件系統(tǒng))

        HDFS全稱為Hadoop Distributed File System,這個概念源自于Google發(fā)表于2003年10月的GFS論文,HDFS是GFS克隆版,Hadoop和 HDFS 都是從GFS中派生的。

        HDFS是一個高度容錯的系統(tǒng),不僅可以在低成本的通用硬件上運行,還能檢測和應(yīng)對硬件故障,是Hadoop數(shù)據(jù)存儲管理的基礎(chǔ)。

        通過流式數(shù)據(jù)訪問,HDFS提供高吞吐量應(yīng)用程序數(shù)據(jù)訪問功能,為跨多個機器存儲大型文件提供了一種解決方案,適合帶有大型數(shù)據(jù)集的應(yīng)用程序。

        NameNode:是一個Master節(jié)點。在Hadoop 1.0中,NameNode是HDFS 集群的一個單點故障。Hadoop 2.0出現(xiàn)后,HDFS利用Zookeeper解決了這個問題。NameNode的主要功能是處理客戶端請求,管理HDFS的名稱空間和數(shù)據(jù)塊映射信息以及配置副本策略。

        Secondary NameNode:Secondary NameNode并非NameNode必備。它只是用來輔助NameNode,分擔(dān)其工作量的,在某些緊急情況下,可輔助恢復(fù)NameNode。

        DataNode:DataNode是一個 Slave節(jié)點,用來存儲數(shù)據(jù),匯報存儲信息給NameNode。

        Client:Client的作用是切分文件和訪問HDFS。它與NameNode交互時,能夠獲取文件位置信息,與DataNode交互,能夠讀取和寫入數(shù)據(jù)。

        2 Mapreduce(分布式計算框架)

        MapReduce是一種是使用集群的并行、分布式算法處理大數(shù)據(jù)集的可編程計算模型,用以解決海量數(shù)據(jù)的計算問題。在大型集群中能夠起到簡化數(shù)據(jù)處理的作用。MapReduce遵循YARN的框架協(xié)議,能夠在YARN上可以運行。

        在MapReduce中,Map負責(zé)對數(shù)據(jù)集上的獨立元素進行指定操作,形成中間結(jié)果鍵值對。Reduce負責(zé)對中間結(jié)果中相同“鍵”的所有“值”進行規(guī)約,得到最終結(jié)果。MapReduce這樣的功能劃分,非常適合在分布式并行環(huán)境里進行數(shù)據(jù)處理。

        JobTracker:唯一一個Master節(jié)點,管理所有作業(yè)和錯誤處理,將任務(wù)分解成一系列子任務(wù),并分派給TaskTracker。

        TaskTracker:Slave節(jié)點,向JobTracker匯報任務(wù)狀態(tài)。

        Map Task:解析每條數(shù)據(jù)記錄,傳遞給用戶編寫的map并執(zhí)行,將輸出結(jié)果寫入本地磁盤。

        Reducer Task:從Map Task的執(zhí)行結(jié)果中,遠程讀取輸入數(shù)據(jù),對數(shù)據(jù)進行排序后分組傳遞給用戶編寫的reduce函數(shù)執(zhí)行。

        3 Hbase(分布式列存數(shù)據(jù)庫)

        HBase是一個構(gòu)建在HDFS上的分布式列存儲系統(tǒng)。HBase利用MapReduce來處理海量數(shù)據(jù),將數(shù)據(jù)存儲和并行計算完美地結(jié)合在一起。Bigtable使用Chubby服務(wù),而HBase利用Zookeeper作為對應(yīng)。和傳統(tǒng)關(guān)系數(shù)據(jù)庫不同,HBase采用了BigTable的數(shù)據(jù)模型,增強的稀疏排序映射表,是一個針對結(jié)構(gòu)化數(shù)據(jù)的動態(tài)模式數(shù)據(jù)庫,具有可伸縮、高可靠、高性能、分布式和面向列的特性。從邏輯上講,HBase將數(shù)據(jù)按照表、行和列進行存儲。與hadoop一樣,Hbase目標(biāo)主要依靠橫向擴展,通過不斷增加服務(wù)器來增加計算和存儲能力。HBase是Hadoop生態(tài)系統(tǒng)中的重要一員,主要用于海量結(jié)構(gòu)化數(shù)據(jù)存儲。

        HBase提供了對大規(guī)模數(shù)據(jù)的隨機、實時讀寫訪問。

        Hbase的數(shù)據(jù)模型

        Schema-->Table-->Column

        Family-->Column-->RowKey-->TimeStamp-->Value

        RowKey:是表中每條記錄的“主鍵”,方便快速查找。

        Column Family:列族,包含一個或者多個相關(guān)列。

        Column:屬于某一個columnfamily,每條記錄可動態(tài)添加。

        Version Number:類型為Long,默認值是系統(tǒng)時間戳,可由用戶自定義。

        Value(Cell):Byte array

        4 Zookeeper(分布式協(xié)作服務(wù))

        Zookeeper是一個針對大型分布式系統(tǒng)的可靠協(xié)調(diào)系統(tǒng),用來解決分布式環(huán)境下的數(shù)據(jù)管理問題:如狀態(tài)同步,集群管理,配置維護、名字服務(wù)、分布式同步等。

        ZooKeeper能夠配置信息維護,包括封裝關(guān)鍵服務(wù),提供簡單易用的接口和功能穩(wěn)定的系統(tǒng)。在一個分布式的環(huán)境中,我們需要一個 Master 實例或存儲一些配置信息,來確保文件寫入的一致性等。Zookeeper提供了這樣一個高效可靠的協(xié)同工作系統(tǒng)。

        Zookeeper的作用是,通過選舉,使集群中始終只有一個Master存在,實時監(jiān)控Region server的上線和下線信息。并實時通知給Master。

        5 Hive(基于Hadoop的數(shù)據(jù)倉庫)

        Hive定義了一種類似SQL的查詢語言(HQL),將SQL轉(zhuǎn)化為能在Hadoop上執(zhí)行的MapReduce任務(wù)。通常用于數(shù)據(jù)匯總,查詢和離線分析。最初用于解決日志數(shù)據(jù)統(tǒng)計問題。

        6 Pig(基于Hadoop的數(shù)據(jù)流系統(tǒng))

        Pig在 Hadoop 分布式文件系統(tǒng),HDFS,MapReduce中都能夠運行,使用 MapReduce來執(zhí)行數(shù)據(jù)處理。Pig提供了一個能夠在Hadoop并行執(zhí)行數(shù)據(jù)流的引擎。Pig 用Pig Latin語言來表達數(shù)據(jù)流,包括大量的傳統(tǒng)數(shù)據(jù)操作,也可以讓用戶開發(fā)自己的函數(shù),查看,處理和編寫數(shù)據(jù)。也可以編寫一個或者多個的 MapReduce 作業(yè),然后執(zhí)行。

        7 Mahout(數(shù)據(jù)挖掘算法庫)

        Mahout是一種基于MapReduce的機器學(xué)習(xí)庫和數(shù)學(xué)庫。

        Mahout旨在創(chuàng)建一些可擴展的經(jīng)典算法的實現(xiàn),能夠幫助開發(fā)人員更方便快捷地創(chuàng)建智能應(yīng)用程序。Mahout現(xiàn)在已經(jīng)包含了聚類、分類、協(xié)同過濾和頻繁集挖掘等數(shù)據(jù)挖掘方法。

        Mahout起源于2008年,最初是Apache下的一個的子項目,在極短的時間內(nèi)飛速發(fā)展,現(xiàn)在已經(jīng)是Apache的頂級項目之一。

        8 Sqoop(數(shù)據(jù)同步工具)

        Sqoop是SQL-to-Hadoop的縮寫,主要用于在傳統(tǒng)數(shù)據(jù)庫和Hadoop之間進行數(shù)據(jù)傳輸。Sqoop充分利用了Mapreduce的并行化和容錯性,來進行數(shù)據(jù)的導(dǎo)入和導(dǎo)出,通常用于進行離線分析。

        9 Flume(日志收集工具)

        Flume是一個可擴展、開源的、適合復(fù)雜環(huán)境的海量日志收集系統(tǒng)。它具有分布式、高可靠、高容錯、易擴展的優(yōu)點。

        它將數(shù)據(jù)從產(chǎn)生、傳輸、處理并最終寫入目標(biāo)的路徑的過程抽象為數(shù)據(jù)流,F(xiàn)lume支持收集各種不同協(xié)議數(shù)據(jù)。同時提供對日志數(shù)據(jù)進行簡單處理的能力,如過濾、格式轉(zhuǎn)換等。

        【參考文獻】

        [1]陸嘉恒.Hadoop實戰(zhàn)[M].機械工業(yè)出版社,2011,10.

        [2]Tom White.Hadoop:The Definitive Guide[M].東南大學(xué)出版社,2011,5.

        [責(zé)任編輯:田吉捷]

        国产夫妻av| 国产亚洲精品久久久闺蜜| 粗大的内捧猛烈进出视频| 色偷偷一区二区无码视频| 欧美深夜福利视频| 美腿丝袜视频在线观看| 久久精品国产亚洲av无码偷窥| 欧美jizzhd精品欧美| 久久婷婷色香五月综合激情 | 国产一级三级三级在线视| 免费看黄在线永久观看| 少妇被猛烈进入到喷白浆| 国产精品v欧美精品v日韩精品| 无码成人片一区二区三区| 亚洲天堂一二三四区在线| 精品无码av无码专区| 男人扒开女人下面狂躁小视频| 韩国女主播一区二区在线观看 | 国产精品无码专区av在线播放| 色老头久久综合网老妇女| 91亚洲夫妻视频网站| 色综合久久蜜芽国产精品| 成av人片一区二区三区久久| 亚洲欧美日韩国产综合专区| 中文字幕日韩高清乱码| 乱码av麻豆丝袜熟女系列| 亚洲国产精品无码久久电影| 91蜜桃国产成人精品区在线| 美腿丝袜在线一区二区| 最近最新中文字幕| 乱人伦视频69| 久久精品国产亚洲av网站| 绝顶潮喷绝叫在线观看| 国产乱视频| 日本高清一区二区三区在线| 日本污ww视频网站| 国产成人精品一区二区视频 | 国产亚洲日本精品二区| 亚洲av高清在线观看一区二区| 免费大片黄在线观看| 亚洲国产精品色婷婷久久|