大数据开发入门怎么学习?
首先,大數據的定義是什么?很多人都在說要進入大數據行業(yè),要學習大數據技術,但往往對大數據都是一知半解,科多大數據先和大家來看看百度百科對大數據的定義:
?
來抓重點,常規(guī)的軟件工具處理不了的,就必須要用新的技術,那能解決以上問題的技術就是大數據技術。
大數據的技術是一個技術群落,想全部學習短期內是不現實的,那么我們怎么樣科學的有邏輯有規(guī)劃的來學習,怎么進行大數據的入門學習呢?我們得了解大數據行業(yè)里,有哪些崗位,我們直接從工作崗位的技能需求來倒推我們如何學習大數據,如何有側重點的來學習。
第一,先看看有哪些崗位,當然大公司會分的比較詳細,中小企企業(yè)相對要求會全面一些
先看看如下這幅圖,圖沒有很詳細,我再做解答
我們從整個數據項目的業(yè)務流程出發(fā),(以上所有崗位都對編程有要求,所以編程基礎是必不可少的)
?
第一, 大數據工程師,眾所周知,在沒有大數據以前,行業(yè)應用已經非常成熟了,最早大家只關注功能的實現,接著重視前臺的界面,前端工程師因此火了一段時間,因為以前數據量不大,所以在功能上并不重視,由于移動互聯網的發(fā)展,數據量非常龐大了,這個時候單機服務器不能解決問題,那么分布式集群就出現了,大數據工程師的職責就是搭建大數據平臺,所以從上圖可以得知,大數據工程師,需要有java基礎(行業(yè)應用大部分是java語言編寫的),所以,今后想從事該崗位的,那么學習的路線圖如下
java基礎----linux----hadoop-----hive、hbase----scala---spark
第二, 算法工程師,該崗位零基礎的小伙伴就請止步吧,更適用于數學專業(yè)的研究生及以上學歷,對數據基礎要求比較高。
第三, 數據挖掘工程師,建議從python入手,畢竟python里面有大量的數據科學的包,也有pyspark,直接從spark里面調數據,不用學習Scala語言(spark的編程語言是Scala),學習的路線如下:
python基礎—python web(強化編程基礎)--數學基礎補充(線性代數、概率統(tǒng)計、離散數學)--python numpy pandas包---機器學習算法---深度學習
第四, 數據分析師,該崗位對數學基礎要求不高,但對綜合素質要求非常高,能充分的理解行業(yè)行情、公司運營、產品運作、對市場敏銳度較高。具備一定的編程基礎,建議學習python,能熟練使用相關的工具,如果你對大數據開發(fā)感興趣,想系統(tǒng)學習大數據的話,可以加入大數據技術學習交流扣群:458數字345數字782獲取學習資源,如excel,sas、spss等,能寫漂亮的文章做PPT就行,數學基礎不好的女生可以建議走該方向。
學習路線:python基礎—python numpy pandas包---excel—spss---sas
第五, 大數據可視化,該崗位需要前端的相關基礎,大數據運維工程師,也不多做介紹了。
根據以上的崗位介紹,對自己做一個整體的規(guī)劃
個人是建議從大數據工程師入手,從java基礎開始學,畢竟編程基礎是每個崗位都需要的,而且java的適用面是最廣的,雖然現在python的勢頭很足,但相對java來說,python比較簡單,只要java能熟練使用了,要學會python,兩周的時間就沒問題,從長遠的職業(yè)規(guī)劃來說,學習沒有速成的方法,腳踏實地才是最重要的。
我這有大數據工程師詳細的學習的計劃,分享給大家,希望對你們有幫助。
第一階段:靜態(tài)網頁基礎(HTML+CSS)
1. 難易程度:一顆星
2. 主要技術包括:html常用標簽、CSS常見布局、樣式、定位等、靜態(tài)頁面的設計制作方式等
第二階段:JavaSE+JavaWeb
1. 難易程度:兩顆星
2. 主要技術包括:java基礎語法、java面向對象(類、對象、封裝、繼承、多態(tài)、
抽象類、接口、常見類、內部類、常見修飾符等) 、異常、集合、文件、IO、
MYSQL(基本SQL語句操作、多表查詢、子查詢、存儲過程、事務、分布式事務)
JDBC、線程、反射、Socket編程、枚舉、泛型、設計模式
第三階段:前端框架
1. 難易程序:兩星
2. 主要技術包括:Java、Jquery、注解反射一起使用,XML以及XML解析、解析dom4j、jxab、jdk8.0新特性、SVN、Maven、easyui
第四階段:企業(yè)級開發(fā)框架
1. 難易程序:三顆星
2. 主要技術包括:Hibernate、Spring、SpringMVC、log4j slf4j 整合、myBatis、struts2、Shiro 、redis、流程引擎activity, 爬蟲技術nutch,lucene,webService CXF、Tomcat集群和熱備 、MySQL讀寫分離
第五階段: 初識大數據
1. 難易程度:三顆星
2. 主要技術包括:大數據前篇(什么是大數據,應用場景,如何學習大數據庫,虛擬機概念和安裝等)、Linux常見命令(文件管理、系統(tǒng)管理、磁盤管理)、Linux Shell編程(SHELL變量、循環(huán)控制、應用)、Hadoop入門(Hadoop組成、單機版環(huán)境、目錄結構、HDFS界面、MR界面、簡單的SHELL、java訪問hadoop)、HDFS(簡介、SHELL、IDEA開發(fā)工具使用、全分布式集群搭建)、MapReduce應用(中間計算過程、Java操作MapReduce、程序運行、日志監(jiān)控)、Hadoop高級應用(YARN框架介紹、配置項與優(yōu)化、CDH簡介、環(huán)境搭建)、擴展(MAP 端優(yōu)化,COMBINER 使用方法見,TOP K,SQOOP導出,其它虛擬機VM的快照,權限管理命令,AWK 與 SED命令)
第六階段:大數據數據庫
1. 難易程度:四顆星
2. 主要技術包括:Hive入門(Hive簡介、Hive使用場景、環(huán)境搭建、架構說明、工作機制)、Hive Shell編程(建表、查詢語句、分區(qū)與分桶、索引管理和視圖)、Hive高級應用(DISTINCT實現、groupby、join、sql轉化原理、java編程、配置和優(yōu)化)、hbase入門、Hbase SHELL編程(DDL、DML、Java操作建表、查詢、壓縮、過濾器)、細說Hbase模塊(REGION、HREGION SERVER、HMASTER、ZOOKEEPER簡介、ZOOKEEPER配置、Hbase與Zookeeper集成)、HBASE高級特性(讀寫流程、數據模型、模式設計讀寫熱點、優(yōu)化與配置)
第七階段:實時數據采集
1. 難易程序:四顆星
2. 主要技術包括:Flume日志采集,KAFKA入門(消息隊列、應用場景、集群搭建)、KAFKA詳解(分區(qū)、主題、接受者、發(fā)送者、與ZOOKEEPER集成、Shell開發(fā)、Shell調試)、KAFKA高級使用(java開發(fā)、主要配置、優(yōu)化項目)、數據可視化(圖形與圖表介紹、CHARTS工具分類、柱狀圖與餅圖、3D圖與地圖)、STORM入門(設計思想、應用場景、處理過程、集群安裝)、STROM開發(fā)(STROM MVN開發(fā)、編寫STORM本地程序)、STORM進階(java開發(fā)、主要配置、優(yōu)化項目)、KAFKA異步發(fā)送與批量發(fā)送時效,KAFKA全局消息有序,STORM多并發(fā)優(yōu)化
第八階段:SPARK數據分析
1. 難易程序:五顆星
2. 主要技術包括:SCALA入門(數據類型、運算符、控制語句、基礎函數)、SCALA進階(數據結構、類、對象、特質、模式匹配、正則表達式)、SCALA高級使用(高階函數、科里函數、偏函數、尾迭代、自帶高階函數等)、SPARK入門(環(huán)境搭建、基礎結構、運行模式)、Spark數據集與編程模型、SPARK SQL、SPARK 進階(DATA FRAME、DATASET、SPARK STREAMING原理、SPARK STREAMING支持源、集成KAFKA與SOCKET、編程模型)、SPARK高級編程(Spark-GraphX、Spark-Mllib機器學習)、SPARK高級應用(系統(tǒng)架構、主要配置和性能優(yōu)化、故障與階段恢復)、SPARK ML KMEANS算法,SCALA 隱式轉化高級特性。
總結
以上是生活随笔為你收集整理的大数据开发入门怎么学习?的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: JSTL核心标签超详细
- 下一篇: 大数据学习入门资料