三個月成為大數據工程師,你需要具備什麼條件?

来源:http://www.cnblogs.com/luminji/archive/2017/11/13/7824831.html
-Advertisement-
Play Games

學習大數據沒有零基礎入門,首先你要成為一名工程師 在技術論壇中或知乎上,看到近幾萬的朋友都在疑惑,學習Java應該選擇什麼發展方向,這個咱們在之前的文章中有提到過,Java發展在領域上有三個選擇方向: JavaEE,主要應用於企業級應用開發;安卓開發方向;嵌入式應用開發方向。在此建議大家選擇Java ...


學習大數據沒有零基礎入門,首先你要成為一名工程師

在技術論壇中或知乎上,看到近幾萬的朋友都在疑惑,學習Java應該選擇什麼發展方向,這個咱們在之前的文章中有提到過,Java發展在領域上有三個選擇方向:

JavaEE,主要應用於企業級應用開發;安卓開發方向;嵌入式應用開發方向。在此建議大家選擇JavaEE方向,因為應用非常廣泛,崗位設置也比較多。

Java的職業發展規劃之路我們也曾在(一文闡述Java從初級到高級的學習之路——白老師分享篇(2)

)詳細列舉,這裡就不一一列舉了。

但我們從來沒有討論過學習Java,難道這輩子就只能做Java後端開發嗎?只能在這條路上奮鬥到底嗎?難道中途沒有其他的選擇嗎?

偶然認識的一個朋友,最開始是從事Java後端開發的,後來他在業餘時間自學成功轉入大數據行業,現在是一名大數據工程師,待遇也比之前好更多。前提是他是一名Java後端開發。

大數據是我們如今比較火的一個發展方向,但是很多培訓機構有提到幾個月速成的,小編覺得不是特別靠譜。

原因有以下:

  1. 大數據是一個新生行業,還不太成熟。

  2. Java發展了將近20年,也沒有說幾個月速成的,最多也就是帶你入門,讓你對Java的知識結構體系有一個清晰的認知,在後期的工作實踐期間成長的速度更快。

  3. 大數據的起點要高,並不是所謂的零基礎就可以入門的。

我們接下來講述的有關大數據的學習是有條件限制的,首先你需要是一名普通的工程師,如果你是Java工程師的話更好,但如果你是小白的話,那就只能成為一名工程師的後再來學習大數據吧。

一、認識大數據

大數據本質其實也是數據,不過也包括了些新的特征,

  • 數據來源廣;

  • 數據格式多樣化(結構化數據、非結構化數據、Excel文件等);

  • 數據量大(最少也是TB級別的、甚至可能是PB級別);

  • 數據增長速度快。

而針對以上新的特征需要考慮很多問題:

例如,數據來源廣,該如何採集彙總?採集彙總之後,又該存儲呢?數據存儲之後,該如何通過運算轉化成自己想要的結果呢?

對於這些問題,我們需要有相對應的知識解決。

二、大數據所需技能要求

Python語言:編寫一些腳本時會用到。

Scala語言:編寫Spark程式的最佳語言,當然也可以選擇用Python。

Ozzie,azkaban:定時任務調度的工具。

Hue,Zepplin:圖形化任務執行管理,結果查看工具。

Allluxio,Kylin等:通過對存儲的數據進行預處理,加快運算速度的工具。

必須掌握的技能:

Java高級(虛擬機、併發)、Linux 基本操作、Hadoop(HDFS+MapReduce+Yarn )、 HBase(JavaAPI操作+Phoenix )、Hive(Hql基本操作和原理理解)、 Kafka、Storm/JStorm、Scala、Python、Spark (Core+sparksql+Spark streaming ) 、輔助小工具(Sqoop/Flume/Oozie/Hue等)

高階技能6條:

機器學習演算法以及mahout庫加MLlib、 R語言、Lambda 架構、Kappa架構、Kylin、Alluxio

三、學習規劃

每天需要有3個小時的學習時間,周末的時候需要10小時,如果做不到的話,只能是

第一階段(基礎階段)

  1. Linux學習

    Linux操作系統介紹與安裝、Linux常用命令、Linux常用軟體安裝、Linux網路、 防火牆、Shell編程等。

  2. Java 高級學習(《深入理解Java虛擬機》、《Java高併發實戰》)

    掌握多線程、掌握併發包下的隊列、掌握JVM技術、掌握反射和動態代理、瞭解JMS。

  3. Zookeeper學習

    Zookeeper分散式協調服務介紹、Zookeeper集群的安裝部署、Zookeeper數據結構、命令。

第二階段(攻堅階段)

Hadoop、Hive、HBase、Scala、Spark、Python

