In this post I will go through what happens to archive logs sent to the ZDLRA through real-time redo.
The most common way to send archivelog backups to a ZDLRA is through real-time redo.
In this method the ZDLRA is treated just like a standby database destination.
The main difference with sending logs to the ZDLRA is that logs need to be sent (REDO_TRANSPORT_USER) as the VPC (virtual private catalog) account that is registered to send backups.
This is done by use of wallet containing the VPC user ID and Password and is included in the channel configuration parameter.
There is a great explanation of most of this from my colleague Fernando Simon and you can find it here.
ZDLRA, Real-Time Redo and Zero RPO
What I wanted to go through is the process of sending the logs (real-time), and the process of storing the logs on the ZDLRA.
The first thing to understand is the steps in the process of turning real-time redo into RMAN backupsets.
Step 1 The redo is captured real-time from the ZDLRA through the use of "shadow logs". Think of "shadow logs" as standby redo logs that are created for each database, and for each redo log that is being captured. Just like standby redo logs, these are full size logs. To give you an example, lets say there are 6 databases sending real-time redo the the ZDLRA, 3 of these are 2 node RAC clusters. Each database have a redo log size of 20 GB.
On the ZDLRA, these are mirrored (to disk) and will use storage which is included in the USAGE number for the database. In my example there will be 9 logs
Step 2 - When a log switch occurs a task is created called BACKUP_ARCH. This task is responsible for taking the "shadow log" and turning it into an RMAN backupset containing the log.
The RMAN backupset can be compressed (and it uses BASIC by default, please change it) based on the policy that the Database is a member of.
One of the advantages of the ZDLRA is that the compression license is NOT needed to use other degrees of compression.
The suggestion I would make is.
TDE Databases - Put ALL TDE databases in their own policy and set compression to NONE. TDE archive logs will not compress and will cause overhead.]
NON-TDE databases - Use LOW compression. this will give you best combination of compression ratio and elapsed time.
Now let's take a look at the tasks to see what I am talking about.
Below is a snippet from the currently running tasks (taken from a SAR report).
TASK_TYPE PRIORITY STATE CURRENT_COUNT LAST_EXECUTE_TIME WORK_TYPE MIN_CREATION
---------------------- ---------- --------------- ------------- -------------------- ----------- ------------
BACKUP_ARCH 120 RUNNING 7 03-OCT-2019 14:49:08 Work 03-OCT-2019
I can see there there are currently 7 redo logs that have switched, and are awaiting processing to become backupsets. This number should always be very small.TASK_TYPE STATE CNT CREATED MIN_COMPLETION_TIME MAX_COMPLETION_TIME OLD_CREATION_TIME
---------------------- --------------- ---------- ---------- ---------------------- ---------------------- ----------------------
BACKUP_ARCH COMPLETED 9,591 9,580 02-OCT-2019 18:50:35 03-OCT-2019 14:50:28 02-OCT-2019 18:49:49
No comments:
Post a Comment