大數據學習路線!

大數據如此火熱的現在,想必許多小夥伴都想要加入這個行業。也是AI菌今天就要拿出收藏已久的大數據學習計劃。幫助你不走彎路,邁向大數據之路。

1

大數據應用離不開基礎軟體的支撐,且大部分大數據組件部署在 Linux 操作系統上的用戶空間,也有很多組件也借鑒了Linux 操作系統的一些設計精髓,所以 Linux 既是大數據的強力支撐,也是很多性能問題的支撐者。

同時資料庫的相關知識也是必要的基礎,熟悉 MySQL 資料庫的安裝與部署,還有備份和恢復等都是重點。

所以在第一部分的學習中我們需要達到以下目標:

1

通過對 Linux 操作系統體系結構、 服務管理、包管理、NTP 協議時間 伺服器、關係型資料庫理論和 MySQL 資料庫等相關知識的學習,

掌握大部分安裝部署 Hadoop 集群操作系統層面的技能,為後續搭建 Hdoop 集群、對 比 RDBMS 與 NoSQL 資料庫打基 礎。

2

通過對 Linux 文件系統、內核參數、內存結構、以及 Java 虛 擬機等相關知識的學習,為後續學習分散式文件系統, Hadoop 集群優化掃清操作系統層 面知識的障礙

2

Hadoop 由許多元素構成。其最底部是HDFS,它存儲 Hadoop 集群中所有存儲節點上的文件。HDFS(對於本文)的上一層是MapReduce 引擎,通過對Hadoop分散式計算平台最核心的分散式文件系統HDFS、MapReduce處理過程,以及數據倉庫工具Hive和分散式資料庫Hbase的介紹,基本涵蓋了Hadoop分散式平台的所有技術核心。

還有Flume是Cloudera提供的一個高可用的,高可靠的,分散式的海量日誌採集、聚合和傳輸的系統,Flume支持在日誌系統中定製各類數據發送方,用於收集數據。在大數據中也起到一定作用。

本模塊通過學習HDFS,YARN(MapReduce)Spark 等核 心組件,了解Hadoop 的基本運行框架。

所以在第二部分的學習中我們需要達到以下目標:

1

搭建單節點模擬分散式集群,熟悉 HDFS 命令;

掌握 HDFS 體系結 構,讀寫流程,能 dump HDFS 元 數據文件;

理解 Flume 組件架構, 並能用 Flume 向 HDFS 平台導入文 本日誌;

2

搭建多節點、可擴展集群;

部署 HDFS HA 架構;

理解並實現 Hadoop YARN 的多 租戶架構

掌握 Zookeeper 組件原理;

掌握 Hadoop 集群優化路徑;

3

傳統數據倉庫在面對更大規模數據時顯得力不從心,在寄希望於大數據平台時,MapReduce 編程門檻讓很多數據分析師望而卻步,而Hive是基於Hadoop的一個數據倉庫工具,可以將結構化的數據文件映射為一張資料庫表,並提供簡單的sql查詢功能,可以將sql語句轉換為MapReduce任務進行運行。 其優點是學習成本低,可以通過類SQL語句快速實現簡單的MapReduce統計,不必開發專門的MapReduce應用,十分適合數據倉庫的統計分析。

本模塊通過學習 Hive、Impala 等大數據 SQL 分析組件,讓用戶將隱匿在泥沙之下的數據價值挖掘出來。

所以在第三部分的學習中我們需要達到以下目標:

1

安裝部署 Hive;

理解 Hive 架構及執行原理 ;

Hive 的優化(分區、桶) ;

Hive SQL 語句優化;

Hive 常見故障診斷;

4

在上個模塊中,OLAP 類型的需求得到了很好的解決方案,即針對數據查詢分析的應用。但是這些組件對於數據的隨機刪改並不擅長。針對此種 OLTP 類型應用,大數據生態系統中有另外一類 組件處理這樣的問題,那就是 NoSQL 家族。這部分將介紹 NoSQL 的數據模型和分類,著重講述最具代表的 HBase。

ZooKeeper是一個分散式的,開放源碼的分散式應用程序協調服務,,是Hadoop和Hbase的重要組件。它是一個為分散式應用提供一致性服務的軟體,提供的功能包括:配置維護、名字服務、分散式同步、組服務等。在本部分也會涉及。

所以在第四部分的學習中我們需要達到以下目標:

1

理解HBase 體系結構水平擴展的 優勢; 部署 HBase ;

設計 HBase 表;

2

理解 zookeeper 在 HBase集群中的作用;

掌握 HBase Schema 設計注意 事項;

理解 HBase 協處理器;

掌握 HBase 備份恢復步驟;

