生活算個(gè)球
ETL工程師又叫數(shù)據(jù)庫工程師。
ETL工程師的主要工作內(nèi)容有:從事系統(tǒng)編程、數(shù)據(jù)庫編程與設(shè)計(jì)。ETL是數(shù)據(jù)倉庫中的非常重要的一環(huán)。它是承前啟后的必要的一步。相對(duì)于關(guān)系數(shù)據(jù)庫,數(shù)據(jù)倉庫技術(shù)沒有嚴(yán)格的數(shù)學(xué)理論基礎(chǔ),它更面向?qū)嶋H工程應(yīng)用。
所以從工程應(yīng)用的角度來考慮,按著物理數(shù)據(jù)模型的要求加載數(shù)據(jù)并對(duì)數(shù)據(jù)進(jìn)行一些系列處理,處理過程與經(jīng)驗(yàn)直接相關(guān),同時(shí)這部分的工作直接關(guān)系數(shù)據(jù)倉庫中數(shù)據(jù)的質(zhì)量,從而影響到聯(lián)機(jī)分析處理和數(shù)據(jù)挖掘的結(jié)果的質(zhì)量。
職業(yè)前景
從業(yè)務(wù)角度講,隨著數(shù)據(jù)應(yīng)用的日益豐富,不同平臺(tái)、系統(tǒng)的相互大批量數(shù)據(jù)交互成常態(tài),僅僅滿足于采集數(shù)據(jù)已經(jīng)不適應(yīng)業(yè)務(wù)需要,還需要能夠?yàn)閿?shù)據(jù)的目的端落地提供支撐,ETL工程師需要一個(gè)端到端的更適應(yīng)業(yè)務(wù)需要的數(shù)據(jù)交換系統(tǒng)。
從技術(shù)角度講,ETL做一定的擴(kuò)展可以升級(jí)為兼具交換能力,兩者有傳承,可以實(shí)現(xiàn)平滑過渡,但交換卻要考慮用另一個(gè)工具實(shí)現(xiàn),同時(shí)未來大數(shù)據(jù)平臺(tái)組件將異常豐富,相互之間的數(shù)據(jù)交換將是常態(tài),必要要有更高級(jí)別的交換工具滿足這些需求。
小東家1985
技術(shù)方面:需要學(xué)習(xí)使用數(shù)據(jù)源、目標(biāo)端工具的基本使用(如 oracle MySQL hive等);需要學(xué)習(xí)etl工具的安裝配置常用錯(cuò)誤解決(如 kettle DataStage infa sqoop datax等)
理論方面:懂得數(shù)倉分層架構(gòu),維度建模等。
從ETL的字面來看,它主要包含三大階段,分別是數(shù)據(jù)抽取、數(shù)據(jù)轉(zhuǎn)換、數(shù)據(jù)加載。
1.數(shù)據(jù)抽取
這個(gè)階段的主要目標(biāo)是匯總多種數(shù)據(jù)源,為下一步的轉(zhuǎn)換做準(zhǔn)備。
2.數(shù)據(jù)轉(zhuǎn)換
這個(gè)階段是ETL的核心環(huán)節(jié),也是最復(fù)雜的環(huán)節(jié)。它的主要目標(biāo)是將抽取到的各種數(shù)據(jù),進(jìn)行數(shù)據(jù)的清洗、格式的轉(zhuǎn)換、缺失值填補(bǔ)、剔除重復(fù)等操作,最終得到一份格式統(tǒng)一、高度結(jié)構(gòu)化、數(shù)據(jù)質(zhì)量高、兼容性好的數(shù)據(jù),為后續(xù)的分析決策提供可靠的數(shù)據(jù)支持。
3.數(shù)據(jù)加載
這個(gè)階段的主要目標(biāo)是把數(shù)據(jù)加載至目的地,比如數(shù)據(jù)倉庫中。通常的做法是,將處理好的數(shù)據(jù)寫成特定格式(如parquet、csv等)的文件,然后再把文件掛載到指定的表分區(qū)上。也有些表的數(shù)據(jù)量很小,不會(huì)采用分區(qū)表,而是直接生成最終的數(shù)據(jù)表。
了解了ETL這部分的工作主要做什么,接下來再來說作為ETL工程師需要具備哪些技能,這些也就是需要學(xué)習(xí)的重點(diǎn)——
1、精通SQL語言,具備存儲(chǔ)過程開發(fā)能力,能熟練進(jìn)行SQL查詢優(yōu)化;
2、熟悉Hive數(shù)據(jù)倉庫設(shè)計(jì),了解數(shù)據(jù)倉庫模型及思想、維度建模思想,了解數(shù)據(jù)倉庫;
3、熟悉Hadoop、Spark、Flink、Kafka等相關(guān)技術(shù);
4、熟練Python、Java中至少一種語言;
5、熟悉Mysql、Nosql等常見數(shù)據(jù)庫。
優(yōu)質(zhì)工程師考試問答知識(shí)庫