top of page

FAQ

What is change data capture?

Change data capture is a general term for capturing the before and after changes of values in a database as well as when those changes occurred.  Change data capture, or similar technologies, exist in some form for almost every database provider.  Microsoft SQL Server's change data capture functionality comes standard with all versions except Express.  Change Data Capture for SQL server can only be enabled via scripts.  Additionally, the captured changes are housed in separate tables, are hard to understand and work with and by default are not kept permanently.  That's where MergeCDC comes in!

What is MergeCDC?

MergeCDC is a software-less database solution that makes working with Microsoft SQL Server's change data capture functionality a snap.  It assists you with:

1.) Getting the change data capture functionality turned on

2.) Tune the change data capture functionality to only capture what is necessary and nothing more.

3.) Autonomously monitor the change data tables so that the capture data is kept permanently to avoid data loss.

4.) Migrating the data from all of the various change data capture tables into a central table.

5.) Transforming the data for easy-to-understand reporting.

6.) Allowing the change data in the capture tables to be deleted since all changes are permanently recorded to a central table, thus preventing the database from growing exponentially.

How are the changes captured?

In additional to using the various data elements you supplied to the TrackingTables.xlsx file, MergeCDC also includes the column that was updated, the updated column data type, when it was updated, what it was updated from, what it was updated to, whether it was an INSERT, UPDATE or DELETE operation and if applicable, who updated it. 

  • INSERT statements will display a row for every column that is tracked to show the values that were set at the time the insert occurred.  The UpdatedFrom column on INSERT statements will always be NULL since there was no value before the insert.

  • UPDATE statements will display a row for every column where a value was changed and the column is being tracked.

  • DELETE statements will display a row for every column that is tracked to show the value at the time the deletion occurred.  The UpdatedTo column on DELETE statements, will always be NULL.  Also, the UpdatedBy column will always be NULL since it's not possible to know who deleted a record via change data capture.

If you'd like to take a look at what final result set looks like, go to the Getting Started page to view a sample.

​

What database providers does MergeCDC work with?

MergeCDC currently only works with Microsoft SQL Server.  However, we are looking into creating similar solutions for other database providers, so stayed tuned!

Does MergeCDC work with SQL Server on the cloud?

It does on virtual machines running SQL Server!  On managed instances, however, it does not work as effectively as we'd like.  We are working with the various cloud service providers on a solution, so stay tuned!

Why should I use MergeCDC and not some other option?

There are other options out there that adds bells and whistles you may not need, are highly technical, requires software and/or are costly.  MergeCDC, simply put, is the quickest and easiest way to get the most out of Microsoft SQL Server's change data capture functionality.  With our software-less solution, there is no need for maintenance or hassling with upgrades.  Lastly, MergeCDC is autonomous so once it's setup, you can forget about it while having piece of mind that your database changes are being tracked!

What if I don't like MergeCDC, can I get my money back?

If MergeCDC is not what you expected or you are not fully satisfied within the first 30 days, you can get a full refund.

What's the installation for MergeCDC like?

MergeCDC uses a PowerShell script to connect to your database, install the necessary tables, functions and stored procedures, validate the TrackingTables.xlsx file, initialize change data capture and setup the SQL agent job accordingly so that it runs autonomously.  It's so easy, anyone could do it.

Does adding MergeCDC add overhead to your database?

Generally, no, but it can be affected by the number of tables being tracked and the number of changes to those tables each day.  To ensure MergeCDC doesn't cause any issues during business hours, MergeCDC gets run at 2am every night (along with the SQL Server change data capture cleanup job).  Additionally, you should consider only tracking what is minimally required and avoid tracking tables with too many records or that gets updated too often.

bottom of page