34個ETL子系統-3:數據抽取系統

數據抽取系統,就是從不同的數據源裏抽取數據,並將其輸入到ETL流程中。數據的抽取方式有兩種:基於流的抽取和基於文件的抽取。這兩種方式,從本質上講,都是數據流。唯一有區別的地方,基於靜態的文件時進行抽取時,數據源是不變的,當然,如果是要抽取日誌文件,則源也是隨時發生變化的。

     在數據的抽取實現過程中,需要重點考慮的是,當任務失敗後,如何進行恢復。當數據源是靜態時,重新啓動作業即可。當數據源是動態時,例如抽取的是事務型的數據庫,則源已發生變化。對這類的數據抽取,就非常困難。

    考慮到數據倉庫,和OLTP的系統不同,另外,在線事務型的數據庫,數據隨時發生變化,直接將這種數據抽取到數據倉庫,即使做到數據倉庫和源系統完全的實時性一致,對進行分析也是沒有任何意義。因此,將在線事務系統進行改造,重要的事務變動,都記錄賬單。例如,用戶的有登錄,則記錄一條賬單日誌,用戶登出時,再記錄一條日誌。用戶的餘額發生變化了,就要記錄下變動了多少,最新餘額是多少。這些賬單日誌,再用自增序列ID進行順序化標記,就能做到增量的抽取,從而實現對在線業務系統的抽取。這些賬單日誌,如實反映了業務的變化,從這些日誌中,能還原任意時刻的業務狀態。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章