1 etl基本概念和術語
1.1 etl
extract-transform-load的縮寫,資料抽取(extract)、轉換(transform)、裝載(load)的過程。
1.2 dw
datawarehousing,根據bill.inmon的定義,「資料倉儲是面向主題的、整合的、穩定的、隨時間變化的,主要用於決策支援的資料庫系統」。
1.3 metadata
元資料,就是描述資料的資料,指在資料倉儲建設過程中所產生的有關資料來源定義、目標定義、轉換規則等相關的關鍵資料。
1.4 etl在資料倉儲中的位置
1.5 資料質量
正確性(accuracy):資料是否正確體現在現實或可證實的**
完整性(integrity):資料之間的參照完整性是否存在或一致
致性(consistency):資料是否被一致的定義或理解
完備性(completeness):所有需要的資料是否都存在
有效性(validity):資料是否在企業定義的可接受的範圍之內
時效性(timeliness):資料在需要的時間是否有效
可獲取性(accessbility):資料是否易於獲取、易於理解和易於使用
1.6 資料質量原因
業務系統不同時期資料模型不一致
業務系統不同時期業務過程有變化
各個源系統之間相關資訊不一致
遺留系統和新業務、管理系統資料整合不完備帶來的不一致性
源系統缺少輸入驗證過程,不能阻止非法格式的資料進入系統
可以驗證但不能改正資料,驗證程式不能發現格式正確但內容不正確的錯誤
源系統不受控制的更改,而這種更改不能及時的傳播到受影響的系統
資料由多個交叉的訪問介面,難以統一管理資料質量問題
缺少參照完整性檢查低劣的源系統設計
資料轉換錯誤,比如etl過程錯誤或資料遷移過程的錯誤
源系統與資料倉儲系統的資料組織方式完全不同
1.7 資料轉換
空值處理
規範化資料格式
拆分資料
驗證資料合法性
資料替換
實現資料規則過濾
資料排序
資料型別統一轉換
2 邏輯架構圖
2.1 extract
設計原則
為提高etl效率,資料在進入etl系統後的exf檔案都將轉換為flat text檔案格式
從etl程式設計的靈活性和整體結構的一致性考慮,盡量採用pull的方式,減少對源系統的影響和對其他開發隊伍的依賴,並減少網路壓力
由於batch windows的限制,如果日源資料量大於5gb則必須考慮採用push的方式以提高傳送速度,如,可以由源系統將資料轉換為flat text檔案後,由etl程式採用ftp的方式進行傳送
exf的檔案格式接近資料來源的資料結構定義
在extract過程中過濾資料倉儲不需要的資料記錄和字段
push和pull
push
在源系統上根據定義的資料格式將每日增量資料生成資料檔案,再通過ftp或檔案拷貝的方式傳送給etl程式處理。
pull
由etl程式通過drda或odbc等資料庫協議直接訪問源資料庫獲取所需資料進行處理。
2.2 資料轉換過程中產生的檔案
exf (extracted format)
由資料來源extract產生的檔案,檔案結構與source相似,經過過濾,部分欄位被忽略。
cif (common inte***ce format)
cif是etl經過c/s/s過程產生的中間資料檔案。
plf (pre-load format)
經過資料轉換,用於直接載入到資料倉儲的文字檔案,其資料結構與資料倉儲中的表定義一致。
3 資料處理流程圖
4 資料對照開發流程
ETL增量抽取方法講解
一 etl體系結構 資料庫 抽取 轉換 載入 目的資料來源 二 etl抽取方案 1 全量抽取 全量抽取類似於資料遷移或資料複製,它將資料來源中的表或檢視的資料原封不動的從資料庫中抽取出來,並轉換成自己的etl工具可以識別的格式,全量抽取比較簡單。全量抽取一般只在系統初始化時使用,全量一次後,就要每天...
ETL方法與過程基本概念
1 etl基本概念和術語 1.1 etl extract transform load的縮寫,資料抽取 extract 轉換 transform 裝載 load 的過程。1.2 dw datawarehousing,根據bill.inmon的定義,資料倉儲是面向主題的 整合的 穩定的 隨時間變化的,...
ETL入門基礎與設計講解
etl是將業務系統的資料經過抽取 清洗轉換之後載入到資料倉儲的過程,目的是將企業中的分散 零亂 標準不統一的資料整合到一起,為企業的決策提供分析依據。etl是bi專案重要的乙個環節。通常情況下,在bi專案中etl會花掉整個專案的1 3的時間,etl設計的好壞直接關接到bi專案的成敗。etl的設計分三...