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

軟件下載吧

當前位置:軟件下載吧 > 數據庫 > MS_SQL > SQL基礎:解析SQL?Server?CDC配合Kafka?Connect監聽數據變化的問題

SQL基礎:解析SQL?Server?CDC配合Kafka?Connect監聽數據變化的問題

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

寫在前面

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

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

  數據抽取分為全量抽取和增量抽取,全量抽取類似于數據遷移或數據復制,全量抽取很好理解;增量抽取在全量的基礎上做增量,只監聽、捕捉動態變化的數據。如何捕捉數據的變化是增量抽取的關鍵,一是準確性,必須保證準確的捕捉到數據的動態變化,二是性能,不能對業務系統造成太大的壓力。

增量抽取方式

  通常增量抽取有幾種方式,各有優缺點。

1. 觸發器

  在源數據庫上的目標表創建觸發器,監聽增、刪、改操作,捕捉到數據的變更寫入臨時表。

優點:操作簡單、規則清晰,對源表不影響;

缺點:對源數據庫有侵入,對業務系統有一定的影響;

2. 全表比對

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

優點:對源數據庫、源表都無需改動,完全交付ETL過程處理,統一管理;

缺點:ETL效率低、設計復雜,數據量越大,速度越慢,時效性不確定;

3. 全表刪除后再插入

  在抽取數據之前,先將表中數據清空,然后全量抽取。

優點:ETL 操作簡單,速度快。

缺點:全量抽取一般采取T+1的形式,抽取數據量大的表容易對數據庫造成壓力;

4. 時間戳

  時間戳的方式即在源表上增加時間戳列,對發生變更的表進行更新,然后根據時間戳進行提取。

優點:操作簡單,ELT邏輯清晰,性能比較好;

缺點:對業務系統有侵入,數據庫表也需要額外增加字段。對于老的業務系統可能不容易做變更。

5. CDC方式

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

SQL基礎:解析SQL?Server?CDC配合Kafka?Connect監聽數據變化的問題

優點:提供易于使用的API 來設置CDC 環境,縮短ETL 的時間,無需修改業務系統表結構。

缺點:受數據庫版本的限制,實現過程相對復雜。

CDC增量抽取

先決條件

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

2. 源數據庫支持CDC,版本采用開發版或企業版。

案例環境:

Ubuntu 20.04

Kafka2.13-2.7.0

Zookeeper 3.6.2

SQL Server 2012

步驟

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

1. 數據庫步驟

開啟數據庫CDC支持

  在源數據庫執行以下命令:

EXEC sys.sp_cdc_enable_db GO

  附上關閉語句:

exec sys.sp_cdc_disable_db

查詢是否啟用

select * from sys.databases where is_cdc_enabled = 1

標簽MSSQL,SQLServer,技術文檔,數據庫,SQLSERVER

相關下載

查看所有評論+

網友評論

網友
您的評論需要經過審核才能顯示

熱門閱覽

最新排行

公眾號

主站蜘蛛池模板: 亚洲视频在线一区二区| 在线看无码的免费网站| 国产va免费精品观看精品| 久久亚洲精品中文字幕| 高清国语自产拍免费视频| 日韩精品视频观看| 国产女人18一级毛片视频| 久久国产精品-国产精品| 香蕉精品高清在线观看视频| 日本韩国一区二区三区| 国产乱码卡一卡2卡三卡四| 久久久久久国产精品免费免费 | 99精品国产在热久久婷婷| 狠狠综合久久久久综合小说网| 天天色天天操天天射| 亲密爱人之无限诱惑| 91精品观看91久久久久久| 欧美日本一道高清免费3区| 国产精品无圣光一区二区| 国产精品久久国产精麻豆99网站| 亚洲国产欧美国产综合久久| 怡红院成人影院| 日韩精品中文字幕在线观看| 国产亚洲精品aa片在线观看网站| 中文字幕视频在线播放| 精品久久人人做人人爽综合| 大桥未久aⅴ一区二区| 午夜福利一区二区三区高清视频 | 国产男女爽爽爽免费视频| 久人人爽人人爽人人片AV| 被cao的合不拢腿的皇后| 尹人香蕉久久99天天| 人妻在线日韩免费视频| 2017天天干夜夜操| 暖暖日本免费中文字幕| 国产精品资源在线| 亚洲AV永久无码精品漫画| 被公侵幕岬奈奈美中文字幕| 婷婷99视频精品全部在线观看| 亚洲第一成年免费网站| 韩国理论福利片午夜|