好程式設計師大資料分享零基礎學習Hadoop該如何下手

好程式設計師IT發表於2019-09-11

   零基礎學習Hadoop 該如何下手,很多同學是透過學習 hadoop 來學習大資料的 , 學習資料可能是以圖書為主要參考方向,《 hadoop 權威指南》的確是一本很好的入門大資料圖書,但大資料系統本身是分散式系統,所以我以為分散式系統的相關概念才是掌握大資料各類框架、知識的基礎。

  

  1  入門:

  hadoop 框架是集儲存 (hdfs) 、計算 (mr 計算模型 ) 、資源管理 (yarn) 等於一體的綜合框架,當然它是一個歷史的階段產物,刨除此因我們來看看大家所熟知的 wordcount 的具體做法 (mr) 是什麼場景下如何進行計算的?

  

  1-1  分散式系統

   首先wordcount 程式放到傳統單機模式下也可以處理,這裡大家一定會想到多執行緒、檔案切割等實現方式,簡單來說平行計算的想法由來已久,隨著硬體的不斷進步、效能不斷提升,多核計算也已發展多年了,與此同時這個世界產生的資料更是增長飛速,那麼原來單機下多工多執行緒的計算方式與其後的多核並行都遇到了一個處理速度與處理資料間嚴重不匹配的問題,如何提高計算能力是發展的必然,那麼叢集方式解決了計算資源水平擴充套件的能力並同時具有並行性,這是目前的核心思想,我們可以理解目前的叢集(一個黑盒子)類比於傳統單機方式,叢集中的節點間平行計算涉及到了主從架構、叢集管理、訊息通訊、容錯處理等等方面,然後這些都是分散式系統所要考慮和解決的問題,因為它本身就是分散式系統。

  

  1-2  分散式儲存

   剛才簡單提到了分散式系統,說到了計算方面,其實還有一個隱含的問題是要計算必須有資料,必然涉及到儲存,所以儲存才是根本,那麼如何使用分散式儲存系統(hdfs )就必須瞭解其的組成部分(如什麼是塊、檔案系統、分散式檔案系統)、使用方式(讀寫 HDFS ),但由於大部分同學都是相對熟悉關係型資料庫及它的使用方式 SQL ,這些都是應用層面的事情具體底層的各種情況並不瞭解,或者沒有參與資料庫軟體的開發、對於檔案類的學習工作經驗相對較少,對其中提到的檔案 IO 操作、序列化、壓縮、內建或自定義檔案讀寫格式、讀寫方式有種陌生,因為 hdfs 本質是檔案系統。

  

  1-3  分散式計算

  mr 計算模型也是之前接觸較少,沒有具體的實際經驗感受,比如 mr 具體能做什麼、什麼場景下使用等等,因為之前大家接觸的是 OLTP (聯機事務處理【 OLTP Online Transaction Processing

  

聯機事務處理,表示事務性非常高的系統,一般都是高可用的線上系統,以小的事務以及小的查詢為主,以傳統的關係型資料庫為主要應用,主要是基本的、日常的事務處理,主要為業務資料,例如銀行交易)操作,而大資料起初是用來進行資料探勘的它更多的是一個OLAP (聯機分析處理【 OLAP Online Analytical Processing 】:

 

聯機分析處理,有的時候也叫DSS 決策支援系統,就是我們說的資料倉儲,重點主要是面向分析,會產生大量的查詢,一般很少涉及增刪改。)操作, mr 計算模型的 map 操作和 reduce 操作是我們經常遇到的需求, map 操作負責資料清洗、轉換, reduce 操作負責資料聚合,同時 sql 裡的 select 子句和 group by 子句不也對應了這類實際需求嗎,只是方式方法不同而已。

 

 

進階

 

2-1  建議以分散式系統的角度來看待大資料中的各類框架,瞭解下分散式理論如 CAP 理論、主從架構方式等等

 

2-2  當然由於這些框架所處理的不是同一方向的問題,所以我們首先框架分類,參考如下


技術架構

 

```

資料採集: flume logstash

資料儲存: hdfs hbase alluxio es neo4j janusGraph redis mongodb tidb

資料計算: hive impala spark flink druid

資料通道: kafka pulsar

任務排程: azkaban airflow

多維資料模型: kylin

資料同步: sqoop datax canal

資料格式: parquet  orc  csv  json

協調服務: zookeeper

10  監控: zabbix prometheus

 

推薦

 

3.1  大資料的各類框架 官網永遠是第一手資源,一定要看

 

3.2  大量的公眾號、 stackoverflow github

 

3.3 google 查詢資源

 


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

相關文章