日韩av手机在线免费观看_四虎免看黄_亚洲一区中文字幕_亚洲小视频网站_国产一区日韩在线_国产欧美精品一区二区

下載吧 - 綠色安全的游戲和軟件下載中心

軟件下載吧

當(dāng)前位置:軟件下載吧 > 數(shù)據(jù)庫 > MS_SQL > SQL基礎(chǔ):解析SQL?Server?CDC配合Kafka?Connect監(jiān)聽數(shù)據(jù)變化的問題

SQL基礎(chǔ):解析SQL?Server?CDC配合Kafka?Connect監(jiān)聽數(shù)據(jù)變化的問題

時間:2024-02-08 11:17作者:下載吧人氣:38

寫在前面

  好久沒更新Blog了,從CRUD Boy轉(zhuǎn)型大數(shù)據(jù)開發(fā),拉寬了不少的知識面,從今年年初開始籌備、組建、招兵買馬,到現(xiàn)在穩(wěn)定開搞中,期間踏過無數(shù)的火坑,也許除了這篇還很寫上三四篇。

  進(jìn)入主題,通常企業(yè)為了實(shí)現(xiàn)數(shù)據(jù)統(tǒng)計(jì)、數(shù)據(jù)分析、數(shù)據(jù)挖掘、解決信息孤島等全局?jǐn)?shù)據(jù)的系統(tǒng)化運(yùn)作管理 ,為BI、經(jīng)營分析、決策支持系統(tǒng)等深度開發(fā)應(yīng)用奠定基礎(chǔ),挖掘數(shù)據(jù)價值 ,企業(yè)會開始著手建立數(shù)據(jù)倉庫,數(shù)據(jù)中臺。而這些數(shù)據(jù)來源則來自于企業(yè)的各個業(yè)務(wù)系統(tǒng)的數(shù)據(jù)或爬取外部的數(shù)據(jù),從業(yè)務(wù)系統(tǒng)數(shù)據(jù)到數(shù)據(jù)倉庫的過程就是一個ETL(Extract-Transform-Load)行為,包括了采集、清洗、數(shù)據(jù)轉(zhuǎn)換等主要過程,通常異構(gòu)數(shù)據(jù)抽取轉(zhuǎn)換使用Sqoop、DataX等,日志采集Flume、Logstash、Filebeat等。

  數(shù)據(jù)抽取分為全量抽取和增量抽取,全量抽取類似于數(shù)據(jù)遷移或數(shù)據(jù)復(fù)制,全量抽取很好理解;增量抽取在全量的基礎(chǔ)上做增量,只監(jiān)聽、捕捉動態(tài)變化的數(shù)據(jù)。如何捕捉數(shù)據(jù)的變化是增量抽取的關(guān)鍵,一是準(zhǔn)確性,必須保證準(zhǔn)確的捕捉到數(shù)據(jù)的動態(tài)變化,二是性能,不能對業(yè)務(wù)系統(tǒng)造成太大的壓力。

增量抽取方式

  通常增量抽取有幾種方式,各有優(yōu)缺點(diǎn)。

1. 觸發(fā)器

  在源數(shù)據(jù)庫上的目標(biāo)表創(chuàng)建觸發(fā)器,監(jiān)聽增、刪、改操作,捕捉到數(shù)據(jù)的變更寫入臨時表。

優(yōu)點(diǎn):操作簡單、規(guī)則清晰,對源表不影響;

缺點(diǎn):對源數(shù)據(jù)庫有侵入,對業(yè)務(wù)系統(tǒng)有一定的影響;

2. 全表比對

  在ETL過程中,抽取方建立臨時表待全量抽取存儲,然后在進(jìn)行比對數(shù)據(jù)。

優(yōu)點(diǎn):對源數(shù)據(jù)庫、源表都無需改動,完全交付ETL過程處理,統(tǒng)一管理;

缺點(diǎn):ETL效率低、設(shè)計(jì)復(fù)雜,數(shù)據(jù)量越大,速度越慢,時效性不確定;

3. 全表刪除后再插入

  在抽取數(shù)據(jù)之前,先將表中數(shù)據(jù)清空,然后全量抽取。

優(yōu)點(diǎn):ETL 操作簡單,速度快。

缺點(diǎn):全量抽取一般采取T+1的形式,抽取數(shù)據(jù)量大的表容易對數(shù)據(jù)庫造成壓力;