第三階段(輔助工具工學習階段)

Sqoop、Flume、Oozie、Hue這些工具的學習主要在CSDN,51CTO以及官網都可以學習。

四、學習資源推薦

  1. Apache 官網(//apache.org/)

  2. Stackoverflow(https://stackoverflow.com/)

  3. Github(https://github.com/)

  4. About 雲 ://www.aboutyun.com/

  5. CSDN(//www.csdn.net/)

  6. 51CTO (//www.51cto.com/)

總結

在技術行業裡面,每天都會有新的東西出現,需要關註最新技術動態,不斷學習。任何一般技術都是先學習理論,然後在實踐中不斷完善理論的過程。

  • 如果你覺得自己看書效率太慢,你可以網上搜集一些課程。

  • 快速學習的能力、解決問題的能力、溝通能力在這個行業是真的非常重要的指標。

  • 要善於使用StackOverFlow和Google來幫助你學習過程遇到的問題。

  • 視頻課程推薦:可以去萬能的淘寶購買一些視頻課程,你輸入“大數據視頻課程”,會出現很多,多購買幾份(100塊以內可以搞定),然後選擇一個適合自己的。

以上是我們對大數據學習的總結,當然我們也提到了,並不是說零基礎的就可以直接學習,需要有編程的基礎,要先掌握扎實的編程基礎,在此建議學習Java,成為一名工程師的時候,有一定編程經驗,自學起來也相對比開始要簡單一點,然後對大數據有興趣或者想要進入這個行業的就可以去學習了。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • orm可以將資料庫存儲的數據封裝成對象,同時,如果封裝的好的話,所有的資料庫操作都可以封裝到對象中。這樣的代碼在組織結構上會非常的清晰,並且相對與使用sql語句在sql註入方面會極具降低。 SQLAlchemy中的映射關係有四種,分別是一對多,多對一,一對一,多對多 實現這種映射關係只需要外鍵(Fo ...
  • 首先什麼是一致性? 一致性就是分散式系統中相互獨立多個節點就某個值達成一致。 具體可分為強一致性和弱一致性。 強一致性:在任意時刻,所有節點中的數據是一樣的。同一時間點,你在節點A中獲取到key1的值與在節點B中獲取到key1的值應該都是一樣的。 弱一致性:不保證任意時刻所有節點數據一樣,有很多不同 ...
  • 實現功能 以上的代碼實現了通過路徑執行對應的執行方法,但執行方法的參數是必須需要傳入請求後響應的參數的。 分別為:HttpServletRequest和HttpServletResponse。然後通過這個兩個對象獲得參數和處理參數。 需求:我們希望根據方法聲明的參數列表決定是否需要ServletAP ...
  • 類似於雜談性質的文,總結下公司實行微服務化上遇到的一些問題。 雖然參與了開發過程,但整體更像是個旁觀者,前期還是大家討論怎麼做,後來慢慢就由負責架構的同事專職做規劃,拆分任務去完成。 萬事開頭難 最初的架構(資料庫和其他部分都做了簡化) 初衷並不是為了趕時髦,為了團隊KPI之類的,而是遇到了一個很現 ...
  • 一、前言 今天公司要切換資料庫伺服器,資料庫文件大於2G,結果再附加到另一伺服器的資料庫裡面,就產生了一個問題。如下: 二、解決方案 在網上找了很多方法,最後在CSDN上找到了相關的解決方式,經測試可用。 網上看到的整理了一下。 在SQL Server 7.0中,微軟推出了 和`sp_attach_ ...
  • [20171113]修改表結構刪除列相關問題.txt--//維護表結構刪除欄位一般都是先ALTER TABLE <table_name> SET UNUSED (<column_name>);--//然後等空閑時候刪除列.ALTER TABLE <table_name> DROP UNUSED CO ...
  • 轉自維基百科: SQL註入是一種代碼註入技術,用於攻擊數據驅動的應用程式,在這種應用程式中,惡意的SQL語句被插入輸入欄位中執行(例如將資料庫內容轉儲給攻擊者)。[1] SQL註入必須利用應用程式軟體中的安全漏洞,例如,當用戶輸入被錯誤地過濾為嵌入在SQL語句中的字元串文字 轉義字元,或者用戶輸入沒 ...
  • 從開始工作就開始使用Redis,也有一段時間了,但都只是停留在使用階段,沒有往更深的角度探索,每次想讀源碼都止步在閱讀書籍上,因為看完書很快又忘了,這次逼自己先讀代碼。因為個人覺得寫作需要閱讀文字來增強靈感,那麼寫代碼的,就閱讀更多代碼來增強靈感吧。 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...