
文章插圖
從廣泛意義上說(shuō) , 全球許多企業(yè)每天都需要通過頻繁的數(shù)據(jù)批量處理與加載 , 來(lái)定期將數(shù)據(jù)從一個(gè)數(shù)據(jù)庫(kù)遷移到另一個(gè)數(shù)據(jù)庫(kù)(或數(shù)據(jù)倉(cāng)庫(kù)) 。這類定期批量加載的工作 , 往往既耗費(fèi)時(shí)間 , 又會(huì)消耗原始系統(tǒng)的大量處理能力 。因此 , 管理員只能在業(yè)務(wù)運(yùn)行的間歇期間運(yùn)行數(shù)據(jù)的批量傳輸與復(fù)制作業(yè) , 否則會(huì)產(chǎn)生嚴(yán)重的效率影響 。而顯然 , 這與24x7的不間斷業(yè)務(wù)需求是背道而馳的 。
近年來(lái) , 變更數(shù)據(jù)捕獲(Change Data Capture , CDC)已成為了在高速數(shù)據(jù)流通環(huán)境中 , 各種關(guān)系型數(shù)據(jù)庫(kù)、云端數(shù)據(jù)庫(kù)、以及數(shù)據(jù)倉(cāng)庫(kù)之間 , 進(jìn)行低延遲、高可靠性且可擴(kuò)展式數(shù)據(jù)復(fù)制的理想化解決方案 。
什么是變更數(shù)據(jù)捕獲? CDC是指從源數(shù)據(jù)庫(kù)捕獲到數(shù)據(jù)和數(shù)據(jù)結(jié)構(gòu)(也稱為模式)的增量變更 , 近乎實(shí)時(shí)地將這些變更 , 傳播到其他數(shù)據(jù)庫(kù)或應(yīng)用程序之處 。通過這種方式 , CDC能夠向數(shù)據(jù)倉(cāng)庫(kù)提供高效、低延遲的數(shù)據(jù)傳輸 , 以便信息被及時(shí)轉(zhuǎn)換并交付給專供分析的應(yīng)用程序 。
在數(shù)據(jù)不斷變化 , 且無(wú)法中斷與在線數(shù)據(jù)庫(kù)連接的情況下 , 對(duì)于各種時(shí)間敏感(time-sensitive)類信息的復(fù)制 , 往往也是云端遷移的重要組成部分 。與批量復(fù)制相比 , 變更數(shù)據(jù)的捕獲通常具有如下三項(xiàng)基本優(yōu)勢(shì):
- CDC通過僅發(fā)送增量的變更 , 來(lái)降低通過網(wǎng)絡(luò)傳輸數(shù)據(jù)的成本 。
- CDC可以幫助用戶根據(jù)最新的數(shù)據(jù)做出更快、更準(zhǔn)確的決策 。例如 , CDC會(huì)將事務(wù)直接傳輸?shù)綄9┓治龅膽?yīng)用上 。
- CDC最大限度地減少了對(duì)于生產(chǎn)環(huán)境網(wǎng)絡(luò)流量的干擾 。
時(shí)間戳或版本號(hào)跟蹤 數(shù)據(jù)庫(kù)設(shè)計(jì)者可以在需要跟蹤的數(shù)據(jù)表中 , 設(shè)定某一列來(lái)代表最后被修改的時(shí)間戳或版本號(hào) 。例如 , 我們通??梢詫⑦@些列命名為:LAST_UPDATE、DATE_MODIFIED、以及VERSION_NUMBER等 。那些在上一次數(shù)據(jù)捕獲之后 , 增加了時(shí)間戳的任何行 , 都將被視為發(fā)生了修改 。而在基于版本號(hào)的跟蹤方法中 , 變更一旦發(fā)生 , 所有具有最新版本號(hào)的數(shù)據(jù) , 都被視為發(fā)生了修改 。
在實(shí)際應(yīng)用中 , 您可以結(jié)合版本和時(shí)間戳兩個(gè)維度 , 來(lái)跟蹤數(shù)據(jù)庫(kù)表中的數(shù)據(jù) 。例如 , 您可以設(shè)定一條邏輯--“捕獲自2021年6月22日以來(lái) , 相對(duì)于3.4版發(fā)生了變更的所有數(shù)據(jù)” 。
優(yōu)點(diǎn):
- 簡(jiǎn)單易懂 。
- 數(shù)據(jù)庫(kù)設(shè)計(jì)者可以自定義應(yīng)用程序的邏輯構(gòu)建 。
- 不需要任何外部的工具 。
- 給數(shù)據(jù)庫(kù)增加了額外的開銷 。
- 需要額外的CPU資源 , 來(lái)掃描表中的數(shù)據(jù)變更 , 并需要預(yù)留資源 , 以確保 LAST_UPDATE列能夠可靠地追蹤所有資源表 。
- 被刪除的行不會(huì)存在于LAST_UPDATE中 。如果沒有其他腳本來(lái)跟蹤此類刪除的話 , DML語(yǔ)句(例如“DELETE”)將不會(huì)被傳遞到目標(biāo)數(shù)據(jù)庫(kù)處 。
以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請(qǐng)您及時(shí)就醫(yī)或請(qǐng)專業(yè)人士給予相關(guān)指導(dǎo)!
「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對(duì)您有所幫助:- 電腦打印照片怎么打印兩寸 如何打印2寸照片
- 電腦定時(shí)關(guān)機(jī)如何解除 如何讓電腦定時(shí)關(guān)機(jī)
- 爆料快速漲粉的3大秘訣 新手如何運(yùn)營(yíng)抖音好漲粉
- 怎么制作微信小程序 如何制作微信小程序
- 手機(jī)怎么下載兩個(gè)微信 手機(jī)如何下載兩個(gè)微信
- 微信怎么發(fā)高清視頻 微信如何發(fā)高清視頻
- 手機(jī)丟失如何追蹤位置 手機(jī)丟了如何找回
- 高血壓最怕的三種水果 如何預(yù)防高血壓
- 不刪除數(shù)據(jù)合并分區(qū) 硬盤如何合并分區(qū)
- 大學(xué)為什么禁止共享單車 共享單車如何使用
