Oracle Standby Redo Logs vs Online Redo Logs: Comprehensive Analysis

on Data Integration • June 29th, 2020 • Write for Hevo

Do you want to learn about Oracle standby redo logs and online redo logs? If yes, then you are in the right place. Oracle is a very popular relational database system sold by Oracle corporation based on proprietary technology and license. It can support different kinds of load patterns ranging from transactional workloads to data warehouse processing. Oracle provides a feature-rich querying layer capable of executing complex transformations over data.

One of the biggest reasons for Oracle’s popularity among enterprise companies is its ability to be highly available. Even when things go wrong, it is possible to recover an Oracle database instance in a very short time. It is made possible by its underlying architecture, which is based on redo logs.

Redo logs allows Oracle databases to be replicated as multiple masters reside in different geographical regions and ensure high availability. This post aims to clear the concepts around the kinds of redo logs that bring this extremely stable architecture to reality. By the end of this post, you will understand the concept behind standby redo logs and online redo logs, which are instrumental in Oracle’s replication magic. 

Let’s see what you will cover here:

Hevo Data: Migrate Data From Oracle Instantly

Hevo is a No-code Data Pipeline. It can conveniently migrate data from Oracle to your desired destination in real-time. It offers a fully-automated platform that extracts, transforms, and loads data to your data warehouse. Hevo also offers pre-built integrations from 100+ data sources at a reasonable price.

Let’s look at some unbeatable features of Hevo:

  • Simple: Hevo has a simple and intuitive user interface. The learning curve for Hevo is minimal and can be set up in minutes.
  • Real-Time: Hevo offers real-time data migration. So, your data is always ready for analysis.
  • Secure: Hevo offers two-factor authentication and end-to-end encryption. Your data is safe and secure with Hevo.
  • Live Monitoring: Hevo offers live monitoring of your data. So, you can check the status of your data at any particular point.
  • Fault-Tolerant: Hevo can automatically detect anomalies in the incoming data and informs you about it simultaneously. If there is an affected record within the pipeline, it is kept aside for corrections.

Give Hevo a try by signing up for a 14-day free trial today and enjoy the seamless experience of migrating data from Oracle.

Understanding Oracle Online Redo Logs

Redo logs are the architectural component behind Oracle’s ability to recover from failures and ensure high availability. A redo log contains redo records that denote all changes that happened in an Oracle database. Replaying redo logs can bring a database to its state at any point in time from a base state. This way, redo logs facilitates the recovery of databases from software or hardware failures. 

Redo logs also play an important role in Oracle replication. Most change data capture methods revolve around exploiting redo logs and copying changes from redo logs to the target database.

In the default configuration, the redo log will be overwritten by the log writing process, when the log file is switched. Oracle provides an ARCHIVELOG mode where log file data can be archived, enabling a much larger window of recovery points. Using this setting ensures that log files are never overwritten but archived to a remote or local location. 

In case you need to add more redo logs than the default configuration, it can be done with the following command:

ALTER DATABASE ADD LOGFILE ('/oracle/dbs/log1c.rdo', '/oracle/dbs/log2c.rdo') SIZE 4M; 

This is often done to make separate processes work based on different redo logs. 

An important point to note here is that online redo logs always run on the master or the local system of the source database. There is another type of redo log called standby redo logs, that is configured to increase data protection in a replicated environment. 

Understanding Oracle Standby Redo Logs

A standby database is typically configured for data protection during disasters. It also helps in recovering the main database. It can also act as a reporting database without affecting the performance of your transactional database. A standby database can be configured to work, based on the online redo logs or based on a separate log file called standby redo log file. While configuring a standby, an administrator needs to select whether he wants to go for a maximum protection standby configuration or maximum performance configuration.

Before going into the details, let us first examine how a standby database replication works. Broadly, the following activities are involved in this process:

  1. An archival process first archives the online redo log files. 
  2. Another process then writes these archived logs into the standby database location. 
  3. A recovery process then uses these archived logs to populate the standby database.

Since there is a delay between the recovery process decoding the archived log and writing it to the standby database, any unfortunate incident in this window can lead to data loss. This data loss can even go into, minutes even with Oracle’s super-fast recovery times. To avoid this, configuring standby redo logs is usually recommended. 

Standby redo logs are created by a network server synch process that keeps track of the online redo database logs and writes continuously in a standby log file located in the destination database. The recovery process then uses the standby redo logs to write entries to the standby database rather than using the transported archived redo logs. The architecture, in this case, will be as shown in the following image.

Standby Redo Logs: Oracle Standby Redo Logs
Reference: https://community.oracle.com/docs/DOC-1007036

A standby log can be created using the following command:

ALTER DATABASE ADD STANDBY LOGFILE GROUP 10

Oracle recommends using standby redo logs in all cases where the replication process is setup. Standby redo logs can bring your unfortunate data loss interval from minutes to seconds in the standby database. 

Conclusion

We have now learned the concepts behind the online redo logs and the standby redo logs. Summarizing what we have read above, standby redo logs are different from online redo logs in the following ways:

  1. Standby redo logs are used to store data received from another database or the primary data source. 
  2. Standby redo logs are present at the destination database end.

So the best way to accomplish Oracle replication is based on redo logs, but Oracle makes you go through a lot of configuration changes to implement it. The concepts of redo logs are a must-have tool for an ETL engineer who is using Oracle as the source database. You can sidestep all these concepts and related configurations using a cloud-based ETL tool like Hevo. 

Hevo is a No-code Data Pipeline. It can set up Oracle replication in a matter of few clicks without using any custom code. It supports several target databases and can execute complex transformations on the fly using a simple user interface. 

Give Hevo a try by signing up for a 14-day free trial today.

Share your experience of working with Oracle standby redo logs and online redo logs in the comment section below.

No-code Data Pipeline for Oracle