如果你問企業“ETL工具重要嗎?”我想答案一定是肯定的;如果你問企業“一定要選用商用ETL工具嗎?”,這個結果就不見得那么統一了。ETL供應商足以應對不斷變化的數據環境而更好得生存嗎?ETL起源于數據倉庫,雖然開發人員的學習曲線很高,但它提供了許多好處,比如分布式處理、可維護性、基于UI而不是腳本等。
耦合對編程而言是一個舊概念,但在涉及數據處理方式時仍然是一個相對較新的概念。眾所周知,ETL流緊密耦合,但現在的數據流管道是松散耦合的,這種方法也有缺點,例如用暗數據創建數據沼澤。
標準化轉換仍然可以遵循ETL過程,但對于像數據自助服務這樣的全新概念,不能使用舊的流程和實踐。數據質量、數據安全性、元數據管理和數據治理等標準ETL流程仍然與數據驅動相關。
數據湖的影響
大數據的到來對ETL的整體流程造成了影響,ETL必須轉型并開始支持大數據生態系統技術,以下是ETL受到大數據影響的具體方式:
1、ETL仍然與使用的DW環境相關。目前,DW和數據湖通過擴展和改進架構相互補充,可能未來也是如此,因為所有新的用例都是使用數據湖構建的。
2、與使用ETL工具/引擎進行處理并將RDBMS作為存儲來實現標準轉換相比,使用數據湖處理和存儲數據提供了單一平臺,易于使用且更便宜。
3、數據湖擴展了僅來自標準化ETL的分析,因為數據湖可以實現首次獲取,然后是數據準備,這是面向自助服務和ad-hoc的,服務器租用 免備案服務器,這在ETL中是不可用的。
4、數據湖被用作數據登陸/歸檔,甚至RDBMS也無法作為存儲解決方案處理。因此,國內服務器租用 服務器托管,需要重新思考如何實施ETL工具。
5、ETL并不適合在非結構化環境中使用,但是大數據流程可以存儲半結構化和非結構化數據,這使得ETL必須向這些方向轉換。
隨著大數據而出現的新的體系結構和技術都在逐漸削弱傳統ETL的作用,ETL工具需要支持新的技術才會有價值,需要向Hadoop和其他開放式架構轉變,這也意味著傳統ETL供應商的作用在減少。
重塑ETL,需要注意哪些事情:
1、與開源工具的結合程度
用于數據處理和存儲的專有技術正在失去與ETL工具的相關性,ETL供應商應該能夠支持所有開源項目,比如Spark、MR以及HDFS等。
2.以云為中心
ETL工具應該支持具有內部部署版本的云原生架構,有一些新的云原生ETL工具,如Snaplogic,Informatica Cloud和Talend Integration Cloud,它們提供了一個集成平臺即服務(iPaaS),可以解決基礎架構方面的許多挑戰,但仍有一些ETL功能方面的限制。與新興工具相比,這些ETL工具并非自助服務,未來應該更多地關注自助服務和機器學習,可以盡量讓這些工具實現 ad-hoc和自我訓練。
3.為融合數據做準備
ETL是一個以開發人員為中心的數據轉換工具,而融合數據準備則是以自助服務為重點的數據轉換工具。隨著越來越多得開發人員使用數據湖進行分析,無論是臨時流程還是標準流程,ETL都開始變得無關緊要,因為自助服務將變得更加普遍,兩者合并為創建單一數據轉換類別工具,這樣的工具可用于任何標準和臨時轉換。
4. AI / ML
AI / ML是一個推動者,它通過自動化流程幫助數據工程師和開發人員輕松快速完成工作。在AI算法和數據工作者之間創建一個溝通橋梁, 一旦建議被開發者接受,AI就會開始學習,并根據建議調整分類和轉換。
因此,AI將繼續影響數據架構的許多部分,包括數據分類、數據建模、數據存儲等自學習算法,ETL工具需要支持AI解決方案——部分供應商已經開始提供AI功能但離被用作標準解決方案還差得遠。
5.自助設計能力
ETL工具應該通過增強現有工具并為此類設計提供新工具,支持創建新的基于自助服務的設計/流程,這將有助于為企業創建新的基于自助服務的用例。
6.實時支持
通過開源技術提供實時支持,并對現有工具的體系結構或為此目的創建新工具,實時讓該工具為大數據的所有用例提供支持。
7.大數據質量
仍然沒有可以提高大數據質量的ETL工具。很少有人能夠描述清楚大數據流程,也沒有基于規則的引擎來支持這種執行。 ETL供應商應該專注于這個關鍵領域,以便能夠與Hadoop上基于平臺的新工具競爭。
8.匹配和合并大數據支持
在MDM和ETL的灰色區域中 - 需要提供對數據湖中獲取數據的支持。這也是一個關鍵領域,通過使用ML技術,這可以由供應商輕松提供。
9.統一元數據目錄支持