如果你問企業(yè)“ETL工具重要嗎?”我想答案一定是肯定的;如果你問企業(yè)“一定要選用商用ETL工具嗎?”,這個(gè)結(jié)果就不見得那么統(tǒng)一了。ETL供應(yīng)商足以應(yīng)對(duì)不斷變化的數(shù)據(jù)環(huán)境而更好得生存嗎?ETL起源于數(shù)據(jù)倉(cāng)庫,雖然開發(fā)人員的學(xué)習(xí)曲線很高,但它提供了許多好處,比如分布式處理、可維護(hù)性、基于UI而不是腳本等。
耦合對(duì)編程而言是一個(gè)舊概念,但在涉及數(shù)據(jù)處理方式時(shí)仍然是一個(gè)相對(duì)較新的概念。眾所周知,ETL流緊密耦合,但現(xiàn)在的數(shù)據(jù)流管道是松散耦合的,這種方法也有缺點(diǎn),例如用暗數(shù)據(jù)創(chuàng)建數(shù)據(jù)沼澤。
標(biāo)準(zhǔn)化轉(zhuǎn)換仍然可以遵循ETL過程,但對(duì)于像數(shù)據(jù)自助服務(wù)這樣的全新概念,不能使用舊的流程和實(shí)踐。數(shù)據(jù)質(zhì)量、數(shù)據(jù)安全性、元數(shù)據(jù)管理和數(shù)據(jù)治理等標(biāo)準(zhǔn)ETL流程仍然與數(shù)據(jù)驅(qū)動(dòng)相關(guān)。
數(shù)據(jù)湖的影響
大數(shù)據(jù)的到來對(duì)ETL的整體流程造成了影響,ETL必須轉(zhuǎn)型并開始支持大數(shù)據(jù)生態(tài)系統(tǒng)技術(shù),以下是ETL受到大數(shù)據(jù)影響的具體方式:
1、ETL仍然與使用的DW環(huán)境相關(guān)。目前,DW和數(shù)據(jù)湖通過擴(kuò)展和改進(jìn)架構(gòu)相互補(bǔ)充,可能未來也是如此,因?yàn)樗行碌挠美际鞘褂脭?shù)據(jù)湖構(gòu)建的。
2、與使用ETL工具/引擎進(jìn)行處理并將RDBMS作為存儲(chǔ)來實(shí)現(xiàn)標(biāo)準(zhǔn)轉(zhuǎn)換相比,使用數(shù)據(jù)湖處理和存儲(chǔ)數(shù)據(jù)提供了單一平臺(tái),易于使用且更便宜。
3、數(shù)據(jù)湖擴(kuò)展了僅來自標(biāo)準(zhǔn)化ETL的分析,因?yàn)閿?shù)據(jù)湖可以實(shí)現(xiàn)首次獲取,然后是數(shù)據(jù)準(zhǔn)備,這是面向自助服務(wù)和ad-hoc的,這在ETL中是不可用的。
4、數(shù)據(jù)湖被用作數(shù)據(jù)登陸/歸檔,甚至RDBMS也無法作為存儲(chǔ)解決方案處理。因此,需要重新思考如何實(shí)施ETL工具。
5、ETL并不適合在非結(jié)構(gòu)化環(huán)境中使用,但是大數(shù)據(jù)流程可以存儲(chǔ)半結(jié)構(gòu)化和非結(jié)構(gòu)化數(shù)據(jù),這使得ETL必須向這些方向轉(zhuǎn)換。
隨著大數(shù)據(jù)而出現(xiàn)的新的體系結(jié)構(gòu)和技術(shù)都在逐漸削弱傳統(tǒng)ETL的作用,ETL工具需要支持新的技術(shù)才會(huì)有價(jià)值,需要向Hadoop和其他開放式架構(gòu)轉(zhuǎn)變,這也意味著傳統(tǒng)ETL供應(yīng)商的作用在減少。
重塑ETL,需要注意哪些事情:
1、與開源工具的結(jié)合程度
用于數(shù)據(jù)處理和存儲(chǔ)的專有技術(shù)正在失去與ETL工具的相關(guān)性,ETL供應(yīng)商應(yīng)該能夠支持所有開源項(xiàng)目,比如Spark、MR以及HDFS等。
2.以云為中心
ETL工具應(yīng)該支持具有內(nèi)部部署版本的云原生架構(gòu),有一些新的云原生ETL工具,如Snaplogic,Informatica Cloud和Talend Integration Cloud,它們提供了一個(gè)集成平臺(tái)即服務(wù)(iPaaS),可以解決基礎(chǔ)架構(gòu)方面的許多挑戰(zhàn),但仍有一些ETL功能方面的限制。與新興工具相比,這些ETL工具并非自助服務(wù),未來應(yīng)該更多地關(guān)注自助服務(wù)和機(jī)器學(xué)習(xí),可以盡量讓這些工具實(shí)現(xiàn) ad-hoc和自我訓(xùn)練。
3.為融合數(shù)據(jù)做準(zhǔn)備
ETL是一個(gè)以開發(fā)人員為中心的數(shù)據(jù)轉(zhuǎn)換工具,而融合數(shù)據(jù)準(zhǔn)備則是以自助服務(wù)為重點(diǎn)的數(shù)據(jù)轉(zhuǎn)換工具。隨著越來越多得開發(fā)人員使用數(shù)據(jù)湖進(jìn)行分析,無論是臨時(shí)流程還是標(biāo)準(zhǔn)流程,ETL都開始變得無關(guān)緊要,因?yàn)樽灾?wù)將變得更加普遍,兩者合并為創(chuàng)建單一數(shù)據(jù)轉(zhuǎn)換類別工具,這樣的工具可用于任何標(biāo)準(zhǔn)和臨時(shí)轉(zhuǎn)換。
4. AI / ML
AI / ML是一個(gè)推動(dòng)者,它通過自動(dòng)化流程幫助數(shù)據(jù)工程師和開發(fā)人員輕松快速完成工作。在AI算法和數(shù)據(jù)工作者之間創(chuàng)建一個(gè)溝通橋梁, 一旦建議被開發(fā)者接受,AI就會(huì)開始學(xué)習(xí),并根據(jù)建議調(diào)整分類和轉(zhuǎn)換。
因此,AI將繼續(xù)影響數(shù)據(jù)架構(gòu)的許多部分,包括數(shù)據(jù)分類、數(shù)據(jù)建模、數(shù)據(jù)存儲(chǔ)等自學(xué)習(xí)算法,ETL工具需要支持AI解決方案——部分供應(yīng)商已經(jīng)開始提供AI功能但離被用作標(biāo)準(zhǔn)解決方案還差得遠(yuǎn)。
5.自助設(shè)計(jì)能力
ETL工具應(yīng)該通過增強(qiáng)現(xiàn)有工具并為此類設(shè)計(jì)提供新工具,支持創(chuàng)建新的基于自助服務(wù)的設(shè)計(jì)/流程,這將有助于為企業(yè)創(chuàng)建新的基于自助服務(wù)的用例。
6.實(shí)時(shí)支持
通過開源技術(shù)提供實(shí)時(shí)支持,并對(duì)現(xiàn)有工具的體系結(jié)構(gòu)或?yàn)榇四康膭?chuàng)建新工具,實(shí)時(shí)讓該工具為大數(shù)據(jù)的所有用例提供支持。
7.大數(shù)據(jù)質(zhì)量
仍然沒有可以提高大數(shù)據(jù)質(zhì)量的ETL工具。很少有人能夠描述清楚大數(shù)據(jù)流程,也沒有基于規(guī)則的引擎來支持這種執(zhí)行。 ETL供應(yīng)商應(yīng)該專注于這個(gè)關(guān)鍵領(lǐng)域,以便能夠與Hadoop上基于平臺(tái)的新工具競(jìng)爭(zhēng)。
8.匹配和合并大數(shù)據(jù)支持
在MDM和ETL的灰色區(qū)域中 - 需要提供對(duì)數(shù)據(jù)湖中獲取數(shù)據(jù)的支持。這也是一個(gè)關(guān)鍵領(lǐng)域,通過使用ML技術(shù),這可以由供應(yīng)商輕松提供。
9.統(tǒng)一元數(shù)據(jù)目錄支持
大數(shù)據(jù)時(shí)代,企業(yè)需要訪問其所有數(shù)據(jù)目錄。由于ETL工具已經(jīng)是元數(shù)據(jù)的存儲(chǔ)庫,因此它們能夠支持這樣的要求,該功能需要自動(dòng)填充目錄,自動(dòng)對(duì)數(shù)據(jù)進(jìn)行分類/標(biāo)記,并啟用搜索功能和群組/專家評(píng)級(jí)。
10.以可重用性為中心的數(shù)據(jù)湖設(shè)計(jì)
ETL工具應(yīng)該通過設(shè)計(jì)為可重用組件提供支持,這個(gè)需求已經(jīng)出現(xiàn)很久了,是時(shí)候重視起來了。
結(jié)論
由于大數(shù)據(jù)時(shí)代的到來,企業(yè)對(duì)數(shù)據(jù)的掌握更加重視,都希望以更低的成本獲得更好的見解,ETL工具需要根據(jù)新的需求進(jìn)行改造,供應(yīng)商可能會(huì)逐漸淡出ETL世界,但還是可以將ETL作為數(shù)據(jù)轉(zhuǎn)換活動(dòng)的基礎(chǔ)工具提供。 在國(guó)外,類似于Talend、Informatica等ETL供應(yīng)商已經(jīng)認(rèn)識(shí)到了這些挑戰(zhàn),并創(chuàng)建了專門針對(duì)大數(shù)據(jù)和云計(jì)算的新產(chǎn)品。