大數據前景如何?大數據開發工程師是什麼?

最近發現有些同學並不太瞭解大數據開發工程師這個職位,所以千鋒想簡單介紹一下什麼是大數據開發工程師,當前互聯網公司的數據開發到底是什麼樣子的?和一般的Java或者PHP工程師在工作上有什麼區別?

大數據前景如何?大數據開發工程師是什麼?

首先入門大數據你應該明白很多人都進入的一個誤區,什麼不是大數據開發:

僅使用數據庫(關係型mysql,sqlserver,oracle等 非關係型 mongo redis等),儘管數據量達到千萬級別,億級別不是大數據開發。從業務系統的數據庫中查詢數據然後產出報表不是大數據開發。端上(頁面,h5,手機native)埋點上報數據記錄到數據庫中不是大數據開發。

那麼什麼是大數據開發?到智聯上搜了一下大數據開發工程師這個職位,隨便點了幾個職位,需要技能如下:hadoop,hive,hbase,spark,kafka等。

大數據前景如何?大數據開發工程師是什麼?

大數據開發做的事情精簡到一個詞語就是:統計。精簡到兩類指標就是:PV和UV。精簡到一句話就是:統計各種指標的PV和UV。PC互聯網時代,各門戶網站(比如:新浪,網易,搜狐)關注的是各自網站今天被打開了幾次(pv),今天有多少人(uv)訪問了網站。

更復雜一點的比如:頁面上某個按鈕或者某個連接有多少人點擊了幾次,某個頁面上的熱力圖,移動互聯網時代,手機應用被用戶打開的次數和人數也是大家關注的重點,但是除此之外還多出了許多其他非常重要的數據,由於手機屏幕的限制,信息流成為了移動時代的主流。

各大門戶網站非常關注自己的新聞客戶端中:在信息流中曝光了多少篇文章,其中有多少篇文章被用戶點擊了。每篇文章閱讀了長時間,因為用戶點擊的文章越多,使用客戶端的時間越長,各公司的廣告收入才越高,所以各公司想方設法推薦用戶喜歡的內容。

因為網站的瀏覽行為,手機客戶端中文章的曝光或者點擊這些數據非常大,基本以億為單位起。所以傳統的把統計信息放到數據庫中的方式已經不能完成這項統計工作。例如:wordpress博客中,用戶每閱讀一篇文章,mysql中就會更新這篇文章的閱讀次數+1。所以大數據是通過日誌來統計這些指標。比如:後臺服務的日誌(apache,tomcat,weblogic,nginx日誌)。

大數據前景如何?大數據開發工程師是什麼?

主要難點在於:日誌量太大(一般大點的互聯網公司,一個業務線每天的日誌都有幾個t,再大些的每天幾十t,幾百t也不奇怪),需要掌握大數據相關技術例如前面提到的hadoop,hive等。

另外數據的及時性,從離線計算來說,一般每天零點,前一天的日誌都接收完畢,開始計算前一天的數據,幾點能計算完畢?要看各個公司各自的要求。

數據的準確性。這是重中之重,如果是實時計算,需要掌握實時相關技術。例如:每5分鐘網站的在線人數。監控任務是否失敗,數據是否產出,產出的數據是否異常。如果任務失敗如何補救。比如實時任務,由於某種原因13:00到14:00的數據沒有,如何把數據補回來。

在轉做大數據開發之前,一直在用Java作業務系統:例如hr系統(考勤,薪資等),收費系統。談談我個人對業務系統開發和大數據開發的理解:業務系統開發:對數據庫的各種增刪改查操作。

重點難點在於:對複雜業務的理解上(比如計算工資:基本工資,五險一金,全勤獎,高溫補貼,報銷,獎金,加班費.....等等都需要計算)。線上服務的穩定,比如facebook,淘寶等網站高併發的壓力下維持網站正常運行。

大數據前景如何?大數據開發工程師是什麼?

大數據開發一句話就是對字符串的各種算數。重難點在於數據的及時性。例如實時數據中,想知道 12:00~12:10這10分鐘的用戶數,如果這個數據在晚上20點才計算完成,那就沒什麼意義了。再比如,大家應該都有體驗過:再手機上刷新聞的時候,你點了某一篇文章,再繼續刷新聞,後面很快會出來不少和前面點擊的那篇文章類似的文章,這就是根據你的點擊給你及時推薦你有更大可能點的東西。

零基礎永遠不是藉口,沒時間永遠不是藉口,抓住千鋒逆戰班直播體驗課的機會,用勤奮與汗水,鑄就美好的明天。在文章下方留言即可試聽課程外加領取千鋒HTML5、UI交互設計、PHP、Java+雲數據、大數據開發、VR/AR/Unity遊戲開發、Python人工智能、Linux雲計算、全棧軟件測試、網絡安全等900G+視頻學習教程。


分享到:


相關文章: