10年大牛總結零基礎學習大數據——四部曲


10年大牛總結零基礎學習大數據——四部曲

有很多人對大數據東西感興趣,但是對編程語言也不太瞭解不過大數據學習並不是高深莫測的,雖然它並沒有多簡單,但是通過努力,零基礎的朋友也是完全可以掌握大數據的。

我個人總結了一下 零基礎學習大數據的話大概分為以下幾步:

1. 瞭解大數據理論

要學習大數據你至少應該知道什麼是大數據,大數據一般運用在什麼領域。對大數據有一個大概的瞭解,你才能清楚自己對大數據究竟是否有興趣,如果對大數據一無所知就開始學習,有可能學著學著發現自己其實不喜歡,這樣浪費了時間精力,可能還浪費了金錢。所以如果想要學習大數據,需要先對大數據有一個大概的瞭解。

2. 計算機編程語言的學習

對於零基礎的朋友,一開始入門可能不會太簡單。因為需要掌握一門計算機的編程語言,大家都知道計算機編程語言有很多,比如:R,C++,JAVA等等。目前大多數機構都是教JAVA,同時我自己也是通過java學起來的,我們都知道Java是目前使用最為廣泛的網絡編程語言之一。他容易學而且很好用,如果你學習過C++語言,你會覺得C++和Java很像,因為Java中許多基本語句的語法和C++一樣,像常用的循環語句,控制語句等和C++幾乎一樣,其實Java和C++是兩種完全不同的語言,Java只需理解一些基本的概念,就可以用它編寫出適合於各種情況的應用程序。Java略去了運算符重載、多重繼承等模糊的概念,C++中許多容易混淆的概念,有的被Java棄之不用了,或者以一種更清楚更容易理解的方式實現,因此Java語言相對是簡單的。

那在學習Java的時候,我們一般需要學習這些課程: HTML&CSS&JS,java的基礎,JDBC與數據庫,JSP java web技術, jQuery與AJAX技術,SpringMVC、Mybatis、Hibernate等等。這些課程都能幫助我們更好了解Java,學會運用Java。

10年大牛總結零基礎學習大數據——四部曲

3. 大數據相關課程的學習

學完了編程語言之後,一般就可以進行大數據部分的課程學習了。一般來說,學習大數據部分的時間比學習Java的時間要短。大數據部分課程,包括大數據技術入門,海量數據高級分析語言,海量數據存儲分佈式存儲,以及海量數據分析分佈式計算等部分,Linux,Hadoop,Scala, HBase, Hive, Spark等等專業課程。如果要完整的學習大數據的話,這些課程都是必不可少的。

4. 實戰階段

不用多說,學習完任何一門技術,最後的實戰訓練是最重要的,進行一些實際項目的操作練手,可以幫助我們更好的理解所學的內容,同時對於相關知識也能加強記憶,在今後的運用中,也可以更快的上手,對於相關知識該怎麼用也有了經驗。目前要找到可以讓自己操作的實際項目可能不太多,但是有一些資源比較好的培訓機構,是擁有大量實際的大數據項目的,選擇這種機構的另一個好處就是,我們可以學到任課老師的一些經驗。在實際練手的過程中,老師會教給你一些相應的技巧,或者是根據他們的經驗,教你一些捷徑。

10年大牛總結零基礎學習大數據——四部曲

一般來說,零基礎學習大數據大概就是分為這4個階段,學習大數據不是件容易的事,但是隻要你能多努力,積極地解決自己的疑惑,多練手,相信你一定可以掌握這門技術。

首先要掌握的就是Java語言Linux操作系統,這兩個是大數據的基礎。學習順序的話不分前後的。

(1)Java:Java也有很多方向。JavaSE,JavaEE還有JavaME,大數據的話只需要學習Java標準版的JavaSE就可以了,像Servlet、JSP、Tomcat、Struts等在JavaEE方向,在大數據裡面不常用到。但是需要了解,想要成為成為人才的話可以要學習Hibernate或者Mybites的原理,不要只學習API。

