The challenge is this: how do you reduce your business risk by improving your applications return point and return time objectives and at the same time keep the impact on the application performance at an absolute minimum whilst protecting it?
CDP, short for Continuous Data Protection, is a term used in computer science to describe a method used to recover from logical errors much faster than with traditional backup/restore methods.
Although the principle is very simple, many different attempts exist in the market rendering varying results. The picture below describes one example of such a process.
- Data is written to a locally attached disk in the server that is to be protected.
- Data blocks of e.g. 8K are passed on to an off-load engine, and stored at target or replica, on so called journal volumes, located locally and/or remotely.
- Some of the written 8K data blocks are flagged as “consistent” by the application that originally created them: this is very important. Only the application knows when its data is consistent, not the operating system, not the storage device.
The key here is that data is _not_ written to the target device, but is instead written to a log. This makes it possible to, very quickly, “roll back” to any point in history, mount a shadow volume, representing the most recent point in time where the logical error had not yet occurred, and continue from there. This is something entirely different from the traditional approach where data is copied to tape (or more recently to a cloud service) once every 24 hours. Restore times are bound to be very long, and the data you do get back will be several hours old.
There are many benefits gained from keeping the CDP software and process separate from the Operating System and/or Hypervisor. Doing so opens up for easy migration between hypervisors of different origin (VMW/XEN/KVM) and limits the lock in effect that most customers tries to avoid. Software such as InMage Scout is often immediately appreciated by the systems administrators as it reduces the time spent on stressful, unreliable, time consuming and cumbersome restore tasks.