沒有基礎可以學習大數據嗎?零基礎怎麼學習大數據?讓專家來教你

前言

從2018年大數據突然就火起來了,也興起了學習大數據的熱潮,但是大家都不知道如何學習大數據,不知道需要什麼基礎可以學大數據,今天小編就來給大家分享一下,自己整理的大數據學習路線,希望大家能夠喜歡。

沒有基礎可以學習大數據嗎?零基礎怎麼學習大數據?讓專家來教你

大數據學習路線

Linux理論

1.Linux入門

Linux簡介、VMWare workstation安裝整理各大Linux發行版本的區別Linux系統安裝+基本配置 MySQL、Python、Java等常用軟件環境安裝

2.Linux常用命令通講

常用基本命令介紹與使用、擴展講解常用命令的選項含義

基於已掌握的命令實現簡易版的單機WordCount

Linux高級命令通講 VI VIM AWK等

Linux常用及高級命令快捷鍵,高效使用Linux系統

3.Linux用戶管理

Linux用戶和組賬戶管理介紹、Linux 用戶的管理(新增、刪除、修改賬號等操作)

創建系統用戶、普通用戶並授權相應的權限,為後期搭建大數據集群做準備

Linux組管理實踐、批量用戶管理操作

4.Linux磁盤管理

Linux文件系統介紹、Linux文件系統常用命令

搭建NFS服務器,並且針對不同的文件夾設置對應的權限,以實現數據的安全與共享功能

'Linux lvm邏輯卷、NFSs詳解

Linux系統文件權限管理介紹、系統文件權限的操作

5.Linux RPM安裝包

Linux的RPM包的介紹

基於RPM包安裝對應的MySQL、Python、Java等軟件環境

Linux RPM包安裝、卸載

6.Linux yum源

yum介紹及簡單使用、各大互聯網公司提供的yum源介紹

使用Nginx服務器搭建本地私有yum源

配置開源的yum源、搭建私有yum源

7.Linux網絡

Linux網絡的介紹、網絡類型的區分與詳解

配置已有的Linux系統的網絡,能夠ping通外部服務器

Linux網絡的配置與維護

8.Linux Shell腳本

Shell腳本的介紹及運行原理

使用shell腳本編寫簡易版的MapReduce

Shell腳本的基本語法

Shell腳本運行的多種方式

9.負載均衡LVS

Lvs負載均衡介紹、Lvs負載均衡的負載算法

搭建一套屬於自己的LVS負載均衡器

Lvs負載均衡的NAT模式、直接路由模式(DR)、隧道模式(TUN)、F5負載均衡器介紹

第七層負載均衡-Nginx、第七層負載均衡-Apache Haproxy的介紹及Haproxy的使用

Lvs+nginx+tomcat+redis|memcache構建二層負載均衡

編程語言

1.Scala環境安裝及基本語法

Scala語法介紹、數據類型

基於已經掌握的語法實現冒泡、快速排序算法

Scala的條件表達式、輸入輸出、循環等控制結構

數組、變長數組、多維數組、set、list、元組等集合操作

2.Scala類與面向對象

Scala的類,包括輔助構造器、主構造器

對冒泡、快速排序算法代碼重構

Scala的對象、單例對象、伴生對象、擴展類、apply方法

Scala的包、引入、繼承

Scala的特質trait的定義與使用

Scala的操作符、Scala的高階函數、匿名函數、嵌套函數

3.Scala併發編程(Actor)

Actor簡介及應用場景、ActorSystem的層次結構

實現多actor之間消息傳輸案例

Actor和ActorSystem介紹及基本使用

4.Python環境安裝及基本語法

Python介紹及安裝、Anaconda運行環境安裝及使用

使用Python語言實現歸併排序算法

Python數據類型、集合類型、集合高級特性、函數

5.Python類與面向對象

類和實例、訪問限制、繼承和多態、多重繼承、枚舉類

重構歸併排序算法

http://6.IO編程

文件讀寫、StringIO和BytesIO、操作文件和目錄、序列化

寫程序遞歸查詢目錄下包含指定字符串的文件,並將文件的路徑保存到指定文件中

分佈式存儲

1.Hadoop技術棧概念及歷史

Hadoop生態環境介紹、Hadoop在雲計算中的位置和關係

以介紹為主,無實戰案例 Hadoop應用場景、成功案例介紹、Hadoop發展歷史

Hadoop生態圈的架構及重要組件介紹

2.HDFS分佈式文件系統

HDFS介紹及分佈式存儲的核心思想、偽分佈的詳細安裝步驟

模仿百度雲盤,實現一個屬於自己的雲盤系統,基本功能包含:文件上傳、下載、移動、複製、粘貼、文件夾的創建以及修改、在線修改文本內容等功能

