亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > 綜合 > 正文

《BI那點兒事》ETL中的關鍵技術

2024-07-21 02:48:23
字體:
來源:轉載
供稿:網友
《BI那點兒事》ETL中的關鍵技術

ETL(Extract/Transformation/Load)是BI/DW的核心和靈魂,按照統一的規則集成并提高數據的價值,是負責完成數據從數據源向目標數據倉庫轉化的過程,是實施數據倉庫的重要步驟。

ETL過程中的主要環節就是數據抽取、數據轉換和加工、數據裝載。為了實現這些功能,各個ETL工具一般會進行一些功能上的擴充,例如工作流、調度引擎、規則引擎、腳本支持、統計信息等。

數據抽取

數據抽取是從數據源中抽取數據的過程。實際應用中,數據源較多采用的是關系數據庫。從數據庫中抽取數據一般有以下幾種方式。

(1)全量抽取 全量抽取類似于數據遷移或數據復制,它將數據源中的表或視圖的數據原封不動的從數據庫中抽取出來,并轉換成自己的ETL工具可以識別的格式。全量抽取比較簡單。

(2)增量抽取 增量抽取只抽取自上次抽取以來數據庫中要抽取的表中新增或修改的數據。在ETL使用過程中。增量抽取較全量抽取應用更廣。如何捕獲變化的數據是增量抽取的關鍵。對捕獲方法一般有兩點要求:準確性,能夠將業務系統中的變化數據按一定的頻率準確地捕獲到;性能,不能對業務系統造成太大的壓力,影響現有業務。目前增量數據抽取中常用的捕獲變化數據的方法有:

a.觸發器:在要抽取的表上建立需要的觸發器,一般要建立插入、修改、刪除三個觸發器,每當源表中的數據發生變化,就被相應的觸發器將變化的數據寫入一個臨時表,抽取線程從臨時表中抽取數據,臨時表中抽取過的數據被標記或刪除。觸發器方式的優點是數據抽取的性能較高,缺點是要求業務表建立觸發器,對業務系統有一定的影響。

b.時間戳:它是一種基于快照比較的變化數據捕獲方式,在源表上增加一個時間戳字段,系統中更新修改表數據的時候,同時修改時間戳字段的值。當進行數據抽取時,通過比較系統時間與時間戳字段的值來決定抽取哪些數據。有的數據庫的時間戳支持自動更新,即表的其它字段的數據發生改變時,自動更新時間戳字段的值。有的數據庫不支持時間戳的自動更新,這就要求業務系統在更新業務數據時,手工更新時間戳字段。同觸發器方式一樣,時間戳方式的性能也比較好,數據抽取相對清楚簡單,但對業務系統也有很大的傾入性(加入額外的時間戳字段),特別是對不支持時間戳的自動更新的數據庫,還要求業務系統進行額外的更新時間戳操作。另外,無法捕獲對時間戳以前數據的delete和update操作,在數據準確性上受到了一定的限制。

c.全表比對:典型的全表比對的方式是采用md5校驗碼。ETL工具事先為要抽取的表建立一個結構類似的MD5臨時表,該臨時表記錄源表主鍵以及根據所有字段的數據計算出來的MD5校驗碼。每次進行數據抽取時,對源表和MD5臨時表進行MD5校驗碼的比對,從而決定源表中的數據是新增、修改還是刪除,同時更新MD5校驗碼。MD5方式的優點是對源系統的傾入性較?。▋H需要建立一個MD5臨時表),但缺點也是顯而易見的,與觸發器和時間戳方式中的主動通知不同,MD5方式是被動的進行全表數據的比對,性能較差。當表中沒有主鍵或唯一列且含有重復記錄時,MD5方式的準確性較差。

d.日志對比:通過分析數據庫自身的日志來判斷變化的數據。Oracle的改變數據捕獲(CDC,ChangedDataCapture)技術是這方面的代表。CDC特性是在Oracle9i數據庫中引入的。CDC能夠幫助你識別從上次抽取之后發生變化的數據。利用CDC,在對源表進行insert、update或delete等操作的同時就可以提取數據,并且變化的數據被保存在數據庫的變化表中。這樣就可以捕獲發生變化的數據,然后利用數據庫視圖以一種可控的方式提供給目標系統。CDC體系結構基于發布者/訂閱者模型。發布者捕捉變化數據并提供給訂閱者。訂閱者使用從發布者那里獲得的變化數據。通常,CDC系統擁有一個發布者和多個訂閱者。發布者首先需要識別捕獲變化數據所需的源表。然后,它捕捉變化的數據并將其保存在特別創建的變化表中。它還使訂閱者能夠控制對變化數據的訪問。訂閱者需要清楚自己感興趣的是哪些變化數據。一個訂閱者可能不會對發布者發布的所有數據都感興趣。訂閱者需要創建一個訂閱者視圖來訪問經發布者授權可以訪問的變化數據。CDC分為同步模式和異步模式,同步模式實時的捕獲變化數據并存儲到變化表中,發布者與訂閱都位于同一數據庫中。異步模式則是基于Oracle的流復制技術。

