更新時(shí)間:2022年07月21日16時(shí)23分 來源:傳智教育 瀏覽次數(shù):
每個(gè)ETL工具都會(huì)有自己的設(shè)計(jì)原則,Kettle也不例外。Kettle的設(shè)計(jì)原則一共有7點(diǎn),具體內(nèi)容如下。
1.易于開發(fā)
作為數(shù)據(jù)倉庫和ETL的開發(fā)者,如果只想把時(shí)間用在創(chuàng)建BI解決方案上,那么任何用于軟件安裝和配置的時(shí)間都是一種浪費(fèi)。例如,為了創(chuàng)建數(shù)據(jù)庫連接,很多與Kettle類似的工具都要求用戶手工輸入數(shù)據(jù)庫驅(qū)動(dòng)的類名和JDBC URL連接串,雖然用戶可以通過互聯(lián)網(wǎng)搜索到這些信息,但這明顯把用戶的注意力轉(zhuǎn)移到了技術(shù)方面,并非業(yè)務(wù)方面,而Kettle就是盡量避免這類問題出現(xiàn)。
2.避免自定義開發(fā)
一般來說,ETL工具的作用是使復(fù)雜的事情變得簡(jiǎn)單,簡(jiǎn)單的事情更簡(jiǎn)單。ETL提供了標(biāo)準(zhǔn)化的構(gòu)建組件滿足ETL開發(fā)人員不斷重復(fù)的需求,通過手工編寫Java代碼或Java腳本代碼實(shí)現(xiàn)一些功能,但是增加的代碼會(huì)給項(xiàng)目增加復(fù)雜度和維護(hù)成本,因此要盡量避免手工開發(fā),可組合使用已提供的組件完成任務(wù)。
3.所有功能都能通過用戶界面完成
對(duì)于“所有功能都能通過用戶界面完成”這一黃金準(zhǔn)則也有幾個(gè)例外(如kettle.properties和shared.xmr文件就是兩個(gè)例外,不能通過Kettle界面修改這兩個(gè)配置文件,而是需要通過手工修改),如果不直接把所有功能通過界面的方式提供給用戶,那么就是在浪費(fèi)開發(fā)人員的時(shí)間,也是在浪費(fèi)用戶的時(shí)間。
4.沒有命名限制
ETL轉(zhuǎn)換里有各種各樣的名稱,如數(shù)據(jù)庫連接、轉(zhuǎn)換、步驟、數(shù)據(jù)字段、作業(yè)等都有一個(gè)名稱。若在命名時(shí)考慮到一些限制(如長度、選擇的字符),就會(huì)使工作變得煩瑣。ETL只需要足夠智能化的處理ETL開發(fā)人員設(shè)置的各種名稱。
5.透明
如果有ETL工具需要了解轉(zhuǎn)換中某一部分工作是如何完成的,那么這個(gè)ETL工具就是不透明的。若想實(shí)現(xiàn)ETL工具里的某一個(gè)功能,就需要準(zhǔn)確地知道這個(gè)功能是如何完成的。允許用戶看到ETL過程中各部分運(yùn)行狀態(tài)也很重要,這樣可以加快開發(fā)速度,降低維護(hù)成本。
6.靈活的數(shù)據(jù)通道
對(duì)ETL開發(fā)者來說,創(chuàng)造性極為重要,不但可以讓你享受到工作的樂趣,而且還能讓你以最快的方式開發(fā)出ETL方案。Kettle在數(shù)據(jù)的發(fā)送、接收方式上設(shè)計(jì)得盡可能靈活。Kettle可以在文本文件、關(guān)系數(shù)據(jù)庫等不同數(shù)據(jù)之間復(fù)制和分發(fā)數(shù)據(jù)。
7.只映射需要映射的字段
在一些ETL工具里可以看到數(shù)百行的輸入和輸出映射,對(duì)于維護(hù)人員來說,這是一個(gè)很強(qiáng)大的功能。在ETL開發(fā)過程中,字段在不斷地變化,大量的字段映射也會(huì)增加維護(hù)的成本,而Kettle的一個(gè)核心原則是將ETL流程中所有未指定的字段自動(dòng)傳遞到下一個(gè)組件中,因此極大地降低了維護(hù)的成本。也就是說,輸入的字段會(huì)自動(dòng)出現(xiàn)在輸出流中,除非中間過程專門設(shè)置了終止某個(gè)字段的傳遞。
大數(shù)據(jù)知識(shí)培訓(xùn):Hadoop的生態(tài)系統(tǒng)分別是什么?(上)
2022-07-15大數(shù)據(jù)培訓(xùn):Zookeeper的特性是什么?
2022-07-14HDFS的優(yōu)點(diǎn)有哪些?
2022-07-13大數(shù)據(jù)培訓(xùn):HDFS的Java API操作
2022-07-12大數(shù)據(jù)培訓(xùn):HDFS讀數(shù)據(jù)流程
2022-07-12關(guān)系型數(shù)據(jù)庫與非關(guān)系型數(shù)據(jù)庫的區(qū)別
2022-07-11北京校區(qū)