採用HDFS shell的方式管理HDFS、使用WEBUI查看管理HDFS分佈式存儲集群

HDFS的架構模型、存儲模型、副本放置策略

HDFS Federation機制、HDFS讀寫流程

HA-HDFS介紹、HA集群搭建、HDFS-開發環境搭建及開發API講解

HDFS中心緩存管理介紹及緩存適用場景、HDFS CacheAdmin命令使用

HDFS快照概念及相關命令、HDFS內部的快照管理機制、HDFS-BlockToken認證、HDFS-Sasl認證

HDFS-DiskChecker壞盤檢測服務、HDFS-DirectoryScanner目錄掃描服務、HDFS-VolumeScanner磁盤目錄掃描服務

HDFS塊檢查命令fsck、HDFS如何檢測並刪除多餘副本塊、HDFS的流量處理、讀寫限流方案

HDFS數據遷移解決方案


分佈式數據庫

1.HBase集群搭建

關係型數據庫的極限及HBase數據的必要性

熟練搭建HBase集群、並且熟練操作HBase集群

搭建HBase的偽分佈式、搭建HBase的完全分佈式

HBase WebUI控制檯、HBase操作命令及 shell的使用、HBase集群的管理

2.HBase表設計及優化

HBase樹形表設計、一對多表設計、多對多表設計

HBase微博數據的存儲方案,rowKey設計方案及存儲優化

針對不同業務場景,rowKey設計方案、表級優化、讀寫數據優化

3.Hive介紹及搭建模式

數據倉庫基礎知識、Hive定義及架構的介紹

熟練搭建Hive客戶端並且熟練操作Hive數據倉庫

基於derby的本地搭建模式、基於MySQL的本地搭建模式、基於MySQL的遠程搭建模式

HQL DDL、DML與CLI客戶端演示

4.Hive數據類型、表類型、索引

內部表、外部表、臨時表、分區表、分桶表

微博數據導入到Hive中的內部表、外部表、臨時表、分區表、分桶表中

Hive創建、重建、顯示、刪除索引

5.Hive函數

Hive內置函數、自定義UDF、UDAF、UDTF函數 使用HQL語句實現WordCount


分佈式集群協調工具

1.Zookeeper

集群角色、會話、數據節點、版本、watcher、ACL 權限控制

使用ZooKeeper1.開發分佈式鎖2.服務器動態感知上下線3.服務器主備切換4.數據的發佈訂閱

集群環境、單機環境、偽集群、Zookeeper內部選舉算法詳解

ZooKeeper 服務的啟動和停止及常見異常客戶端對於ZooKeeper 節點的創建、查詢、刪除和修改

JAVA API 完成 創建會話、創建節點、刪除節點、讀取數據、節點檢測等操作

ZkClient 和 Curator 的使用方法 、zkClient 的會話創建、節點創建、節點刪除節點數據讀取等、zkClient 的節點修改、權限管理等基本使用方法

Curator 的會話創建、節點創建、節點刪除和節點數據讀取等基本使用方法Curator 的節點修改、權限管理等基本使用方法

Zookeeper RMI高可用分佈式集群開發、實現SOA高可用架構框架

Mycat的簡介和安裝、Mycat架構模型、Mycat概念詳解、Mycat主鍵自增

2.yarn

YARN的起源、架構、任務提交流程

ResourceManager、NodeManager、ApplicationMaster、Container重要組件詳解

3.Oozie

Oozie安裝配置、HPDL語言學習、HPDL流程定義

基於Oozie調度MapReduce程序

Oozie工作流配置、Oozie元數據庫定義、Oozie定時任務調度、Oozie API操作


分佈式緩存

Redis Cluster

Redis系統應用場景、安裝Redis集群、Redis shell使用介紹

1.Redis + Lua 實現秒殺與搶紅包實例2.Redis 實現分佈式鎖與消息隊列

Redis的數據類型、Java訪問Redis數據庫、Redis的事務

Redis的管道、Redis持久化(AOF+RDB)、Redis性能優化

Redis的主從複製、Redis的Sentinel哨兵高可用架構、Redis與Twemproxy整合

Redis與Codis整合、Redis cluster 海量數據高速緩存架構、RedisCluster去中心化系統架構

Jedis操作Redis、RedisCluster集群事務管理器

SpringDataRedis、Redis 企業級備份方案、Redis 緩存失效應對策略


分佈式系統中的數據一致性模型

消息中間件

Kafka

Kafka架構介紹、Kafka配置詳解、Kafka體系結構、存儲策略、分區、發佈與訂閱

使用java、scala操作kafka

