大資料hadoop入門之hadoop家族產品詳解

adnb34g發表於2018-12-26

大資料 hadoop 入門之 hadoop 家族產品詳解

 

大資料這個詞也許幾年前你聽著還會覺得陌生,但我相信你現在聽到 hadoop 這個詞的時候你應該都會覺得“熟悉”!越來越發現身邊從事 hadoop 開發或者是正在學習 hadoop 的人變多了。作為一個 hadoop 入門級的新手,你會覺得哪些地方很難呢?執行環境的搭建恐怕就已經足夠讓新手頭疼。如果每一個發行版 hadoop 都可以做到像大快 DKHadoop 那樣把各種環境搭建整合到一起,一次安裝搞定所有,那對於新手來說將是件多麼美妙的事情!

閒話扯得稍微多了點,迴歸整體。這篇準備給大家 hadoop 新入門的朋友分享一些 hadoop 的基礎知識—— hadoop 家族產品。透過對 hadoop 家族產品的認識,進一步幫助大家學習好 hadoop !同時,也歡迎大家提出寶貴意見!

大資料hadoop入門之hadoop家族產品詳解

一、 Hadoop定義

Hadoop是一個大家族,是一個開源的生態系統,是一個分散式執行系統,是基於 Java 程式語言的架構。不過它最高明的技術還是 HDFS和 MapReduce ,使得它可以分散式處理海量資料。

 

二、 Hadoop產品

 

 

HDFS(分散式檔案系統):

它與現存的檔案系統不同的特性有很多,比如高度容錯(即使中途出錯,也能繼續執行),支援多媒體資料和流媒體資料訪問,高效率訪問大型資料集合,資料保持嚴謹一致,部署成本降低,部署效率提高等,如圖是 HDFS 的基礎架構。

 

 

MapReduce/ S park/ S torm (平行計算架構):

1 、資料處理方式來說分離線計算和線上計算:

角色

描述

MapReduce

MapReduce 常用於離線的複雜的大資料計算

Storm

Storm 用於線上的實時的大資料計算,S torm 的實時主要是一條一條資料處理;

Spark

可以用於離線的也可用於線上的實時的大資料計算,S park 的實時主要是處理一個個時間區域的資料,所以說S park 比較靈活。

 

2 、資料儲存位置來說分磁碟計算和記憶體計算:

角色

描述

MapReduce

資料存在磁碟中

S park 和S trom

資料存在記憶體中

 

Pig/Hive Hadoop程式設計):

角色

描述

Pig

是一種高階程式語言,在處理半結構化資料上擁有非常高的效能,可以幫助我們縮短開發週期。

Hive

是資料分析查詢工具,尤其在使用類SQL查詢分析時顯示出極高的效能。可以在分分鐘完成 ETL 要一晚上才能完成的事情,這就是優勢,佔了先機!

 

HBase/Sqoop/Flume (資料匯入與匯出) :

角色

描述

HBase

是執行在 HDFS 架構上的列儲存資料庫,並且已經與 Pig/Hive 很好地整合。透過 Java API 可以近無縫地使用 HBase

Sqoop

設計的目的是方便從傳統資料庫匯入資料到Hadoop資料集合 (HDFS/Hive)

Flume

設計的目的是便捷地從日誌檔案系統直接把資料匯入到Hadoop資料集合 (HDFS) 中。

以上這些資料轉移工具都極大地方便了使用的人,提高了工作效率,把精力專注在業務分析上。

 

ZooKeeper/Oozie (系統管理架構):

角色

描述

ZooKeeper

是一個系統管理協調架構,用於管理分散式架構的基本配置。它提供了很多介面,使得配置管理任務簡單化。

Oozie

Oozie 服務是用於管理工作流。用於排程不同工作流,使得每個工作都有始有終。這些架構幫助我們輕量化地管理大資料分散式計算架構。

 

Ambari/Whirr (系統部署管理):

角色

描述

Ambari

幫助相關人員快捷地部署搭建整個大資料分析架構,並且實時監控系統的執行狀況。

Whirr

Whirr 的主要作用是幫助快速地進行雲端計算開發。  

 

Mahout (機器學習):

Mahout 旨在幫助我們快速地完成高智商的系統。其中已經實現了部分機器學習的邏輯。這個架構可以讓我們快速地整合更多機器學習的智慧。

 


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/31524777/viewspace-2286512/,如需轉載,請註明出處,否則將追究法律責任。

相關文章