Continuous Data Protection is a new paradigm in backup and recovery, where the history of writes to storage is continuously captured, thereby allowing the storage state to be potentially reverted to any previous point in time.
The main benefit of CDP is that it minimizes data loss in the face of errors since many more points in time are available to revert to (also known as an improved Recovery Point Objective). Additional benefits are that down time is typically minimized, since most CDP products can continue to respond to I/O requests while the physical process of reverting the storage is underway (also known as improved Recovery Time Objective). As the process is continuous, it is potentially easier to manage. In the case of CDP, time points of particular interest can typically be marked for later inspection although no a priori event marking is required.
CDP can be captured at the block, file, or application level, which means that the entities being reverted are volumes (LUNs or partitions), files and directories, or application level objects. We focus on CDP at the block level as this is typically the greatest common denominator of heterogenous enterprise applications, while achieving consistency in an environment above the block level is very difficult.
Our work on CDP focuses on data structures for representing CDP history and enabling fast revert, as well as architectures for controller-based CDP.
We are also focusing on co-ordinating the storage state obtained using CDP with the system state obtained by taking virtual machine checkpoints.