Kafka的存儲策略、Kafka分區特點、Kafka的發佈與訂閱、

數據融合工具

1.Sqoop

Sqoop的安裝、將RDBMS表中的數據導入到Hive表、導入parquet、sanppy格式的數據

將MySQL中數據導入到HDFS中,並且以parquet格式來存儲

使用query自定義導入數據

2.Flume

Flume部署方式、source相關配置及測試、sink相關配置及測試、selector相關配置及測試

採集Apache服務器中的日誌數據到Kafka中

Sink Processors相關配置、Interceptors相關配置、Flume和Kafka的整合

分佈式批處理

1.MapReduce

分佈式計算出現的背景、MapReduce分佈式計算的架構

基於MapReduce框架實現pagerank網頁推薦算法

MapReduce shuffle的流程、shuffle中Partitioner、Sort、Group、Combiner原理

MapReduce shuffle的源碼剖析、Mapper計算原理以及源碼剖析、Reducer計算原理以及源碼剖析 Mapreduce案例-二次排序、倒排序索引、最優路徑、社交好友推薦算法

2.SparkCore

Spark與MapReduce的對比、運行模式之間的對比

1、基於Spark算子實現最短路徑優化算法(Dijkstra)

2、統計頁面的PV、UV、HotChannel、最活躍的用戶等指標

Spark中RDD的五大特性詳解、Spark數據本地化的原理

Standalone集群的架構介紹,集群運行原理、集群的搭建步驟、集群配置信息的詳解、通過WEBUI監控管理集群 Transformation類的算子特點及使用(map、flatMap、filter、groupByKey、reduceByKey、distinct、updateStateByKey、join、union等算子)

Action類的算子特點及使用(collect、foreach、countByKey、reduce、first、top、take、takeOrdered、saveAsTextFile、saveAsSequenceFile)

精解Spark的任務提交流程、任務運行流程 cache持久化、persist持久化以及持久化級別、持久化的注意事項

Client與Cluster兩種提交方式的區別、兩種提交方式分別適應場景

配置Standalone集群客戶端的必要性、如何配置Standalone集群的客戶端

spark-submit提交任務命令的選項詳解、Spark-shell的使用方式 RDD的依賴關係

寬依賴 窄依賴的區別、RDD寬窄依賴的作用、Stage的運行原理、Spark pipeline計算的底層揭秘 DAGScheduler、TaskScheduler(高層調度器)對象的作用

任務調度的重試機制、Spark任務調度重試機制的注意點、控制重試機制的配置信息,以及配置信息的配置方式

推測執行原理、判定拖後腿的task的標準、推測執行帶來的問題以及解決方案

任務調度源碼分析-Master資源調度源碼分析、Worker資源管理源碼分析、Driver任務調度源碼分析、Executor運行源碼分析、Task運行源碼分析、修改開源框架源碼的三種方式以及三種方式優劣對比

Spark常用的兩種Shuffle-HashShuffle的原理、SortShuffle的原理、HashShuffle合併機制的原理、SortShuffle

bypass機制的原理、shuffle過程磁盤小文件的尋址流程

MapOutputTracker BlockManager原理、Shuffle的優化

搭建Standalond的HA集群、集群WEBUI詳解、如何通過WEBUI查找任務的性能問題

3.SparkSQL

什麼是SparkSQL,Shark與SparkSQL的區別、DataSet與RDD的區別

SparkSQL運行的底層原理、處理json、parquet格式的文件、RDD轉成DataSet的兩種方式-動態創建schema、對象反射

自定義UDF、自定義UDAF、開窗函數的使用方式

解決Spark數據傾斜方案-數據預處理、提高計算的並行度、雙重聚合、隨機前綴拆分數據

沒有基礎可以學習大數據嗎?零基礎怎麼學習大數據?讓專家來教你

分佈式流式處理

1.Storm

流式處理與批處理的區別、Storm的基本概念、應用場景

分別使用Storm、SparkStreaming、Flink實時統計當前網站的PV、UV、轉換率、跳轉率等網站流量統計指標

搭建Storm集群、Storm配置文件詳解、集群搭建常見問題以及注意事項

Storm常用組件Topology、Spout、Bolt、Storm

API編程流程、Storm分組策略、Storm事物處理 Storm消息可靠性、Storm容錯原理、Storm Trident概念、Trident state原理、Trident開發實例

Storm DRPC(分佈式遠程調用)介紹、實戰講解、Storm on Yarn實戰、Storm+Kafka的必要性 Kafka和Storm的整合、

2.SparkStreaming

SparkStremaing介紹以及與Storm的區別

SparkStremaing Application處理socket、HDFS、Flume等消息源

