大數據~數據挖掘,越來越火,90%的企業都在運用或者都想要利用大數據爲其帶來更便利的服務,從而大數據高端軟件類人才可謂供不應求。
如何學好大數據?
第一階段:大數據新手入門系統教程Java+MySQL+關係型數據庫+阿里巴巴《碼出高效》編碼規約
知識點
一.Java基礎入門:Java編程入門:Java編程初體驗,Java運行機制;
Java語法基礎:Java程序的組織形式與命名規則,變量類型和定義,表達式和運算符;
程序的流程結構:分支結構,循環結構;函授:函數的定義,函數調用,函數遞歸定義和調用;
數組:數組基本常識,數組的操作,二維數組的基本定義和使用;
Java類和對象:類和對象的概念,類的定義和對象的創建;面向對象的特徵:封裝的概念和實現,繼承,多態;
三個修飾符:final修飾符及作用,static修飾符,abstract修飾符;接口:接口的定義,接口的實現;
設計模式與面向對象設計原則:面向對象的設計原則,設計模式及分類,常見的設計模式實現;
Object類和包裝類:Object類,包裝類及其使用;字符串的處理:字符串類String,字符串拼接;
Java中常用的工具類:日期類,Math類的使用,Random類的使用,Java MD5和加解密;
java的內部類:成員內部類,靜態內部類,局部內部類的定義和使用,匿名內部類;
集合:Collection接口,List接口,Set接口,Map接口,其他集合接口和類;java泛型:泛型的介紹和產生的原因;
java異常:異常的概念和異常類的層次結構,異常處理的分類,異常處理方式,自定義異常;
java文件與I/O流(上):File類,字節流,輸入輸出字符流;(下):RandomAccessFile類,Java對象讀寫;
java多線程上:線程和線程類,線程的創建,線程的狀態和調度,線程的狀態變化;
java多線程下:線程同步與共享,多線程協作,線程併發編程新API;
java的新特性:Java註釋:註解的概念和Annotation接口,元註解,自定義註解。
枚舉:enum關鍵字和Rnum類。
Java8新特性:使用JDK8編寫接口的默認方法,使用JDK8的Lambda表達式,使用JDK8的函數式接口;
MySQL入門安裝及使用,MySQL的數據類型;SQL入門:DDL,DML,DRL,DCL:關聯查詢,子查詢
二.關係型數據庫:什麼是數據庫,什麼是關係型數據庫,表的關聯,約束,MySQL的安裝及配置,
MySQL的數據類型,數據庫結構定義DDL,數據操縱語言DML,數據查詢語言DRL,數據訪問DCL;
MySQL關聯查詢:笛卡爾積,關聯條件,交叉連接,內連接,外連接,自鏈接
三,阿里巴巴《碼出高效》編碼規約:命名,定義,格式,OOP規約,集合處理,併發處理,控制語句,註釋規約;
阿里巴巴《碼出高效》數據庫規約:建表規約,索引規約,SQL語句,ORM映射
實戰項目電商大數據從零搭建包含CDH,HDP,開源搭建等三種搭建方式
廣告流量的實施統計,基於用戶興趣的商品推薦系統
基於ALS的協同過濾推薦,基於購買行爲的商品推薦
適合人羣新手、小白,轉行人員,想學習大數據,基礎不牢固
在學習大數據的過程當中有遇見任何問題,可以加入我的Java/大數據交流學習秋秋qun:七三二、三零八、一七四,多多交流問題,互幫互助,羣裏有不錯的學習教程和開發工具。學習大數據有任何問題(學習方法,學習效率,如何就業),可以隨時來諮詢我
第二階段:Linux+Hadoop系統離線計算處理模塊+大數據分佈式彈性搜索引擎ElasticSearch(ES)
知識點
- Linux系統的實戰與應用:Linux簡介,Linux的分類,Linux的常用版本,虛擬機安裝,
- Linux安裝Linux目錄結構,Linux常用命令行,Linux的權限命令,Linux的用戶操作,
- SSH免密登錄設置,Linux網絡配置,Linux遠程工具的使用,安裝JDK
- 項目實戰:CentOS系統操作、安裝Linux系統企業常用軟件、熟悉Linux環境下編程
- Hadoop離線計算處理模塊:Apache Hadoop的體系結構,Hadoop2.X,eclipse配置設置
- Hadoop應用案例分析,Hadoop應用案例分析,Hadoop數據壓縮
- 實驗環境,YARN分佈式管理平臺,HUE智能分析管理平臺
- CDH大數據平臺管理工具,Ooize工作流任務調度引擎
- Hive數據倉庫,Pig解析大數據高級過程語言,Hbase分佈式的開源數據庫
- Zookeeper分佈系統的可靠協調系統:zookeeper功能與應用,集羣分配原理,命令行客戶端,
- zookeeper集羣自動啓動腳本,java客戶端,分佈式應用系統服務器的上下線動態感知程序的開發,
- zookeeper客戶端線程的屬性-守護線程,分佈式共享鎖的邏輯
- Flume數據採集框架:Flume流程模型簡介,Flume安裝,Flume官網案例,
- Flume企業級案例一/二/三/四/五;Flume監控
- Azkaban任務調度工具:shell腳本的使用,MapReduce的AZ使用,關聯job的依賴,
- Hive的AZ使用,HDFS的AZ使用
- Sqoop高效傳輸批量數據的工具,Zookeeper分佈式系統的可靠協調系統
- 流量彙總程序開發,Combine案例,InputFormat案例,mapjoin,reducejoin
- hdfs小文件優化,MapReduce優化,分佈式共享鎖的邏輯,Hive的窗口函數,數據傾斜
- 大數據分佈式彈性搜索引擎ElasticSearch:什麼是搜索;數據庫搜索;什麼是ElasticSearch;
- ElasticSearch適用場景;ElasticSearch特點;ElasticSearch核心概念:近實時;Cluster(集羣);
- Cluster(集羣);Node節點;Index(索引-數據庫);Type(類型-表);DocumentDocument(文檔-行);
- Field(字段-列);mapping(映射-約束);ElasticSearch與數據庫的類比;
- ElasticSearch存入數據和搜索數據機制;ElasticSearch分佈式搭建;
- ElasticSearch Java API操作:操作環境準備,獲取Transport Client,創建索引,刪除索引,刪除索引,
- 源數據json串,源數據map方式添加json,源數據es構建器添加json,單個索引,多個索引,update,upsert,
- prepareDelete,條件查詢QueryBuilder,查詢所有(matchAllQuery),字段分詞查詢(queryStringQuery),通配符查詢(wildccardQuery),模糊查詢(fuzzy)
- 實戰項目
- 電商大數據從零搭建包含CDH,HDP,開源搭建等三種搭建方式
- 廣告流量的實施統計,基於用戶興趣的商品推薦系統
- 基於ALS的協同過濾推薦,基於購買行爲的商品推薦
第三階段:面向大廠、國際化開發人員Git、gitHub實戰應用+Docker應用引擎
知識點
- 一.分佈式版本控制系統Git、gitHub項目託管平臺的實戰與應用
- Git分佈式控制的實戰與應用:git簡史和介紹;git在win,mac,centos安裝和配置;
- git本地庫,暫存區,本地庫名詞解釋;git初始化,代碼更新,提交,回退,文件比較等操作;
- git branch checkout等分支操作;git rebase,merge區別;代碼回滾revert,reset;
- 面向大廠,國際化開發人員gitHub的實戰應用:創建gitHub賬戶,以及添加SSH配置;
- 遠程庫拉取,更新,代碼合併;向開源項目提交pull request和patch;
- git tag 和release等操作;在idea工具向gitHub提交代碼;
- 掌握大公司代碼開發流程;掌握版本控制的基礎操作,歷史回滾,分支操作代碼同步;
- 圍繞Pull Request來展開的團隊內部協作流程和開源項目貢獻流程;
- gitHub具體技巧,用lssues進行項目討論;
- 合併開源社區的pr(例如spark的pull request);搭建內部的代碼提交平臺gitlab;
- 適合人羣
- 如果想在大公司做開發,而且有目標做自己的開源項目並向其他開源項目提交代碼,那麼必須掌握git和gitHub,即是 這些你都不想,那麼如果你想coding方面長遠發展,掌握git會助你更上一層樓。
- 以下企業正在使用git及gitHub
- 拉勾網、Keep、快如科技、字節跳動、去哪兒網、奇虎360金融、美團點評、知乎、京東集團、汽車之家、小米、百度、宜信、瓜子二手車直賣網、滴滴出行、愛奇藝、陌陌、搜狐集團、七牛雲、好未來、馬蜂窩、阿里巴巴-高德、熊貓直播、邏輯思維、餓了麼、新浪網、新浪微博等.
- 二.大數據Docker容器化從入門到實戰開發
- Docker從無到有的實戰應用:爲什麼要使用docker?docker基本組成概念;docker安裝;
- docker獲取,創建,導入,保存,刪除鏡像;docker其他重要命令介紹與操作;docker單機容器內部互聯;
- 數據卷容器備份,恢復,遷移;docker容器綁定外部IP和端口;docker阿里雲加速鏡像配置;
- Docker及Dockerfile搭建鏡像,私有倉庫,集羣:Dockerfile基本介紹;Dockerfile中的重要命令介紹和使用;
- 實戰Dockerfile構建Spark,Hadoop鏡像;docker搭建私有倉庫;docker跨主機互聯(方式1):路由;
- (方式2):flannel+etcd;docker-compose介紹;docker-compose測試,生產,開發環境構建;
- docker-compose搭建Spark kafka集羣;提交代碼測試集羣;Docker的高級實戰項目應用:
- docker-compose搭建web服務器和nginx;docker進階之縮減容器大小;docker進階之cache機制;
- docker進階之鏡像內部窺探;docker進階之logs;docker可視化監控平臺搭建;docker搭建gitlab;
- 學完Docker的收穫
- Docker容器爲什麼這麼火?Docker容器應用場景?Docker容器企業應用案列?怎麼建設Docker容器基礎架構?生產環境使用Docker正確姿勢?搭建私有倉庫?使用Docker搭建hadoop,spark,kafka等集羣. 首先從入門教你安裝Docker,接着學習Docker核心功能:例如鏡像,容器,網絡等知識點。再接着學如何定製化容器鏡像並使用Harbor統一管理容器鏡像,最後圖形管理和容器監控。均以更佳實踐講解,確保實用性,實戰性。
- 適用人羣
- Docker技術已經成爲大數據工程師,運維工程師,開發工程師,測試工程師,架構師職位必備的專業技能之一,特別是解決開發人員環境部署,部署升級等問題,非常有必要深入學習下,提升職業競爭力
- 以下企業正在使用Dcker
- 新浪網、新浪微博、百度、小米、搜狐集團、愛奇藝、360企業安全、滴滴出行、今日頭條、抖音、58到家、京東集團、搜狗、宜信、金山雲、聯想集團、國美控股集團、美團點評、馬蜂窩、快手、汽車之家、創新工場AI工程院、拉勾網、face++、知乎、新東方、好未來、人人網等。
- 實戰項目
- 電商大數據從零搭建包含CDH,HDP,開源搭建等三種搭建方式
- 廣告流量的實施統計,基於用戶興趣的商品推薦系統
- 基於ALS的協同過濾推薦,基於購買行爲的商品推薦
第四階段:Storm實時計算處理模塊
知識點
- 組件模塊,Redis緩存中間件,開發任務的主程序設計
- Storm實時計算簡介,圖形解釋,集羣搭建,核心組件,系統架構,常用命令操作
- Storm-WordCount分析,開發WordCount的Spout組件和Bolt組件
- Storm的內容大綱,技術角度詳細講解,工程部署,單機和集羣開發
- Storm任務提交流程,啓動流程,設置參數,內部通信
- Storm與其他中間件集成Api,開發任務的主程序設計
- 實戰項目
- 地區銷售額需求分析和架構設計,圖表秒級無刷新實時展示
- Spout融合Kafka Consumer及線程安全測試
- HighCharts圖表開發一及Web端架構設計
第五階段:Flink新一代計算引擎
知識點
- Flink介紹,Flink架構,企業任務提交,Flink無界數據集,
- Flink-DataSource,jar包任務的提交,Flink有界數據集,
- Flink-sink,SSL設置,Flink執行模型,Flink集羣安裝,Flink運行狀況監控,
- Flink特點,Flink的UI界面使用,Flink的文件系統的支持,
- Flink流計算模型,Flink-WorkCount,Flink的HA
- 實戰項目
- Flink企業應用階段性項目
- Flink處理大批量數據架構階段性
- 監控維基百科的編輯日誌項目
第六階段:大數據Spark內存計算架構+高併發高吞吐架構設計
知識點
- 1.Kafka消息隊列模塊:Kafka介紹與構架原理,Kafka安裝部署,Kafka生產者與消費者及寫入流程
- Kafka消費流程,Kafka-API編寫,kafka ProducerAPI,Kafka攔截器API,Kafka StreamsAPI
- 2.Scala語言:Scala基礎語法,Scala函數式編程,Scala數組,Scala集合,Scala單機版WordCount,
- 面向對象,Actor編程,AKKA編程,RPC框架,隱式轉換
- 3.Spark內存計算模型詳解:Spark介紹與集羣安裝,執行Spark程序,Spark-WordCount編寫,
- Spark算子RDD,RDD高級算子,潭州課堂更受歡迎課堂案列,潭州課堂根據學科過濾學院,Partition分區,
- IP歸屬地查找案列,Spark操作MySQL的API,Spark提交任務流程,RDD緩存機制,RDD的checkPoint機制,
- Spark中的stage與依賴的劃分,SparkSQL,SparkStreaming,Spark-Flume整合,Spark-kafka整合
實戰項目
- 數據分析案例;SparkSQL企業級案例;
- SparkStreaming企業級案例;SparkRDD企業級使用;
- Flume採集數據到Spark端數據處理案例;
會這些東西你就成爲一個專業的大數據開發工程師了,月薪2W都是小毛毛雨