
H5+PHP全棧工程師課程
階段 | 技術內容 |
Linux大綱 | 這章是基礎課程,幫大家進入大數(shù)據(jù)領域打好Linux基礎,以便更好地學習Hadoop,hbase,NoSQL,Spark,Storm,docker,kvm,openstack等眾多課程。因為企業(yè)中無一例外的是使用Linux來搭建或部署項目。 |
1) Linux的介紹,Linux的安裝:VMware Workstation虛擬軟件安裝過程、CentOS虛擬機安裝過程 2) 了解機架服務器,采用真實機架服務器部署linux 3) Linux的常用命令:常用命令的介紹、常用命令的使用和練習 4) Linux系統(tǒng)進程管理基本原理及相關管理工具如ps、pkill、top、htop等的使用; 5) Linux啟動流程,運行級別詳解,chkconfig詳解 6) VI、VIM編輯器:VI、VIM編輯器的介紹、VI、VIM扥使用和常用快捷鍵 7) Linux用戶和組賬戶管理:用戶的管理、組管理 8) Linux磁盤管理,lvm邏輯卷,nfs詳解 9) Linux系統(tǒng)文件權限管理:文件權限介紹、文件權限的操作 10) Linux的RPM軟件包管理:RPM包的介紹、RPM安裝、卸載等操作 11) yum命令,yum源搭建 12) Linux網絡:Linux網絡的介紹、Linux網絡的配置和維護 13) Shell編程:Shell的介紹、Shell腳本的編寫 14) Linux上常見軟件的安裝:安裝JDK、安裝Tomcat、安裝mysql,web項目部署 |
|
大型網站 高并發(fā)處理 |
通過本章的學習大家將會了解大數(shù)據(jù)的源頭,數(shù)據(jù)從何而來,繼而更好的了解大數(shù)據(jù)。并且通過學習何果處理大型網站高并發(fā)問題反向更深入的學習了Linux,同時站在了更高的角度去觸探了架構。 |
1) 第四層負載均衡 a) Lvs負載均衡 i. 負載算法,NAT模式,直接路由模式(DR),隧道模式(TUN) b) F5負載均衡器介紹 2) 第七層負載均衡 a) Nginx b) Apache 3) Tomcat、jvm優(yōu)化提高并發(fā)量 4) 緩存優(yōu)化 a) Java緩存框架 i. Oscache,ehcache b) 緩存數(shù)據(jù)庫 i. Redis,Memcached 5) Lvs+nginx+tomcat+redis|memcache構建二層負載均衡千萬并發(fā)處理 6) Haproxy 7) Fastdfs小文件獨立存儲管理 8) Redis緩存系統(tǒng) a) Redis基本使用 b) Redis sentinel高可用 c) Redis好友推薦算法 |
|
Lucene課程 | 在大數(shù)據(jù)里面文本數(shù)據(jù)的搜索是很重要的一塊,特別是里面的分詞技術,是后面機器學習里面文本挖掘的基石,我們需要深入學習java領域里面的搜索核心技術lucene,同時也可以了解到百度 google這樣的搜索系統(tǒng)是怎么架構實現(xiàn)的。 |
1) Lucene介紹
2) Lucene 倒排索引原理
3) 建索引 IndexWriter
4) 搜索 IndexSearcher
5) Query
6) Sort和 過濾 (filter)
7) 索引優(yōu)化和高亮
|
|
Solr課程 | 接著前面lucene技術搜索,如果把lucene技術比如為發(fā)動機,那solr就是一兩成型的汽車了。學習完solr可以幫助你在企業(yè)里面快速的架構搜索系統(tǒng)。首先Solr是基于Lucene做的,Lucene是一套信息檢索工具包,但并不包含搜索引擎系統(tǒng),它包含了索引結構、讀寫索引工具、相關性工具、排序等功能,因此在使用Lucene時你仍需要關注搜索引擎系統(tǒng),例如數(shù)據(jù)獲取、解析、分詞等方面的東西。而Solr的目標是打造一款企業(yè)級的搜索引擎系統(tǒng),因此它更接近于我們認識到的搜索引擎系統(tǒng),它是一個搜索引擎服務,通過各種API可以讓你的應用使用搜索服務,而不需要將搜索邏輯耦合在應用中。而且Solr可以根據(jù)配置文件定義數(shù)據(jù)解析的方式,更像是一個搜索框架,它也支持主從、熱換庫等操作。還添加了飄紅、facet等搜索引擎常見功能的支持。 |
1) 什么是solr
2) 為什么工程中要使用solr
3) Solr的原理
4) 如何在tomcat中運行solr
5) 如何利用solr進行索引與搜索
6) solr的各種查詢
7) solr的Filter
8) solr的排序
9) solr的高亮
10) solr的某個域統(tǒng)計
11) solr的范圍統(tǒng)計
12) solrcloud集群搭建
|
|
Hadoop 離線計算大綱 |
一、初識hadoop 聽過大數(shù)據(jù),必聽過hadoop,此部分帶領大家了解hadoop的用途,在大數(shù)據(jù)中的用途,以及快速搭建一個hadoop的實驗環(huán)境,在本過程中不僅將用到前面的Linux知識,而且會對hadoop的架構有深入的理解,并為你以后架構大數(shù)據(jù)項目打下堅實基礎。
|
1) Hadoop生態(tài)環(huán)境介紹
2) Hadoop云計算中的位置和關系
3) 國內外Hadoop應用案例介紹
4) Hadoop 概念、版本、歷史
5) Hadoop 核心組成介紹及hdfs、mapreduce 體系結構
6) Hadoop 的集群結構
7) Hadoop 偽分布的詳細安裝步驟
8) 通過命令行和瀏覽器觀察hadoop
|
|
二、 HDFS體系結構和shell以及java操作 詳細剖析HDFS,從知曉原理到開發(fā)網盤的項目讓大家打好學習大數(shù)據(jù)的基礎,大數(shù)據(jù)之于分布式,分布式學習從學習分布式文件系統(tǒng)(HDFS)開始。 | |
1) HDFS底層工作原理
2) HDFS datanode,namenode詳解
3) Hdfs shell
4) Hdfs java api
|
|
三、 詳細講解Mapreduce Mapreduce可以說是任何一家大數(shù)據(jù)公司都會用到的計算框架,也是每個大數(shù)據(jù)工程師應該熟練掌握的,此處的學習除了老師詳細的講解理論外,會通過大量的案例讓大家徹底掌握。 | |
1) Mapreduce四個階段介紹
2) Writable
3) InputSplit和OutputSplit
4) Maptask
5) Shuffle:Sort,Partitioner,Group,Combiner
6) Reducer
|
|
四、 Mapreduce案例案例 | |
1) 二次排序
2) 倒排序索引
3) 最優(yōu)路徑
4) 電信數(shù)據(jù)挖掘之-----移動軌跡預測分析(中國棱鏡計劃)
5) 社交好友推薦算法
6) 互聯(lián)網精準廣告推送 算法
|
|
五、 Hadoop2.x集群搭建 前面帶領大家開發(fā)了大量的MapReduce程序,此部分將帶來大家讓開發(fā)的程序運行在分布式集群中,并且運行在健壯高可用的集群中。 | |
1) Hadoop2.x集群結構體系介紹
2) Hadoop2.x集群搭建
3) NameNode的高可用性(HA)
4) HDFS Federation
5) ResourceManager 的高可用性(HA)
6) Hadoop集群常見問題和解決方法
7) Hadoop集群管理
|
|
分布式數(shù)據(jù)庫 Hbase |
大數(shù)據(jù)中使用Hbase的案例多的舉不勝舉,也可凸顯大家學習的必要性。即使工作多年的大數(shù)據(jù)工程師Hbase的優(yōu)化也是需要好好學習的重點。 |
1) HBase定義
2) HBase與RDBMS的對比
3) 數(shù)據(jù)模型
4) 系統(tǒng)架構
5) HBase上的MapReduce
6) 表的設計
7) 集群的搭建過程講解
8) 集群的監(jiān)控
9) 集群的管理
10) HBase Shell以及演示
11) Hbase 樹形表設計
12) Hbase 一對多 和 多對多 表設計
13) Hbase 微博 案例
14) Hbase 訂單案例
15) Hbase表級優(yōu)化
16) Hbase 寫數(shù)據(jù)優(yōu)化
17) Hbase 讀數(shù)據(jù)優(yōu)化
|
|
數(shù)據(jù)倉庫Hive | Hive是使用sql進行計算的hadoop框架,工作中最常用到的部分,也是面試的重點,此部分大家將從方方面面來學習Hive的應用,任何細節(jié)都將給大家涉及到。 |
1) 數(shù)據(jù)倉庫基礎知識
2) Hive定義
3) Hive體系結構簡介
4) Hive集群
5) 客戶端簡介
6) HiveQL定義
7) HiveQL與SQL的比較
8) 數(shù)據(jù)類型
9) 外部表和分區(qū)表
10) ddl與CLI客戶端演示
11) dml與CLI客戶端演示
12) select與CLI客戶端演示
13) Operators 和 functions與CLI客戶端演示
14) Hive server2 與jdbc
15) 用戶自定義函數(shù)(UDF 和 UDAF)的開發(fā)與演示
16) Hive 優(yōu)化
|
|
數(shù)據(jù)遷移工具Sqoop | sqoop適用于關系型數(shù)據(jù)庫和HDFS分布式數(shù)據(jù)系統(tǒng)之間進行數(shù)據(jù)轉換,在企業(yè)中,是構建數(shù)據(jù)倉庫的一大工具。 |
1) 介紹 和 配置Sqoop 2) Sqoop shell使用 3) Sqoop-import a) DBMS-hdfs b) DBMS-hive c) DBMS-hbase 4) Sqoop-export |
|
Flume分布式 日志框架 |
Flume最早是Cloudera提供的日志收集系統(tǒng),目前是Apache下的一個孵化項目,F(xiàn)lume支持在日志系統(tǒng)中定制各類數(shù)據(jù)發(fā)送方,用于收集數(shù)據(jù)。大家學習完此節(jié)后不但可以掌握Flume的使用,而且可以進行對于Flume的開發(fā)。 |
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開發(fā)
10) flume 和kafka 的整合
|
|
Zookeeper 開發(fā) |
Zookeeper在分布式集群(Hadoop生態(tài)圈)中的地位越來越突出,對分布式應用的開發(fā)也提供了極大便利,這也是這里我們帶領大家深入學習 Zookeeper的原因。本課程主要內容包括Zookeeper深入、客戶端開發(fā)(Java編程,案例開發(fā))、日常運維、Web界面監(jiān)控。大家這里學好Zookeeper,對后面學習其他技術至關重要。 |
1) Zookeeper java api開發(fā)
2) Zookeeper rmi高可用分布式集群開發(fā)
3) Zookeeper redis高可用監(jiān)控實現(xiàn)
4) Netty 異步io通信框架
5) Zookeeper實現(xiàn)netty分布式架構的高可用
|
|
項目實戰(zhàn) | 某大型電商日志分析和訂單管理 在實戰(zhàn)中學習,技術點非常多,怎么樣實際運用這些點是我們在自學過程中體驗不到的。電商日志分析包括:pv、uv,跳出率,二跳率、廣告轉化率、搜索引擎優(yōu)化等,訂單模塊有:產品推薦,商家排名,歷史訂單查詢,訂單報表統(tǒng)計等。 |
項目技術架構體系:
a) Web項目和云計算項目的整合
b) Flume通過avro實時收集web項目中的日志
c) 數(shù)據(jù)的ETL
d) Hive 批量 sql執(zhí)行
e) Hive 自定義函數(shù)
f) Hive和hbase整合。
g) Hbase 數(shù)據(jù)支持 sql查詢分析
h) Mapreduce數(shù)據(jù)挖掘
i) Hbase dao處理
j) Sqoop 在項目中的使用。
k) Mapreduce 定時調用和監(jiān)控
|