Bij een steeds groter deel van onze klanten gebruiken we tools zoals Fivetran om data uit bronsystemen te ontsluiten en beschikbaar te maken in een analytische database zoals Snowflake. Om de te verplaatsen hoeveelheid data te beperken gebruiken we de technieken CDC en CT. Hierdoor worden enkel de wijzigingen in de bron overgezet naar het doel. Ik krijg regelmatig vragen wat nou daadwerkelijk het verschil is tussen CDC en CT. Wanneer kies je bijvoorbeeld voor welke techniek? Hieronder een overzicht.

Wat is CDC en CT?

Change Data Capture (CDC) en Change Tracking (CT) zijn twee verschillende functies in Microsoft SQL Server. We gebruiken deze technieken om veranderingen in een database bij te houden.

Change Data Capture (CDC)

Change Data Capture (CDC) is een functie van SQL Server die veranderingen die we aanbrengen aan een specifieke tabel in een database registreert. Het gebruikt een set van systeemtabellen om informatie op te slaan over de veranderingen die zijn aangebracht, waaronder het type verandering (insert, update of delete), de kolommen die zijn beïnvloed en de voor- en na-waarden van de gegevens. Deze informatie gebruiken we vervolgens om de veranderingen naar een andere database te repliceren of om andere types gegevensverwerking uit te voeren.

Change Tracking (CT)

Change Tracking (CT) is een functie van SQL Server die veranderingen bijhoudt die we aanbrengen aan een specifieke tabel in een database. Het gebruikt een set van systeemtabellen om informatie op te slaan over de veranderingen die zijn aangebracht, waaronder het type verandering (insert, update of delete) en de primaire sleutel van de betrokken rijen. In tegenstelling tot CDC slaat CT geen voor- en na-waarden van de gegevens op, maar houdt het alleen veranderingen bij die zijn aangebracht aan de tabel.

Verschillen tussen CDC en CT

CDC wordt als robuuster en krachtiger dan CT beschouwd, omdat het meer informatie over de veranderingen opslaat. We gebruiken het vaak in geavanceerdere scenario’s, zoals gegevensreplicatie en geavanceerde analyse. CT is eenvoudiger en minder resource-intensief. Daarom gebruiken we het vaker in scenario’s waarbij het hoofddoel is om alleen veranderingen aan een tabel bij te houden en geen replicatie van de data plaatsvindt.

Conclusie

In samenvatting Change Data Capture (CDC) en Change Tracking (CT) zijn twee verschillende functies in Microsoft SQL Server die we gebruiken om veranderingen in een database bij te houden. CDC registreert gedetailleerde informatie over de veranderingen die worden aangebracht aan een tabel, inclusief voor- en na-waarden, terwijl CT alleen veranderingen bijhoudt die zijn aangebracht aan de tabel. CDC is krachtiger maar ook intensiever in gebruik dan CT.

Onze consultants helpen je graag om de juiste keuze te maken tussen CDC of CT. Daarnaast helpen we ook graag om organisaties data-gedreven te laten werken.