ETL處理的數據源除了關系數據庫外,還可能是文件,例如txt文件、Excel文件、xml文件等。對文件數據的抽取一般是進行全量抽取,一次抽取前可保存文件的時間戳或計算文件的MD5校驗碼,下次抽取時進行比對,如果相同則可忽略本次抽取。

數據轉換和加工

從數據源中抽取的數據不一定完全滿足目的庫的要求,例如數據格式的不一致、數據輸入錯誤、數據不完整等等,因此有必要對抽取出的數據進行數據轉換和加工。 數據的轉換和加工可以在ETL引擎中進行,也可以在數據抽取過程中利用關系數據庫的特性同時進行。

(1)ETL引擎中的數據轉換和加工

ETL引擎中一般以組件化的方式實現數據轉換。常用的數據轉換組件有字段映射、數據過濾、數據清洗、數據替換、數據計算、數據驗證、數據加解密、數據合并、數據拆分等。這些組件如同一條流水線上的一道道工序,它們是可插拔的,且可以任意組裝,各組件之間通過數據總線共享數據。 有些ETL工具還提供了腳本支持,使得用戶可以以一種編程的方式定制數據的轉換和加工行為。

(2)在數據庫中進行數據加工

關系數據庫本身已經提供了強大的SQL、函數來支持數據的加工,如在SQL查詢語句中添加where條件進行過濾,查詢中重命名字段名與目的表進行映射,substr函數,case條件判斷等等。

相比在ETL引擎中進行數據轉換和加工,直接在SQL語句中進行轉換和加工更加簡單清晰,性能更高。對于SQL語句無法處理的可以交由ETL引擎處理。

數據裝載

將轉換和加工后的數據裝載到目的庫中通常是ETL過程的最后步驟。裝載數據的最佳方法取決于所執行操作的類型以及需要裝入多少數據。當目的庫是關系數據庫時,一般來說有兩種裝載方式:

(1)直接SQL語句進行insert、update、delete操作。

(2)采用批量裝載方法,如bcp、bulk、關系數據庫特有的批量裝載工具或api。 大多數情況下會使用第一種方法,因為它們進行了日志記錄并且是可恢復的。但是,批量裝載操作易于使用,并且在裝入大量數據時效率較高。使用哪種數據裝載方法取決于業務系統的需要。

常見的數據質量問題

數據質量

問題

數據問題示例

格式

值是否按照一致的格式標準?

電話號碼 # 可能顯示為 xxxxxxxxxx, (xxx) xxx-xxxx, 1.xxx.xxx.xxxx, 等.

標準

數據元素是否一致性定義和理解 ?

一個系統性別代碼 = M, F, U ,另一個系統性別代碼 = 0, 1, 2

一致性

值是否代表統一的含義?

營業額是否總是顯示為美元還是也有可能為?

完整性

是否所有必須的數據都包含?

20% 的顧客的 last name 為空, 50% 的郵政編碼為 99999

精確性

數據是否準確地反映現實或可驗證的數據來源?

供應商顯示為‘活動’,但是其實6年前已經和它沒有業務往來。

有效性

數據值是否在接受的范圍內?

薪水值應該在 60,000-120,000

重復性

數據多次出現

John Ryan 和 Jack Ryan 都在系統中出現了 他們是同一個人嗎?


上一篇:iOS

