大數據學習---Hadoop(一)

2020-08-10 16:55:45

大數據概論

1、大數據概念

大數據(big data)是指無法在一定時間內用常規軟體工具對其內容進行抓取、管理和處理的數據集合。大數據有五大特點,即大量(Volume)、高速(Velocity)、多樣(Variety)、低價值密度(Value)、真實性(Veracity)。它並沒有統計學的抽樣方法,只是觀察和追蹤發生的事情。
大數據的用法傾向於預測分析、使用者行爲分析或某些其他高階數據分析方法的使用。

2.大數據部門組織結構

在这里插入图片描述

3、hadoop

hadoop是一個由Apache基金會所開發的分佈式系統基礎架構。
它可以使使用者在不瞭解分佈式底層細節的情況下,開發分佈式程式,充分利用叢集的威力進行高速運算和儲存。hadoop的框架最核心的設計就是HDFS和MapReduce,HDFS爲海量的數據提供了儲存,MapReduce則爲海量的數據提供了計算。

4、Hadoop的優勢

高可靠性:Hadoop按位元儲存和處理數據的能力值得人們信賴。
高擴充套件性:Hadoop是在可用的計算機集簇間分配數據並完成計算任務的,這些集簇可以方便地擴充套件到數以千計的節點中。
高效性:Hadoop能夠在節點之間動態地移動數據,並保證各個節點的動態平衡,因此處理速度非常快。
高容錯性:Hadoop能夠自動儲存數據的多個副本,並且能夠自動將失敗的任務重新分配。
低成本:與一體機、商用數據倉庫以及QlikView、Yonghong Z-Suite等數據集市相比,hadoop是開源的,專案的軟體成本因此會大大降低。
Hadoop帶有用Java語言編寫的框架,因此執行在 Linux 生產平臺上是非常理想的。Hadoop 上的應用程式也可以使用其他語言編寫,比如C++。

5、Hadoop的組成

1.Hadoop Common:Hadoop體系最底層的一個模組,爲Hadoop各子專案提供各種工具,如:組態檔和日誌操作等。

2.HDFS:分佈式檔案系統,提供高吞吐量的應用程式數據存取,對外部客戶機而言,HDFS 就像一個傳統的分級檔案系統。可以建立、刪除、移動或重新命名檔案,等等。但是HDFS 的架構是基於一組特定的節點構建的(參見圖
1),這是由它自身的特點決定的。這些節點包括 NameNode(僅一個),它在 HDFS 內部提供元數據服務;DataNode,它爲
HDFS 提供儲存塊。由於僅存在一個 NameNode,因此這是 HDFS 的一個缺點(單點失敗)。

儲存在 HDFS 中的檔案被分成塊,然後將這些塊複製到多個計算機中(DataNode)。這與傳統的 RAID 架構大不相同。塊的大小(通常爲
64MB)和複製的塊數量在建立檔案時由客戶機決定。NameNode 可以控制所有檔案操作。HDFS 內部的所有通訊都基於標準的 TCP/IP
協定。

3.MapReduce:一個分佈式海量數據處理的軟體框架集計算叢集。

4.Avro :doug cutting主持的RPC專案,主要負責數據的序列化。有點類似Google的protobuf和Facebook的thrift。avro用來做以後hadoop的RPC,使hadoop的RPC模組通訊速度更快、數據結構更緊湊。

5.Hive :類似CloudBase,也是基於hadoop分佈式計算平臺上的提供data warehouse的sql功能的一套軟體。使得儲存在hadoop裏面的海量數據的彙總,即席查詢簡單化。hive提供了一套QL的查詢語言,以sql爲基礎,使用起來很方便。

6.HBase :基於HadoopDistributed File System,是一個開源的,基於列儲存模型的可延伸的分佈式數據庫,支援大型表的儲存結構化數據。

7.Pig :是一個並行計算的高階的數據流語言和執行框架 ,SQL-like語言,是在MapReduce上構建的一種高階查詢語言,把一些運算編譯進MapReduce模型的Map和Reduce中,並且使用者可以定義自己的功能。

8.ZooKeeper:Google的Chubby一個開源的實現。它是一個針對大型分佈式系統的可靠協調系統,提供的功能包括:設定維護、名字服務、分佈式同步、組服務等。ZooKeeper的目標就是封裝好複雜易出錯的關鍵服務,將簡單易用的介面和效能高效、功能穩定的系統提供給使用者。

9.Chukwa :一個管理大型分佈式系統的數據採集系統 由yahoo貢獻。

10.Cassandra:無單點故障的可延伸的多主數據庫

11.Mahout :一個可延伸的機器學習和數據挖掘庫

作者:Alukar 鏈接:https://www.jianshu.com/p/db43d2917a2b 來源:簡書
著作權歸作者所有。商業轉載請聯繫作者獲得授權,非商業轉載請註明出處
Hadoop由哪幾部分組成?