- 產品
- 產品解決方案
- 行業解決方案
- 案例
- 數據資產入表
- 賦能中心
- 伙伴
- 關于
時間:2020-07-31來源:知乎瀏覽數:2580次
下圖為 ETL 體系結構,它是主流 ETL 產品框架的主要組成部分。ETL 是指從源系統中提取數據,轉換數據為一個標準的格式, 并加載數據到目標數據存儲區,通常是數據倉庫。

(一)數據抽取
數據抽取就是從外部不同的數據源中抽取數據,需要確認數 據的來源和以及將到的數據抽取技術。數據抽取分為數據增量抽 取和全量抽取。增量抽取一般有 4 種抽取模式:
①時間戳方式:通過比較需要抽取的數據庫系統時間戳與抽取源表的時間戳字段的 值來決定抽取哪些數據,這種方式需要源表中存在一個或多個時間戳字段,并且其值隨著新紀錄的增加而不斷增加,執行數據抽取時,程序通過時間戳對數據進行過濾,抽取設定的時間戳的數據;
②全表對比方式:每次從源表中讀取所有記錄,然后逐條比較源表 和目標表的記錄,將新增和修改的記錄過濾讀取出來,采用 MD5 校驗碼。
③觸發器方式:根據抽取要求,要建立插入、修改和刪除 3 個 觸發器,該方法需要用戶在源數據庫中有創建觸發器和臨時表的 權限,觸發器可以捕獲新新增的數據到臨時表中,在進行抽取時, 程序會自動從臨時表中讀取新增的數據。
④志表方式:該方法是在 數據庫中創建業務日志表,當系統監控的業務數據發生特定的變 化時,日志表內容會記錄更新。日志表的維護需要編寫特定的程序代碼來完成。
(二)數據轉換
數據轉換是 ETL 過程中最為繁瑣的部分,主要任務包括數據 類型轉換、數據格式轉換等,可以在數據抽取過程中利用關系數據 庫的特性進行轉換和在 ETL 引擎工具中完成。 一般來說,從數據源中抽取的數據是不符合入數據倉的要求, 有必要對數據進行轉換、清洗、拆分、匯總等處理,解決數據格式的不一致、數據輸入錯誤、數據不完整等問題。進行數據轉換的原因 有以下幾點:
①數據不完整性:在數據庫中有信息缺失,從而導致數據的不完整性。解決的辦法是找到錯誤信息進行補全;
②數據格式錯誤:指的是缺失數據值或數據超出數據范圍的問題,解決辦法 是定義域完整性進行格式約束;
③數據不一致性:表現為主表與子 表的數據不能匹配,一般原因是缺少外鍵的定義,需要找由業務部 門對數據進行核對,修正后再進行抽取。
(三)數據加載
數據加載一般是 ETL 的最后一步。是值將抽取和轉換的數據 從數據臨時表或者文件中導入到指定的數據倉庫,裝載數據的最 佳方法一般是取決于所執行操作的類型以及需要裝入多少數據。 有兩種裝載方式:
①一種是直接 SQL 語句進行操作;
②采用關系數 據庫特有的裝載工具批量進行裝載,甚至可以采用多程并行處理 方式加載數據,提高程序運行效率。
當選擇 ETL 產品時, 最關鍵的因素是考慮這個產品在你的指定的環境和配置下,這個產品的執行性能。當你選擇一個 ETL 工具 時,需要考慮選中工具的因素有:
(1)能夠支持分布的數據整合需 要并且要允許你借助于手頭的資源和技術
(2)數據整合工具的使 用不應該干擾你現在的環境, 而是應該充分利用由 RDBMS 和 SQL 提供的能力和功能。
通過 ETL 工具,實現 ETL 數據抽取,主要是原因是維護容易。 目前市場上主流的 ETL 工具可以分為兩大類:一類是專業 ETL 廠 商的產品,這類產品一般都具備較完善的體系結構和久經考驗的 產品,功能復雜而詳盡;
另一類是整體數據倉庫方案供應商,他們在提供數據倉庫存儲、設計、展現工具的同時也 提供相應的 ETL 工具。比如億信華辰的數據工廠系統等
在商業領域中,商業智能(Business Intelligence)的關鍵是 從許多的來自不同的企業運作系統的數據,經過提取和清理獲得 有用并且準確的數據,經 ETL 過程,合并到企業級的數據倉庫里, 從而得到企業數據的一個全局視圖,為管理者決策過程提供支持。 ETL 在整個 BI 過程中起到承上啟下的作用,ETL 的成敗將直接影 響整個 BI 項目的成功與否。ETL 技術可以使得商業分析速度加 快,使公司的業務獲得決策更多的決策時間。隨著 ETL 技術成本下 降和計算能力的增長, 分析技術開始從內存與存儲價格的下降中 獲益。同時,隨著開源軟件挖掘出更有價值的數據,從海量的數據 中發現之前用戶的真正搜索需要的數據,支撐決策。
市面上大多BI工具都不含ETL功能,在進行上述項目時,通常會用到BI、ETL兩個工具,成本高、花費時間長。而億信ABI基于這個需求,依賴十余年數倉經驗,推出可視化ETL功能,通過簡單的拖拽就可以完成ETL過程。