Stories

Detail Return Return

【職業發展】從ETL到大數據:如何規劃你的數據職業生涯? - Stories Detail

首先: ETL工程師其實是一個特別簡單的崗位。

為什麼簡單?

ETL就是數據倉庫項目建設和日常維護中的一種工作,ETL,就是抽取、轉換、裝載的英文縮寫。但是這個現實中都是使用相應工具軟件的。至於怎麼抽取,怎麼轉換、怎麼裝載,都是與具體業務相結合的。

比如: 每天晚8點抽取,a+b轉換成c,從A設備讀出a和b,計算成c之後存到W設備上。這就是ETL要乾的事。特別簡單。沒有技術含量。但是工作量卻比較大。但是工作量主要發生在初始階段,因為日後變成那個自動化的軟件執行就沒什麼工作量了。所以ETL這工作的複雜性在於項目建設階段,當項目建成就變成自動化的運維了。這樣一來ETL工作就不難了。

正因為上面説的,所以ETL工程師的技術性不高,主要的問題在於相關的ETL軟件會用。其他的就是業務問題。因為抽取的頻率,以及如何抽取是由業務上的要求決定的。甚至如何轉換也是業務需要決定的,裝載同樣依賴業務要求。所以這並不是技術問題。

ETL工程師每天都做什麼

ETL就業範圍廣泛,例如: 各種大型公司的開發部、研發部、科技部。一線城市,如:(北上廣深),其次新一線的(杭州、南京、武漢、成都、合肥、重慶、青島)等很多ETL工程師的月薪都是過萬以上,就算是普通剛入門的菜鳥小白也都是6-9k,工作內容分為:(數據整合、數據存儲管理、數據挖掘設計、多維分析展現)

ETL工程師的崗位職責

  1. 海量數據的ETL開發
  2. 參與數據倉庫架構的設計與開發
  3. 參與數據倉庫ETL流程優化及解決ETL相關技術問題
  4. 熟悉主流數據庫技術,如: oracle、DB2、SQL sever等
  5. 精通ETL架構、有一定的ETL開發經驗,瞭解日常作業的部署和調度
  6. 熟悉ETL企業級開發工具和應用,如: Kettle、TASKCTL、海豚調度、XXL-job等

ETL工具種類

現在ETL工具級軟禁啊網上開源或商用付費版的同類工具有很多。

免費(開源)項目級工具

Kettle,xxl-job,oozie,Azkaban,TASKCTL,DolphinScheduler(海豚調度)等;

企業級應用工具平台

TASKCTL,Moia Comtrol,Comtrol-m等;

關於你怎麼辦

找一個簡單的項目經驗包裝一下自己;其次關於ETL軟件現在實際上市面上可以下載到的試用版,你隨便找一種能找到的就行。在這裏個人比較推薦小白可以先以 “TASKCTL或海豚調度”這2款工具作為入門學習瞭解;

理由: 以上2款工具是一個開放的調度平台,尤其是企業級應用的 TASKCTL,為了適應諸如Datastage、Informatic、kettle、一體機、大數據、存儲過程、java以及各種腳本任務程序的支持與擴展,同時保證不同任務類型的應用統一,TASKCTL對作業的控制採用插件驅動機制,從而實現不同技術平台、不同作業類型調度控制,很多金融、零售、製造、物流等近1000家頭部公司都在使用該產品的 TASKCTL商業版,其中免費版為了迎合中小企業以及個人項目級學習的需要橫向擴展的一款輕量級調度工具;

如何轉型自學ETL

有編程基礎的學生&在職人員

熟悉sql語言;會簡單腳本(shell)編程,會使用一種ETL數據抽取工具(kettle);會使用一種ETL作業自動化排程工具(taskctl);熟練使用增刪改查、會添加主鍵索引,熟練使用時間格式轉換,會行轉列列轉行,會update數據更新,會寫sql存儲過程。

安裝數據庫工具

常用的關係型數據庫語言都要會,包括mysql,sqlserver,oracle,db2數據庫。所以學習sql需要第一步要安裝數據庫,及數據庫管理工具(關於數據庫管理工具這裏建議使用navicat)

mysql安裝包:Mysql8.0安裝教程

安裝包: https://pan.baidu.com/s/1Vwlsc7BF3MJd3SYsyLeKhw (提取碼:886p)

oracle安裝包: https://pan.baidu.com/s/12oDFAmqFH--6VXmo1dQZ5g (提取碼:25p6)

navicat安裝包:Navicat Premium 15.0安裝教程

oracle數據庫在使用時需要安裝jdk,jdk鏈接: https://pan.baidu.com/s/1-B-r7ZED09T9TLOAvk6RBQ (提取碼:3ss8)

jdk安裝後需要配置環境變量: JDK安裝與環境變量配置

軟件安裝好後,就用navicat鏈接這3個數據庫。

SQL需要學習

sql學習先了解基本的查詢語言,進一步提升需要結合kettle進行學習

第一步學習sql查詢語言,對數據庫有大概的瞭解。

推薦mysql-3小時入門視頻: https://www.bilibili.com/video/BV177411U7Yr/

SQL配套練習1: https://blog.csdn.net/mrbcy/article/details/68965271

SQL配套練習2: https://blog.csdn.net/flycat296/article/details/63681089

ETL數據抽取工具(kettle)及作業排程工具(TASKCTL)的使用

掌握ETL增量、全量、插入更新等抽取方式;能集成excel,數據庫,web接口,hive,spark等數據源;

這裏推薦大家學習 TASKCTL安裝入門簡單。結合Kettle也是永久免費的。

TASKCTL安裝包:官方地址

TASKCTL學習視頻: https://www.bilibili.com/video/BV1jz4y1y7nL

shell編程

能寫簡單的shell腳本,比如通過1個shell腳本將5張表導入到目標庫中。

shell視頻: https://www.bilibili.com/video/BV14L4y157Bv/?spm_id_from=333....

最後

ETL工程師會發現有很多崗位,所以我們學習之後不會存在找不到工作的情況。進一步提升可以往大數據工程,數據產品經理,或者大數據產品經理髮展。

轉行到etl開發後,建議先用半年努力學習公司所需要的知識和技術,熟悉公司業務後、從第7個月開始學習大數據相關組件,學習半年後在投遞大數據工程師相關崗位。

最後關於etl轉行説下學習成本。etl開發學習成本真的很低很低,基本上自學1個月就可以開始找工作,而我們學習後跟 java開發、跟數據分析工資基本上是一樣的。

與數據分析相比,市場需求更多,學歷門檻更低。最後一起努力吧。

Add a new Comments

Some HTML is okay.