一份詳細的大數據學習路線圖
大數據指不用隨機分析法這樣捷徑,而採用所有數據進行分析處理的方法。互聯網時代每個企業每天都要產生龐大的數據,對數據進行儲存,對有效的數據進行挖掘分析並應用需要依賴於大數據開發,千鋒大數據開發課程採用真實商業數據源並融合雲計算+機器學習,讓學員有實力入職一線互聯網企業。
階段一、Linux&&Hadoop生態體系
1、Linux大綱
1) Linux的介紹,Linux的安裝:VMware Workstation虛擬軟體安裝過程、CentOS虛擬機安裝過程
2) 了解機架伺服器,採用真實機架伺服器部署linux
3) Linux的常用命令:常用命令的介紹、常用命令的使用和練習
4) Linux系統進程管理基本原理及相關管理工具如ps、pkill、top、htop等的使用;
5) Linux啟動流程,運行級別詳解,chkconfig詳解
6) VI、VIM編輯器:VI、VIM編輯器的介紹、VI、VIM扥使用和常用快捷鍵
7) Linux用戶和組賬戶管理:用戶的管理、組管理
8) Linux磁碟管理,lvm邏輯卷,nfs詳解
9) Linux系統文件許可權管理:文件許可權介紹、文件許可權的操作
10) Linux的RPM軟體包管理:RPM包的介紹、RPM安裝、卸載等操作
11) yum命令,yum源搭建
12) Linux網路:Linux網路的介紹、Linux網路的配置和維護
13) Shell編程:Shell的介紹、Shell腳本的編寫
14) Linux上常見軟體的安裝:安裝JDK、安裝Tomcat、安裝mysql,web項目部署
2、大型網站高並發處理
1) 第四層負載均衡
a) Lvs負載均衡
i. 負載演算法,NAT模式,直接路由模式(DR),隧道模式(TUN)
b) F5負載均衡器介紹
2) 第七層負載均衡
a) Nginx
b) Apache
3) Tomcat、jvm優化提高並發量
4) 緩存優化
a) Java緩存框架
i. Oscache,ehcacheb) 緩存資料庫
i. Redis,Memcached
5) Lvs+nginx+tomcat+redis|memcache構建二層負載均衡千萬並發處理
6) Haproxy
7) Fastdfs小文件獨立存儲管理
8) Redis緩存系統
a) Redis基本使用
b) Redis sentinel高可用
c) Redis好友推薦演算法
3、Lucene課程
1) Lucene介紹
2) Lucene 倒排索引原理
3) 建索引 IndexWriter
4) 搜索 IndexSearcher
5) Query
6) Sort和 過濾 (filter)
7) 索引優化和高亮
4、Solr課程
1) 什麼是solr
2) 為什麼工程中要使用solr
3) Solr的原理
4) 如何在tomcat中運行solr
5) 如何利用solr進行索引與搜索
6) solr的各種查詢
7) solr的Filter
8) solr的排序
9) solr的高亮
10) solr的某個域統計
11) solr的範圍統計
12) solrcloud集群搭建
5、Hadoop離線計算大綱
1) Hadoop生態環境介紹
2) Hadoop雲計算中的位置和關係
3) 國內外Hadoop應用案例介紹
4) Hadoop 概念、版本、歷史
5) Hadoop 核心組成介紹及hdfs、mapreduce 體系結構
6) Hadoop 的集群結構
7) Hadoop 偽分布的詳細安裝步驟
8) 通過命令行和瀏覽器觀察hadoop
9) HDFS底層工作原理
10) HDFS datanode,namenode詳解
11) Hdfs shell
12) Hdfs java api
13) Mapreduce四個階段介紹
14) Writable
15) InputSplit和OutputSplit
16) Maptask
17) Shuffle:Sort,Partitioner,Group,Combiner
18) Reducer
19) 二次排序
20) 倒排序索引
21) 最優路徑
22) 電信數據挖掘之-----移動軌跡預測分析(中國稜鏡計劃)
23) 社交好友推薦演算法
24) 互聯網精準廣告推送 演算法
25) 阿里巴巴天池大數據競賽 《天貓推薦演算法》案例
26) Mapreduce實戰pagerank演算法
27) Hadoop2.x集群結構體系介紹
28) Hadoop2.x集群搭建
29) NameNode的高可用性(HA)
30) HDFS Federation
31) ResourceManager 的高可用性(HA)
32) Hadoop集群常見問題和解決方法
33) Hadoop集群管理
6、分散式資料庫Hbase
1) HBase與RDBMS的對比
2) 數據模型
3) 系統架構
4) HBase上的MapReduce
5) 表的設計
6) 集群的搭建過程講解
7) 集群的監控
8) 集群的管理
9) HBase Shell以及演示
10) Hbase 樹形表設計
11) Hbase 一對多 和 多對多 表設計
12) Hbase 微博 案例
13) Hbase 訂單案例
14) Hbase表級優化
15) Hbase 寫數據優化
16) Hbase 讀數據優化
7、數據倉庫Hive
1) 數據倉庫基礎知識
2) Hive定義
3) Hive體系結構簡介
4) Hive集群
5) 客戶端簡介
6) HiveQL定義
7) HiveQL與SQL的比較
8) 數據類型
9) 外部表和分區表
10) ddl與CLI客戶端演示
11) dml與CLI客戶端演示
12) select與CLI客戶端演示
13) Operators 和 functions與CLI客戶端演示
14) Hive server2 與jdbc
15) 用戶自定義函數(UDF 和 UDAF)的開發與演示
16) Hive 優化
8、數據遷移工具Sqoop
1) 介紹 和 配置Sqoop
2) Sqoop shell使用
3) Sqoop-importa) DBMS-hdfsb) DBMS-hivec) DBMS-hbase
4) Sqoop-export
9、Flume分散式日誌框架
1) flume簡介-基礎知識
2) flume安裝與測試
3) flume部署方式
4) flume source相關配置及測試
5) flume sink相關配置及測試
6) flume selector 相關配置與案例分析
7) flume Sink Processors相關配置和案例分析
8) flume Interceptors相關配置和案例分析
9) flume AVRO Client開發
10) flume 和kafka 的整合
10、Zookeeper開發
1) Zookeeper java api開發
2) Zookeeper rmi高可用分散式集群開發
3) Zookeeper redis高可用監控實現
4) Netty 非同步io通信框架
5) Zookeeper實現netty分散式架構的高可用
11、某一線公司的真實項目
項目技術架構體系:
a) Web項目和雲計算項目的整合
b) Flume通過avro實時收集web項目中的日誌
c) 數據的ETL
d) Hive 批量 sql執行
e) Hive 自定義函數
f) Hive和hbase整合。
g) Hbase 數據支持 sql查詢分析
h) Mapreduce數據挖掘
i) Hbase dao處理
j) Sqoop 在項目中的使用。
k) Mapreduce 定時調用和監控
階段二、大數據計算框架體系
1、Storm基礎
Storm是什麼
Storm架構分析
Storm編程模型、Tuple源碼、並發度分析
Maven環境快速搭建
Storm WordCount案例及常用Api
Storm+Kafka+Redis業務指標計算
Storm集群安裝部署
Storm源碼下載編譯
2、Storm原理
Storm集群啟動及源碼分析
Storm任務提交及源碼分析
Storm數據發送流程分析
Strom通信機制分析淺談
Storm消息容錯機制及源碼分析
Storm多stream項目分析
Storm Trident和感測器數據
實時趨勢分析
Storm DRPC(分散式遠程調用)介紹
Storm DRPC實戰講解
編寫自己的流式任務執行框架
3、消息隊列kafka
消息隊列是什麼
kafka核心組件
kafka集群部署實戰及常用命令
kafka配置文件梳理
kafka JavaApi學習
kafka文件存儲機制分析
kafka的分布與訂閱
kafka使用zookeeper進行協調管理
4、Redis
nosql介紹
redis介紹
redis安裝
客戶端連接
redis的數據功能
redis持久化
redis應用案例
5、zookeper
Zookeeper簡介
Zookeeper集群部署
zookeeper核心工作機制
Zookeeper命令行操作
Zookeeper客戶端API
Zookeeper應用案例
Zookeeper原理補充
6、日誌告警系統項目實戰
需求分析
架構及功能設計
數據採集功能開發及常見問題
資料庫模型設計及開發
Storm程序設計及功能開發
集成測試及運行
優化升級及常見問題
7、猜你喜歡推薦系統實戰
推薦系統基礎知識
推薦系統開發流程分析
mahout協同過濾Api使用
Java推薦引擎開發實戰
推薦系統集成運行
階段三、雲計算體系
1、Docker 課程
基本介紹
vm docker 對比
docker基本架構介紹
unfs cgroup namespace
進程虛擬化 輕量級虛擬化
docker 安裝
docker 鏡像製作
docker 常用命令
docker 鏡像遷移
docker pipework(i.openvswitch)
docker weave
2、ReactJS框架
虛擬化介紹,虛擬化適用場景等等
Qemu Libvirt & KVM
安裝KVM, Qemu, Libvirt
QEMU-KVM: 安裝第一個能上網的虛擬機
Kvm虛擬機 nat,網橋基本原理
kvm虛擬機克隆
kvm虛擬機vnc配置
kvm虛擬機擴展磁碟空間
Kvm快照
Kvm 遷移
Java,python,c語言編程式控制制kvm
構建自己的虛擬雲平台
3、AngularJS框架
openstack介紹和模塊基本原理分析
openstack多節點安裝部署(a.採用centos6.x系統)
Keystone基本原理
glance
Cinder
Swift
Neutron
Openstack api 二次開發
階段四、機器學習&&深度學習
1、R語言&&機器學習
1) R語言介紹,基本函數,數據類型
2) 線性回歸
3) 樸素貝葉斯聚類
4) 決策樹分類
5) k均值聚類
a) 離群點檢測
6) 關聯規則探索
7) 神經網路
2、Mahout機器學習
1) 介紹為什麼使用它,它的前景
a) 簡單介紹Mahout
b) 簡單介紹機器學習
c) 實例演示Mahout單機推薦程序
2) 配置安裝(hadoop2.x版本的)編譯安裝步驟說明
a) 命令行中測試運行協同過濾概念
3) 推薦
a) 講解基於用戶的協同過濾
b) 講解基於物品的協同過濾
4) 分類
a) 分類概念
b) 分類的應用及Mahout分類優勢
c) 分類和聚類、推薦的區別
d) 分類工作原理
e) 分類中概念術語
f) 分類項目工作流
g) 如何定義預測變數
h) 線性分類器的介紹,及貝葉斯分類器
i) 決策樹分類器的介紹,及隨機森林分類器
j) 如何使用貝葉斯分類器和隨機森林分類器的代碼展示
5) 聚類
a) 聚類概念
b) 聚類步驟流程
c) 聚類中的距離測度
d) 講解K-means聚類
e) K-means聚類演算法展示
f) 聚類其他演算法
g) 介紹TF-IDF
h) 歸一化
i) 微博聚類案例
3、項目實戰
項目技術架構體系:
a) 分散式平台 Hadoop,MapReduce
b) 數據採集 Flume
c) 數據清洗 ETL
d) 資料庫 Hbase,Redis
e) 機器學習 Mahout
推薦閱讀:
※Hive0.13到Hive2.1跨版本升級全姿勢
※如何進行有效的大數據處理、分析?
※零基礎學大數據 你需要的書籍和視頻教程
※R語言學習計劃,我的驅動力,足夠支撐我的選擇么?