資料庫增量資料的幾種方式

2021-08-30 04:08:13 字數 826 閱讀 8442

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

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

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

d.日誌對比:通過分析資料庫自身的日誌來判斷變化的資料。

獲取資料庫增量資料的幾種方式

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

資料庫遷移幾種方式

我們常常需要對資料進行遷移,遷移到更加高階的主機上 遷移到遠端的機房上 遷移到不同的平台下 一 exp imp 這也算是最常用最簡單的方法了,一般是基於應用的owner級做匯出匯入。操作方法為 在新庫建立好owner和表空間,停老庫的應用,在老庫做exp user pwd owner file ex...

資料庫拆分的幾種方式

資料庫做拆分的幾種方式 1 按功能劃分 垂直切分 將不同功能相關的表放到不同的資料庫中,這樣做的好處是非常直觀。但當某一部分的功能其資料量或效能要求超出了可控的範圍,就需要繼續對其進行深入的再切分。2 按表中某一字段值的範圍劃分 水平切分 當伴隨著某乙個表的資料量越來越大,以至於不能承受的時候,就需...