4. 時間戳

  時間戳的方式即在源表上增加時間戳列,對發(fā)生變更的表進(jìn)行更新,然后根據(jù)時間戳進(jìn)行提取。

優(yōu)點(diǎn):操作簡單,ELT邏輯清晰,性能比較好;

缺點(diǎn):對業(yè)務(wù)系統(tǒng)有侵入,數(shù)據(jù)庫表也需要額外增加字段。對于老的業(yè)務(wù)系統(tǒng)可能不容易做變更。

5. CDC方式

  變更數(shù)據(jù)捕獲Change Data Capture(簡稱CDC),SQLServer為實(shí)時更新數(shù)據(jù)同步提供了CDC機(jī)制,類似于Mysql的binlog,將數(shù)據(jù)更新操作維護(hù)到一張CDC表中。開啟CDC的源表在插入INSERT、更新UPDATE和刪除DELETE活動時會插入數(shù)據(jù)到日志表中。cdc通過捕獲進(jìn)程將變更數(shù)據(jù)捕獲到變更表中,通過cdc提供的查詢函數(shù),可以捕獲這部分?jǐn)?shù)據(jù)。詳情可以查看官方介紹:關(guān)于變更數(shù)據(jù)捕獲 (SQL Server)

SQL基礎(chǔ):解析SQL?Server?CDC配合Kafka?Connect監(jiān)聽數(shù)據(jù)變化的問題

優(yōu)點(diǎn):提供易于使用的API 來設(shè)置CDC 環(huán)境,縮短ETL 的時間,無需修改業(yè)務(wù)系統(tǒng)表結(jié)構(gòu)。

缺點(diǎn):受數(shù)據(jù)庫版本的限制,實(shí)現(xiàn)過程相對復(fù)雜。

CDC增量抽取

先決條件

1. 已搭建好Kafka集群,Zookeeper集群;

2. 源數(shù)據(jù)庫支持CDC,版本采用開發(fā)版或企業(yè)版。

案例環(huán)境:

Ubuntu 20.04

Kafka2.13-2.7.0

Zookeeper 3.6.2

SQL Server 2012

步驟

  除了數(shù)據(jù)庫開啟CDC支持以外,主要還是要將變更的數(shù)據(jù)通過Kafka Connect傳輸數(shù)據(jù),Debezium是目前官方推薦的連接器,它支持絕大多數(shù)主流數(shù)據(jù)庫:MySQL、PostgreSQL、SQL Server、Oracle等等,詳情查看Connectors。

1. 數(shù)據(jù)庫步驟

開啟數(shù)據(jù)庫CDC支持

  在源數(shù)據(jù)庫執(zhí)行以下命令:

EXEC sys.sp_cdc_enable_db GO

  附上關(guān)閉語句:

exec sys.sp_cdc_disable_db

查詢是否啟用

select * from sys.databases where is_cdc_enabled = 1

標(biāo)簽MSSQL,SQLServer,技術(shù)文檔,數(shù)據(jù)庫,SQLSERVER

相關(guān)下載

查看所有評論+

網(wǎng)友評論

網(wǎng)友
您的評論需要經(jīng)過審核才能顯示

熱門閱覽

最新排行

公眾號

主站蜘蛛池模板: 欧美 视频 | 精品久久国产老人久久综合 | 北条麻妃一区二区三区在线观看 | 欧美操操操 | 狠狠色综合久久婷婷 | 亚洲成人一区 | 不卡一区二区在线观看 | 日韩欧美一区二区三区在线播放 | 日韩精品在线视频免费观看 | 黄网站在线播放 | 亚洲 欧美 日韩 在线 | 男人av的天堂 | 欧美视频网| 日韩色视频 | 欧美精品1区2区3区 精品国产欧美一区二区 | 久久精品国产一区二区电影 | 天天人人精品 | 99热视| 国产在线精品一区 | 日韩精品成人av | 九九色综合| 精品av| 黑人巨大精品欧美一区二区免费 | 久久区二区 | 三级在线免费 | 色网在线观看 | 欧美国产精品一区二区三区 | 亚洲国产精品一区二区久久 | 久久一 | 久久久国产一区二区三区 | 99re在线视频观看 | 欧美专区日韩 | 欧美色综合网 | 国产在线中文字幕 | 韩国精品在线 | 欧美激情欧美激情在线五月 | 91精品中文字幕一区二区三区 | 黑人巨大精品欧美一区二区免费 | 亚洲激精日韩激精欧美精品 | 中文字幕一区二区三区不卡在线 | 中文av电影 |