(2)Linux:因為大數據相關軟件都是在Linux上面運行的所以,Linux要學習很紮實。它能讓你更好的理解hadoop,hive,hbase,spark等大數據軟件的運行環境和網絡環境配置,能少踩很多坑,學會shell就能看懂腳本這樣更容易理解配置大數據集群。

大數據學習

  • 第一階段 Java語言編程基礎:計算機基礎、編程基礎、面向對象、常用類、集合操作、IO操作。
  • 第二階段 Javaweb核心技術:Java基礎增強、數據庫操作、前端技術基礎、Javaweb核心、Linux服務器、Javaweb綜合項目實戰。
  • 第三階段 網站開發三大框架:項目構建及管理、數據庫操作框架、spring框架、Springmvc框架、CRM項目實戰。
  • 第四階段 互聯網搜索及爬蟲:單機爬蟲開發、爬蟲高級開發、分佈式爬蟲、搜索系統技術、搜索系統框架、分佈式搜索系統。
  • 第五階段 分佈式電商系統:電商基礎背景和項目需求分析、dubbo、angularJS、電商核心業務實現;Nginx、Hudson、solrCloud、keepalived、負載均衡、反向代理、高併發;redis Cluster、freemarker頁面靜態化、高併發;mycat數據庫、高併發;docker容器部署、熱部署、高併發。
  • 第六階段 大數據離線計算:基礎增強、大數據平臺、數據收集、數據存儲、數據計算、數據管理、案例分析、數據分析、核心增強、核心提高。
  • 第七階段 大數據實時計算:實時數據存儲、實時數據計算、實時計算案例、實時數據存儲、實時數據查詢、推薦系統開發。
  • 第八階段 大數據內存計算:Scala語言基礎、spark基礎、sparkRDD、spark SQL、spark streaming、項目實戰階段。
  • 第九階段 機器學習基礎:機器學習基礎概念、機器學習決策樹模型、機器學習KNN模型、機器學習SVM支持向量機、機器學習感知機與BP神經網絡。
10年大牛總結零基礎學習大數據——四部曲

Hadoop:這是現在流行的大數據處理平臺。包括HDFS、MapReduce和YARN,HDFS是儲存數據的地方想我們的電腦硬盤一樣,都存儲在這個上面。MapReduce是對數據進行處理計算的,它的特點是不管多大的數據只要有時間就能跑完。YARN是體現Hadoop平臺概念的重要組件。

大數據中重要的要掌握的幾點:

Zookeeper:安裝Hadoop的HA的時候就會用到它,以後的Hbase也會用到它。需要把它安裝正確 ,讓它正常的跑起來。

Mysql:在Linux上把它安裝好,運行起來,會配置簡單的權限,修改root密碼,創建數據庫。

Sqoop:這個是用於把Mysal裡面的數據導入Hadoop裡面。

Hive:和Pig同理,想要變得厲害可以都學習。

Oozie:可以幫你管理你的Hive或者MapReduce、Spark腳本還能檢查你的程序執行的是否正確。

Hbase:這個是Hadoop生態體系中的NOSQL數據庫,是按照key和value的形式存儲的並且key是唯一的。所以可以幫你做數據排重,它與MYSQL相比存儲的數據量大。

Kafka:這個是隊列工具。可以利用它來做線上實時數據的入庫或者是入HDFS,與Flume的工具配合使用,專門用來提供對數據進行簡單處理。

Spark:這個工具是用來彌補MapReduce處理數據速度上的缺點,特點就是把數據裝載到內存裡面去計算。適合做迭代運算,Java語言或者Scala都可以操作它,他們都是用JVM的。

上面的知識點和線路圖你能完整的學下來掌握,基本去哪家企業都很搶手~

(你認為零基礎學習大數據有哪些方法!)


分享到:


相關文章: