The focus of this post will be on the technical aspects of Oracle CDC (Change Data Capture), from its evolution to its functioning, and finally, the types of this feature.
In its generic form, Change Data Capture (CDC) is a software pattern that tracks and monitors changes made to a source database, enabling action to be taken later based on those changes. This definition of CDC holds true regardless of the operating system and database. Change Data Capture also helps in data integration by capturing, identifying, and delivering changes made to databases.
Oracle CDC (Change Data Capture)
Now, based on this definition, let us examine Change Data Capture that is specific to Oracle CDC.
This form of CDC enables real-time data integration across an organization. It also enhances the performance of data warehouses by increasing the speed of access to databases.
However, a critical feature of Oracle CDC is that it can carry out several replication functions without adversely affecting the quality of output of the database. This is, of course, subject to the use of the best tools and non-intrusive methods for this purpose.
Replication activities include moving databases to the cloud and divesting queries from databases in production to data warehouses or other similar platforms. Changes made to the data generated at the source database after the last migration run to the target database (incremental data) can also be transferred to a data warehouse with Oracle CDC.
An advantage of using Oracle Change Data Capture is that while the process is on, there is no need for downtime or shutting down the source database. This is a huge help for large data-driven businesses for whom downtime for even a limited period can badly upset overall operations.
One of the key functions of Oracle CDC is capturing and preserving the state of the data within a data warehouse environment or a data repository platform. It is possible to set up this CDC function either through physical storage, application logic, or a combination of the two.
The Evolution of Oracle CDC
Oracle Corporation first launched the Oracle CDC as an out-of-the-box tool with the 9i version. Its technology could track and record all changes to a database made to user tables. These changes were stored in tables to be used in ETL applications. These records allowed users to identify the changes and process and load them into data warehouses or other target databases.
This version of Oracle CDC worked through triggers placed in the source database, a technology that was found to be cumbersome and invasive.
Consequent to this feedback, Oracle released a modified and non-intrusive version of Oracle CDC with its 10g version and named it Oracle Streams. It was an updated technology that used both the replication tool of Oracle and the redo logs of the source database.
Oracle Streams was a major improvement over the 9i version. It could identify and transfer changes to data in source systems to the target database without affecting the speed or performance of the source database.
Even though this model of Oracle CDCwas well-received by users and became very popular, Oracle Streams was discontinued as an in-built feature of the Oracle DBMS from its 12c version. Users subsequently had no option but to either pay license fees for Oracle Golden Gate that had the CDC feature or depend on other Oracle replication tools for CDC.
Present Structure of Oracle Change Data Capture
There have not been any major changes, mainly technological, from what was released with Oracle Golden Gate. The current structure is as follows.
The basis of Oracle CDC is not complex in its present form. The concept is that some data changes have been made in the source database, and the target database must take some action based on those changes. In the case of CDC, the source and the target data repositories may be different or similar.
The changes made to a source database that is used for other applications are identified by Oracle CDC through the Oracle Data Integrator, which supports two journalizing modes as follows.
- Simple Journalizing Mode: In this mode, changes made to individual data stored in a system are tracked.
- Consistent Set Journalizing Mode: Here, changes made to a set of data stores are tracked after considering the referential integrity between each data store.
Users can seamlessly set up Oracle CDC on the Oracle Data Integrator.
Why Use Oracle CDC – Benefits
There are some cutting-edge benefits of using Oracle CDC, as given below.
- Oracle Change Data Capture can capture all changes made to data, such as Insert, Update, and Delete. It can also track the values of data both before and after the changes were made.
- Oracle Change Data Capture activity has a negligible impact on the source database when it is configured with Asynchronous CDC (details in the next section).
- CDC has packages that help in easily publishing and subscribing to interfaces. These include DBMS_CDC_PUBLISH and DBMS_CDC_SUBSCRIBE packages.
- Database maintenance and operating costs are substantially reduced by Oracle CDC.This is because the software streamlines data extraction from the Oracle database.
These benefits make Oracle CDC a preferred choice by most organizations for replication and migration of databases.
Types of Oracle Change Data Capture
Oracle CDC has two forms.
- Synchronous CDC: In this type, triggers placed in the source database are activated whenever a change is identified. The downside here is that when large volumes of changes take place, setting off triggers badly impacts the performance of the source database.
- Asynchronous CDC: Here, redo log files receive data, and any changes to it are captured after a SQL statement performs a DML activity. The types of Asynchronous CDC are HotLog, Distributed HotLog, and AutoLog.
Oracle CDC plays a critical role in database migration and replication functions in an organization.
Zack Hart
Hey there! I’m Zack Hart, the pun-dedicated brain behind PunsClick.
Based in Alaska, I built this site for everyone who believes a well-placed pun can brighten a dull day.
Whether you’re into clever wordplay or cringe-worthy dad jokes, you’ll find your fix here. We’re all about bringing the world closer — one pun at a time.
