中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

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

Hadoop之生態系統

發布時間:2020-07-16 22:55:22 來源:網絡 閱讀:520 作者:wangwei4078 欄目:數據庫

Hadoop生態系統

一、摘要

            經過幾年的快速發展,Hadoop現在已經發展成為包含多個相關項目的軟件生態系統。狹義的Hadoop核心只包括Hadoop Common、Hadoop HDFS和Hadoop MapReduce三個子項目,但是和Hadoop核心密切相關的還包括Avro、Zookeeper、Hive、Pig和Hbase等等項目,構建在這些項目之上的,面向具體領域、應用的Mahout、X-Rime、Crossbow和Ivory等項目,以及Chukwa、Flume、Sqoop、Oozie和Karmasphere等數據交換、工作流和開發環境這樣的外圍支撐系統。他們提供互補性的服務,共同提供了一個海量數據處理的軟件生態系統。

 

二、詳解

            1、Hadoop Common

            從Hadoop0.20版本開始,原來Hadoop項目的Core部分更名為Hadoop Common。Common為Hadoop的其他項目提供一些常用工具,主要包括系統配置工具Configuration、遠程過程調用RPC、序列化機制和Hadoop抽象文件系統FileSystem等。它們為在通用硬件上搭建云環境提供基本的服務,并為運行在該平臺的軟件開發提供了所需的API。

            2、HDFS

            HDFS,Hadoop分布式文件系統,是Hadoop體系中數據存儲管理的基礎。它是一個高度容錯的系統,能檢測和應對硬件故障,用于在低成本的通用硬件上運行。HDFS簡化了文件的一致性模型,通過流式數據訪問,提供高吞吐量應用程序數據訪問功能,適合帶有大型數據集的應用程序。

            3、MapReduce

            MapReduce是一種計算模型,泳衣進行大數據量的計算。Hadoop的MapReduce實現,和Common、HDFS一起,構成了Hadoop發展初期的三個組件。MapReduce將應用劃分成Map和Reduce兩個步驟,其中Map對數據集上的獨立元素進行指定的操作,生成鍵值對形式中間結果。Reduce則對中間結果中相同鍵的所有值進行規約,已得到最終結果。MapReduce這樣的功能劃分,非常適合在大量計算機的分布式并行環境里進行數據處理。

            4、Avro

            Avro是Doug Cuttiing牽頭開發,是一個數據序列化系統。類似于其它序列化機制,Avro可以將數據結構或者對象轉換成便于存儲和傳輸的格式,其設計目標是用于支持數據密集型應用,適合大規模數據的存儲與交換。Avro提供了豐富的數據結構類型、快速可壓縮的二進制數據格式、存儲吃就行數據的文件集、遠程調用RPC和簡單動態語言繼承等功能。

            5、Zookeeper

            在分布式系統中如何就某個值(決議)達成一致,是一個十分重要的基礎問題。Zookeeper作為一個分布式的服務框架,解決了分布式計算中的一致性問題。在此基礎上,Zookeeper可用于處理分布式應用中經常遇到的一些數據管理問題,如統一命名服務、狀態同步服務、集群管理、分布式應用配置項的管理等。Zookeeper常作為其他Hadoop相關項目的主要組件,發揮著越來越重要的作用。

            6、Hive

            Hive是Hadoop中的一個重要子項目,最早由Facebook設計,是建立在Hadoop基礎上的數據倉庫架構,它為數據倉庫的管理提供了許多功能,包括:數據ETL(抽取、轉換和加載)工具、數據存儲掛歷和大型數據集的查詢和分析能力。

            Hive提供的一種結構化數據的機制,定義了類似于傳統關系型數據庫中的類SQL語言:HiveQL,通過查詢語言,數據分析人員可以很方便地運行數據分析業務。

            7、HBase

            Google發表了BigTable系統論文后,開源社區就開始在HDFS上構建相應的實現HBase。Hbase是一個針對結構化數據的可伸縮、高可靠、高性能、分布式和面向列的動態模式數據庫。和傳統關系型數據庫不同,HBase采用了BigTable的數據模型:增強的稀疏排序映射表(Key/Value),其中,鍵由行關鍵字、列關鍵字和時間戳構成。HBase提供了對大規模數據的隨機、實時讀寫訪問,同時,HBase中保存的數據可以使用MapReduce來處理,它將數據存儲和并行計算完美結合到一起。

            8、Pig

            Pig運行在Hadoop上,是對大型數據集進行分析和評估的平臺。它簡化了使用Hadoop進行數據分析的要求,提供了一個高層次的、面向領域的抽象語言:Pig Latin。通過PigLatin,數據工程師可以將復雜且相互關聯的數據分析任務編碼為Pig操作上的數據流腳本,通過將該腳本轉換為MapReduce任務鏈,在hadoop上執行。和Hive一樣,Pig降低了對大型數據集進行分析和評估的門檻。

            9、Mahout

            Mahout起源于2008年,最初是Apache Lucene的子項目,它在極短的時間內取得了長足的發展,現在是Apache的頂級項目。Mahout的主要目標是創建一些可擴展的機器學習領域經典算法的實現,旨在幫助開發人員更加方便快捷地創建智能應用程序。Mahout現在已經包含了聚類、分類、推薦引擎(協同過濾)和頻繁集挖掘等廣泛使用的數據挖掘方法。除了算法,Mahout還包含數據的輸入/輸出工具、與其他存儲系統繼承等數據挖掘支撐架構。

            10、X-RIME

            X-RIME是一個開源的社會網絡分析工具,它提供了一套基于Hadoop的大規模社會網絡/復雜網絡分析工具包。X-RIME在MapReduce的框架上對十幾種社會網絡分析算法進行了并行化與分布式化,從而實現了對互聯網級大規模社會網絡/復雜網絡的分析。它包括HDFS存儲系統上的一套適合大規模社會網絡分析的數據模型、基于MapReduce實現的一系列社會網絡分析分布式計算并行算法和X-RIME處理迷行,即是X-RIME工具鏈等三部分。

            11、Crossbow

            CrossBow是在Bowtie和SOAPsnp基礎上,結合Hadoop的可擴展工具,該工具能夠充分利用集群進行生物計算。其中,Bowtie是一個快速、高效的基因短序列拼接至模板基因組工具:SOAPsnp則是一個重測序一致性序列建造程序。它們在復雜遺傳病和腫瘤易感的基因定位,到群體和進化遺傳學研究中發揮著重要作用。CrossBow利用了Hadoop Stream,將Bowtie、SOAPsnp上計算任務分布到Hadoop集群中,滿足了新一代基因測序技術帶來的海量數據存儲以及計算分析要求。

            12、Chukwa

            Chukwa是開源的數據收集系統,用于監控大規模分布式系統(2000+以上的節點,系統每天產生的監控數據量在T級別)。它構建在Hadoop的HDFS和MapReduce基礎之上,繼承了Hadoop的可伸縮性和魯棒性。Chukwa包含了一個強大和靈活的工具集,提供了數據的生成、收集、排序、去重、分析和展示一系列功能,是Hadoop使用者、集群運維人員和管理人員的必備工具。

            13、Flume

            Flume是Cloudera開發維護的分布式、可靠、高可用的日志收集系統。它將數據從產生、傳輸、處理并最終寫入目標的路徑的過程抽象為數據流,在具體的數據流中,數據源支持在Flume中定制數據發送方,從而支持手機各種不同協議數據。同時,Flume數據流提供對日志數據進行簡單處理的能力,如過濾、格式轉換等。此外,Flume還具有能將夠日志寫往各種數據目標(可定制)的能力。總的來說,Flume是一個可擴展、適合復雜環境的海量日志收集系統。

            14、Sqoop

            Sqoop是SQL-to-Hadoop的縮寫,是Hadoop 的周邊工具,它的主要作用在結構化數據存儲與Hadoop之間進行數據交換。Sqoop可以將一個關系型數據庫中的數據導入Hadoop的HDFS、Hive中,也可以將HDFS、Hive中的數據導入關系型數據庫中。Sqoop充分利用了Hadoop的優點。整個數據導入導出過程都是用MapReduce實現并行化,同時,該過程中的大部分步驟自動執行,非常方便。

            15、Oozie

            在Hadoop中執行數據處理工作,有時候需要把多個作業連接在一起,才能達到最終目的。針對上述需求,Yahaoo開發了開源工作引擎流Oozie,用于管理和協調多個運行在Hadoop平臺上作業。在Oozie中,計算作業被抽象為動作,控制流節點則用于構建動作間的依賴關系,它們一起組成一個有向無環的工作流,描述了一項完整的數據處理工作。Oozie工作流系統可以提高數據處理流程的柔性,改善Hadoop集群的效率,并降低開發和運營人員的工作量。

            16、Karmasphere

            Karmasphere包括Karmasphere Analyst和Karmasphere Studio。其中,Analyst提供了訪問保存在Hadoop里面的結構化和非結構化數據的能力,用戶可以運用SQL或者其他語言,進行即時查詢并做進一步的分析。Studio則是基于NetBeans的MapReduce集成開發環境,開發人員可以利用它方便快速地創建基于Hadoop的MapReduce應用。同時,該工具還提供了一些可視化工具,用于監控任務的執行,顯示任務間的輸入輸出和交互等。需要注意的是,在上面提及的這些項目中,該項目不開源。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

保康县| 五原县| 寻甸| 祁东县| 麟游县| 娱乐| 宕昌县| 昆明市| 株洲市| 历史| 马龙县| 都昌县| 苏尼特右旗| 比如县| 漳浦县| 祥云县| 聊城市| 广宁县| 宁陕县| 商都县| 浦县| 贵南县| 孝义市| 修武县| 焦作市| 武城县| 鹤峰县| 武汉市| 黄冈市| 广水市| 文成县| 来安县| 明星| 会理县| 招远市| 南靖县| 霸州市| 乐东| 神农架林区| 嵊州市| 佛冈县|