下一篇:sql游標的使用入門

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲欧美精品suv| 欧美性色视频在线| 欧美国产日韩精品| 欧美精品第一页在线播放| 日韩av在线一区二区| 国产精品亚洲综合天堂夜夜| 亚洲社区在线观看| 国内久久久精品| 日韩一区二区久久久| 色婷婷亚洲mv天堂mv在影片| 成人乱人伦精品视频在线观看| 日韩欧美国产黄色| 国产伦精品免费视频| 波霸ol色综合久久| 中文字幕亚洲精品| 日本午夜人人精品| 91夜夜揉人人捏人人添红杏| 成人看片人aa| 久久久久久欧美| 国产精品v片在线观看不卡| 欧美高清第一页| 久久亚洲精品一区| 午夜精品一区二区三区在线播放| 国产a∨精品一区二区三区不卡| 久久精品久久精品亚洲人| 欧美精品videos| 亚洲第一视频在线观看| 国产精品成av人在线视午夜片| 久久视频中文字幕| 91国产精品91| 亚洲变态欧美另类捆绑| 欧美大片第1页| x99av成人免费| 亚洲www在线观看| 国产亚洲一级高清| 国产福利视频一区二区| 国产视频精品久久久| 欧美激情视频一区| 日韩在线资源网| 国内外成人免费激情在线视频网站| 国产成人免费91av在线| 欧美不卡视频一区发布| 伊人伊人伊人久久| 美女av一区二区| 亚洲天堂av电影| 国产精品久久在线观看| 色综合久久中文字幕综合网小说| 国产日韩欧美中文在线播放| 超碰91人人草人人干| 国产日韩换脸av一区在线观看| 亚洲娇小xxxx欧美娇小| 国产精品美女久久| 久久91亚洲精品中文字幕奶水| 亚洲国产欧美久久| 91久久精品国产91久久性色| 日本一区二区三区四区视频| 国产91色在线播放| 亚洲日韩第一页| 久久伊人精品一区二区三区| 亚洲视频999| 亚洲精品一区二区三区婷婷月| 中文字幕视频在线免费欧美日韩综合在线看| 日韩av影片在线观看| 久久久久久久999精品视频| 中文字幕免费精品一区| 色偷偷av亚洲男人的天堂| 亚洲国产天堂久久国产91| 精品国产91久久久久久老师| 国产一区二区丝袜| 欧美精品18videosex性欧美| 亚洲一区二区三区xxx视频| 欧洲成人性视频| 在线成人激情视频| 91成人在线播放| 欧洲亚洲女同hd| 亚洲嫩模很污视频| 九九热最新视频//这里只有精品| 综合网日日天干夜夜久久| 狠狠躁天天躁日日躁欧美| 国内精品久久影院| 久久久久久国产三级电影| 欧美激情xxxx性bbbb| 亚洲全黄一级网站| 亚洲精品国产精品自产a区红杏吧| 中文字幕欧美精品在线| 国产亚洲精品成人av久久ww| 日韩一区视频在线| 亚洲一区二区三区在线免费观看| 一二美女精品欧洲| 亚洲综合在线中文字幕| 欧美成人精品一区二区三区| 欧美尤物巨大精品爽| 亚洲天堂免费观看| 国产精品久久久久久亚洲影视| 国产ts人妖一区二区三区| 欧美日韩一区二区在线播放| **欧美日韩vr在线| 国产成人精品av在线| 欧美久久精品一级黑人c片| 91精品国产综合久久久久久久久| 91精品久久久久久| 97视频人免费观看| 不卡中文字幕av| 超碰日本道色综合久久综合| 亚洲国产欧美一区二区丝袜黑人| 欧美激情视频网址| 国产精品热视频| 亚洲精品videossex少妇| 国产精品国产三级国产aⅴ9色| 欧美日韩aaaa| 亚洲黄色在线看| 操91在线视频| 中文字幕亚洲欧美日韩高清| 欧美激情在线播放| 亚洲欧美日韩国产中文| 日韩av资源在线播放| 亚洲男人第一网站| 美女国内精品自产拍在线播放| 91夜夜揉人人捏人人添红杏| 欧美乱大交做爰xxxⅹ性3| 国产精品一香蕉国产线看观看| 国产成人综合精品在线| 日韩在线视频观看正片免费网站| 深夜福利一区二区| 丝袜美腿精品国产二区| 久久久国产精品亚洲一区| 精品视频中文字幕| 国产精品www网站| 插插插亚洲综合网| 日本19禁啪啪免费观看www| 国产精品一区二区三区久久久| 中文字幕亚洲无线码在线一区| 精品亚洲一区二区三区在线播放| 色综合天天综合网国产成人网| 日韩免费观看在线观看| 亚洲石原莉奈一区二区在线观看| 国产在线播放不卡| 欧美精品一本久久男人的天堂| 欧美日韩aaaa| 日韩av影视综合网| 国产精品久久久久一区二区| 91精品国产电影| 欧美—级a级欧美特级ar全黄| 久久国产精品久久精品| 在线视频欧美性高潮| 51色欧美片视频在线观看| 日本国产高清不卡| 成人信息集中地欧美| 国产精品综合不卡av| 日韩亚洲精品电影| 久久精品视频99| 91精品国产成人| 亚洲大尺度美女在线| 欧美性猛交xxxx富婆| 亚洲精品有码在线| 欧美精品在线视频观看| 久久免费精品日本久久中文字幕| 亚洲电影成人av99爱色| 日韩在线精品一区| 91香蕉嫩草影院入口| 精品国产福利视频| 亚洲美女在线观看| 国产日韩在线免费| 91免费视频网站|