SparkStreaming中Transformation類算子講解(updateStateByKey、reduceByKeyAndWindow) SparkStreaming實現HA Driver

SparkStreaming+kakfa Receiver整合方式的原理、Direct整合方式的原理以及代碼實戰

SparkStreaming+kafka零數據丟失的方案、提高吞吐量的優化方案

3.Flink

Flink的基本原理及場景分析、Flink、Storm、SparkStreaming的區別

Flink窗口操作、批處理、本地測試模式安裝、Standalone模式集群的搭建

Flink on yarn提交任務、Flink on Standalone集群HA配置、DataStream中partition的使用技巧 DataStream sink、source精講、廣播變量、Counter、WaterMark Flink生產環境配置介紹、序列化及DataType


數據分析平臺

Hue

Hue vs zeppelin、Hue環境需求、Hue編譯安裝

熟練搭建Hue平臺,基於Hue平臺操作HDFS、Hive、Spark等集群

Hue基於MySQL的metadata管理、Hue關聯HDFS、HBase、MapReduce、Hive+測試

Hue關聯Spark生態圈組件+測試、Hue關聯Oozie+測試、Hue配置信息介紹


集群管理平臺

CDH

國內外大數據平臺介紹、Cloudera產品介紹、什麼是CDH、

熟練搭建CDH集群管理平臺,查看集群的各項指標

集群基礎設施配置、什麼是cloudera manager、cloudera manager框架原理、部署CDH、管理主機、管理集群服務、管理實例、監控資源

什麼是cloudera manager service、cloudera manager service圖表使用和創建、dashboard介紹

沒有基礎可以學習大數據嗎?零基礎怎麼學習大數據?讓專家來教你

機器學習算法+人工智能

機器學習

機器學習的應用場景、機器學習的原理及思想、機器學習和人類思考的類比

1、Spark MLlib-微博精準營銷案例

2、使用線性迴歸算法預測保險保費

3、基於多模型融合的方式預測道路擁堵情況

線性迴歸算法的介紹、應用場景、目標函數推導、使用優化算法(梯度下降法)來優化目標函數

模型的欠擬合與過擬合的區別,防止過擬合問題的方案

簡單線性迴歸算法與多元線性迴歸算法的區別、使用多元線性迴歸算法來預測保險的費用

Spark MLlib的LabelPoint Vector等類型的講解、使用Spark MLlib來訓練線性迴歸算法模型

KMeans聚類算法的介紹,以及算法原理、KMeans算法的缺陷以及優化方式

使用Python numpy來實現KMeans算法、使用Python scikit-learn機器學習庫來做KMeans聚類 密度聚類DBScan算法原理及使用

譜聚類算法原理及使用

樸素貝葉斯算法、拉普拉斯估計 GBDT迭代決策樹算法原理、優化

Xgboost安裝、原理、使用方式

支持向量機SVM算法原理及使用

PCA主成分分析算法、LDA降維優化、ALS矩陣分解算法

邏輯迴歸分類算法原理、公式推導、目標函數的推導、 目標函數的求導,以及最優值的求解、使用優化算法(梯度下降法)來優化目標函數

邏輯迴歸算法優化-手動設置分類閾值來規避一些不能接受的風險、設置截距來增加分類的可能性、升維的方式解決線性不可分的問題、使用L1、L2正則化來提高模型的魯棒性、歸一化訓練集數據來提高模型的訓練效率、調整訓練集數據的正負值來提高模型的訓練效率、選擇不同的優化算法來優化邏輯迴歸算法

ROC AUC測試模型的準確率 KNN算法原理、Python numpy實現KNN算法、KNN算法來實現數字識別 決策樹算法原理、Python numpy實現決策樹算法

決策樹算法的缺點-隨機森林、Spark MLlib訓練決策樹、隨機森林算法模型

TensorFlow安裝、訓練線性迴歸算法模型、神經網絡模型、TensorBoard可視化 DNN深度神經網絡手寫圖片識別、卷積神經網絡深入、AlexNet模型實現

總結

怎麼樣?看完之後是不是對學習大數據有一個明確的方向了呢?

既然學習路線都有了,是不是缺少對應的學習資料來學習呢?

不要著急,小編已經整理好了,就等著大家來獲取呢!

總共65.69G,希望大家能夠喜歡!

沒有基礎可以學習大數據嗎?零基礎怎麼學習大數據?讓專家來教你

沒有基礎可以學習大數據嗎?零基礎怎麼學習大數據?讓專家來教你

喜歡的小夥伴可以轉發+評論,關注一下小編,私信小編“技術”來得到獲取方式。


沒有基礎可以學習大數據嗎?零基礎怎麼學習大數據?讓專家來教你

學以致用,受益終生。


分享到:


相關文章: