比kettle好用的開(kāi)源etl BI軟件的ETL用開(kāi)源的好,還是自研的好?
BI軟件的ETL用開(kāi)源的好,還是自研的好?視預(yù)算而定ETL工作的實(shí)質(zhì)是從各種數(shù)據(jù)源中提取數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行轉(zhuǎn)換,最后在數(shù)據(jù)倉(cāng)庫(kù)的維度建模后將數(shù)據(jù)加載并填充到表中。只有填寫(xiě)了這些維度/事實(shí)表,ETL工作才
BI軟件的ETL用開(kāi)源的好,還是自研的好?
視預(yù)算而定
ETL工作的實(shí)質(zhì)是從各種數(shù)據(jù)源中提取數(shù)據(jù),對(duì)數(shù)據(jù)進(jìn)行轉(zhuǎn)換,最后在數(shù)據(jù)倉(cāng)庫(kù)的維度建模后將數(shù)據(jù)加載并填充到表中。只有填寫(xiě)了這些維度/事實(shí)表,ETL工作才能完成。接下來(lái),分別闡述了提取、轉(zhuǎn)換和加載的三個(gè)步驟:數(shù)據(jù)倉(cāng)庫(kù)面向分析,操作數(shù)據(jù)庫(kù)面向應(yīng)用。顯然,并非所有用于支持業(yè)務(wù)系統(tǒng)的數(shù)據(jù)都是分析所必需的。因此,本階段主要根據(jù)數(shù)據(jù)倉(cāng)庫(kù)主題和主題字段確定從應(yīng)用數(shù)據(jù)庫(kù)中提取的編號(hào)。
在具體的開(kāi)發(fā)過(guò)程中,開(kāi)發(fā)人員必須經(jīng)常發(fā)現(xiàn)數(shù)據(jù)倉(cāng)庫(kù)建模后某些ETL步驟與表描述不匹配。這時(shí),需要重新檢查和設(shè)計(jì)需求,重新進(jìn)行ETL。正如本文在數(shù)據(jù)庫(kù)系列中提到的,任何涉及需求的更改都需要重新開(kāi)始并更新需求文檔。
轉(zhuǎn)換步驟主要是指轉(zhuǎn)換提取的數(shù)據(jù)結(jié)構(gòu)以滿足目標(biāo)數(shù)據(jù)倉(cāng)庫(kù)模型的過(guò)程。此外,轉(zhuǎn)換過(guò)程還對(duì)數(shù)據(jù)質(zhì)量負(fù)責(zé),這也稱為數(shù)據(jù)清洗。這里可以參考數(shù)據(jù)質(zhì)量的內(nèi)容。
在加載過(guò)程中,為確保數(shù)據(jù)質(zhì)量而提取和轉(zhuǎn)換的數(shù)據(jù)將加載到目標(biāo)數(shù)據(jù)倉(cāng)庫(kù)中。加載可以分為兩種類型:首次加載和刷新加載。其中,首次加載會(huì)涉及大量數(shù)據(jù),而刷新加載是一種微批量加載。
我們可以說(shuō),隨著各種分布式和云計(jì)算工具的興起,ETL實(shí)際上已經(jīng)成為ELT。也就是說(shuō),業(yè)務(wù)系統(tǒng)本身不會(huì)做轉(zhuǎn)換工作,而是將數(shù)據(jù)導(dǎo)入到分布式平臺(tái)進(jìn)行簡(jiǎn)單清洗后,讓平臺(tái)進(jìn)行清洗和轉(zhuǎn)換工作。這樣可以充分利用平臺(tái)的分布式特點(diǎn),使業(yè)務(wù)系統(tǒng)更加專注于業(yè)務(wù)本身。