91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

SQL Server怎么配置cdc進行ETL

發布時間:2021-12-29 09:27:19 來源:億速云 閱讀:157 作者:小新 欄目:軟件技術

這篇文章給大家分享的是有關SQL Server怎么配置cdc進行ETL的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。

企業核心業務系統oltp的數據需要通過ETL同步到數據倉庫,原始的ETL流程通過定制化從SQL Server中進行數據抽取,經過生產環境的監控,發現ETL過程的query會對生產系統造成額外負載。于是制定了通過cdc進行增量數據同步的方案:

方案選型中比對了SQL server的trigger,CT,CDC, temporary table各種方式,選型對比如下:


Trigger

CT

CDC

Temporal table

Sync way

Synchronous

Synchronous

Asynchronous

Synchronous

Internal work

Heavy than index

Same as index

Call sp_replcmds   to collect from tlog no direct workload.

 


Table part in transaction

Yes

Yes

No

Yes

Historical Data retention

Manual control

No

Yes

Yes

 

通過表格對比可以看到,cdc通過異步非侵入式進行增量數據捕獲,使用了sp_replcmds,這個過程和sql server的transactional replication中的log reader agent是相同的,缺點就是會對占用原始database的datafile和logfile,造成數據增長。

在cdc的使用過程中,比較重要的是將cdc數據置于單獨的filegroup內,這樣,在數據管理恢復和性能上會減少對于原始oltp的影響。具體過程如下:

  1. 在db級別啟用cdc時需要先將db的默認filegroup改成cdc,這樣cdc對應的元數據信息,例如經常變化的表cdc.lsn_time_mapping可以存放到單獨的filegroup中

  2. 對于表的cdc數據使用@fileGroup_Name參數指定filegroup

--enable cdc filegroup

USE DB1

ALTER DATABASE DB1 ADD FILEGROUP CDC

GO

ALTER DATABASE DB1 ADD FILE

(

NAME='CDC',

FILENAME='D:\DATA\DB_CDC1.ndf',

SIZE = 1024MB,

MAXSIZE = unlimited,

FILEGROWTH=256MB

)TO FILEGROUP CDC

GO

USE DB1

GO 

ALTER DATABASE DB1 MODIFY FILEGROUP [CDC] DEFAULT

GO  

EXEC sys.sp_cdc_enable_db  

GO  

ALTER DATABASE DB1 MODIFY FILEGROUP [DATA] DEFAULT

go

EXEC sys.sp_cdc_enable_table @source_schema = N'dbo',@source_name = 'T1',@role_name = N'cdc_Admin',@fileGroup_Name = N'CDC' 

CDC建立后有capture job和clean job,當cdc的數據增量非常大的時候,需要適當調整job的參數:

EXEC sys.sp_cdc_change_job  

 @job_type = 'capture' 

 ,@maxtrans = 5000      --每個掃描循環可以處理的最多事務數 

 ,@maxscans = 100       --為了從日志中提取所有行而要執行的最大掃描循環次數 

 ,@continuous = 1       --連續運行最多處理(max_trans * max_scans)個事務 

 ,@pollinginterval = 1

感謝各位的閱讀!關于“SQL Server怎么配置cdc進行ETL”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

黔江区| 车致| 离岛区| 平遥县| 手游| 临朐县| 五大连池市| 双峰县| 南漳县| 外汇| 赣榆县| 固始县| 盐津县| 论坛| 靖远县| 大安市| 沾化县| 泸西县| 谢通门县| 五家渠市| 特克斯县| 阜新| 吴川市| 砀山县| 巴林左旗| 个旧市| 舞阳县| 霍林郭勒市| 宁夏| 宁德市| 洛浦县| 修武县| 清水县| 三门县| 福海县| 星子县| 临泽县| 德惠市| 舞钢市| 龙山县| 正安县|