2013-06-03 09:27 AM - edited 2015-12-18 12:32 AM
can someone tell me what is the advantage of using Consistency Groups? What is the purpose of it?
Our environment where we use SnapCreator is DB2 and NFS. When creating snapshots we use the db2 plugin to quiesce the database. We snapshot the following Volumes:
Archive : Db2 Archive logs
Logs: Db2 Online Logs
Data: Db2 data files
Soft: DB2 and other binaries
Do we need the feature of CG in this case?
Thanks a lot!
Solved! SEE THE SOLUTION
2013-06-03 12:31 PM
thanks for your response!
Can you please explain why I should use it? I'm not sure about this feature, but doesn't it handle filesystem consistency (for FC, iSCSI)? Dump Buffer to Filesystem?
We use NFS so the NFS fs should take care, or am I wrong?
Or do I understand this feature wrong?
Thanks a lot!
2013-06-03 12:34 PM
CG is a Data ONTAP feature, which ensures all the volumes which are part of your database will have the same consistency point during a snapshot operation.
2013-06-03 12:35 PM
Also - CG has a timeout mode (medium) default, and will make sure database is put back into a normal mode if the snap operation takes more than 7 seconds, that way the application is protected.
2013-06-03 12:40 PM
thanks. Mhmm I don't get the point... what is the advantage of having a consistency point for the volumes data, archive and logs? (in NFS environment).
How does NetApp create the consistency point technically?
2013-06-03 12:43 PM
Each volume is a separate entity, and snapshots are done at the volume level. To make sure all the volumes got the same Consistency point, you will need to use this option. Also - database is protected from being in the "I/O suspend" state for more than seven seconds.
2013-06-03 12:56 PM
So Consistency Point = same timestamp for the indiv. snapshots, right? So if the consistency feature is enabled, all Volumes have the same I/O state? No writes from buffter to fs on all volumes and then the snapshot is taken?
If this is correct, do I need CG for the data volume? Because I/O on the data and log volume is suspended by db2 write suspend, right?
2013-06-04 12:41 AM
Consistency Group snapshots are a snapshot which is IO consistent across volumes within a storage controller. The way it works is that writes in ONTAP are held in NVRAM for all volumes part of group. Once IO is fenced for volumes then a snapshot is created on all volumes and writes to the volumes can occur. This is also why there is a timeout and maximum for this timeout is 20 seconds from time fence is up till process is finished. If CG snapshot process does not finishin within timeout ONTAP will fail operation and resume writes to volumes.
Keep in my a CG cannot span volumes on multiple controllers, it is a group of volumes within a controller. If you have multiple volumes on multiple controllers you end up with a CG per controller.
CG has nothing to do with DB2 and probably adds little value as far as consistency goes. You are already putting DB2 in backup mode by suspending writes so DB2 is consistent, nothing more is needed.
An example when CG would add value is if you had say DB2 database and an application and wanted to get some consistency between them you could include application volume on and snapshot it together with CG, or if you had multiple databases. Another use case is for Oracle ASM. CG use cases are limited and most people think, hey well it sounds better than normal snapshot so let me use it. Dont do this, if you dont have a reason to use CG, dont, that is my advice.
Hope this helps
2013-06-04 01:19 AM
thank you very much for your detailed response. This is exactly my mindset... I didn't saw an advantage of using CG when suspending my db2 database, because in this case I already have suspended I/O... so I was a bit confused.
I just have one DB2 db to snap so I would go without using CG on our for involded volumes.