5

SQL 語句屬於聲明式編程語言,這種 Relational 方式擅長處理結構化數據。大數據的數據來源種類繁多,數據類型多種多樣,SQL 並不能處理所有問題。所以需要用 procedural 方式,即編程 方式處理複雜多變的數據類型和應用。本章介紹 MapReduce、Spark編程模型,著重講述利用 Python 在 Spark 平台做數據轉換和分析。

所以在第五部分的學習中我們需要達到以下目標:

1

能指出 Spark 組件的產生背景;

掌握 Spark 與 RDD 的關係;

了解 RDD 使用場景,熟悉 RDD 操作; 使用 RDD 方法做日誌分析;

理解 Spark-on-YARN 運行原 理;

掌握數據持久化方法。

2

理解 Spark 共享變數及使用場 景;

在程序中使用廣播變數和累加 器;

理解 Spark SQL 的產生的歷史背 景;

創建 DataFrame 和 DataSet;

使用 SparkSQL 關聯結構數據與 非機構化數據 ;

能夠利用 Spark 實現客戶群的分 類;

6

前面5部分學習完畢之後,對於大數據平台的大部分問題,相比大家都會有思路去解決了。系統穩定運行之後,就要考慮運行的好不好,快不快。本模塊針對 HDFS 數據、HBase 數據、實時抓取數 據加索引,以及 Spark Streaming 流式處理技術做重點介紹,為大數據處理提速

所以在第六部分的學習中我們需要達到以下目標:

1

. 理解 Solr Cloud 組件架構及原 理;

掌握 MapReduce 對靜態數據索 引過程;

掌握 Flume 對實時數據索引過 程;

理解 HBase 索引實現原理-協處 理器; 掌握 HBase Lily 對 HBase 數據索引過 程;

介紹 Cloudera Search

2

了解流式計算的基本概念及分類 方式;

掌握 Flume、Kafka 組件的架構 及原理;

用 Flume、Kafka、Spark Streaming 搭建 簡單的流式處理應 用;

學會使用狀態保持及滑動窗口等 流式計算 特性;

7

事物的原理和規律隱藏在紛繁雜亂的數據中,如何從數據中將他們挖掘出來服務生產生活,大數據的核心價值體現在此。 本模塊我們一起學習數據科學的數學基礎、機器學習的演算法。因為Spark 正在取代 MapReduce 成為大數據平台數據處理的全新引擎,它也使得在大數據環境下高效的運用數據科學成為可能, 所以我們著重介紹基於 Spark 的機器學習的實現, 把握大數據的發展趨勢,步入數據科學的殿堂。

所以在第七部分的學習中我們需要達到以下目標:

1

掌握數據科學的數據基礎,掌握統 計學基礎知識。

2

. 掌握機器學習理論; 掌握 推薦系統和決策系統原理

3

掌握 Spark Mllib 組件架構; 利用 Spark Mllib 實現推薦器; . 學會引用常用機器學習演算法。

選修

1.大數據Hadoop生態系統的組建大部分是java編寫,但95%的企業是直接使用不會修改組建,所以培訓課程包含冗長的java是不科學的。不過對於Java能做到一點了解還是不錯的。

2.web開發html及javascript,只是在大數據可視化階段才會用到,並不是大數據課程的核心內容,所以有需要的同學再去學習吧。

3.R 語言具有豐富的統計方法,大多數人使用R語言是因為其具有強大的統計功能, R 語言內部包含了許多經典統計技術的環境。通過對 R 語言基礎知識的學習,了解 R 數據分析的通用流程 。同時學習R 語言在 Spark 計算框架的基本使用方法,可以為實現更強大的數據分析打基礎。

4.大數據時代需要數據開放,同時又需要保障敏感數據的安全。企業如何保障數據中心的安全性成為即將面臨的重大課題,所以 Hadoop 集群的安全機制可以學習一下。

想要獲得後續學習資料的同學請關注此公眾號哦。同時可以在學習路上對照一下下面這張大數據知識體系哦。相信你完成這份學習計劃後,任何大數據方面的工作都可以勝任。

(後台回復大數據獲得高清圖與PDF文件)

aHR0cDovL3dlaXhpbi5xcS5jb20vci9PRGtpT2xERXVBM0hyUlJaOTJ3cQ== (二維碼自動識別)

aHR0cDovL3dlaXhpbi5xcS5jb20vci9PRGtpT2xERXVBM0hyUlJaOTJ3cQ== (二維碼自動識別)

關注公眾號「大數據菜鳥之路」或DatasRoad,獲取更多學習資源!


推薦閱讀:

TAG:大數據 | Hadoop | 大數據分析 |