Patent ID: 8484162
Filing Date: 2013-07-09
Classification: G06F

Abstract:
1. A system for managing application-generated data objects, the system comprising: a processor; a first de-duplication database associated with first application-specific data; a second de-duplication database associated with second application-specific data; a first backup agent executing in one or more computer processors on a first client device, the first backup agent being configured to, in response to a storage operation request: prior to performing block-level de-duplication, parse first and second application-specific data of the first client device that is the subject of the storage operation request, the first and second application-specific data comprising a plurality of first and second data objects having first and second formats; and prior to performing block-level de-duplication, insert de-duplication indicators in the first and second application-specific data, wherein the inserted de-duplication indicators identify portions within the first and second data objects where de-duplication should start and stop, and wherein the inserted de-duplication indicators further identify which of the first and second de-duplication databases to use in de-duplicating the first and second application-specific data; and a de-duplication module executing on one or more computer processors and that is configured to perform block-level de-duplication, the de-duplication module being in communication with the first backup agent to receive the first application-specific data and to: insert the de-duplication indicators by setting or clearing a bit in at least one header of the first application-specific data, wherein the at least one de-duplication indicator comprises an offset value identifying a beginning of the first data objects within the first application-specific data; use de-duplication indicators to identify where the de-duplication module should start and stop de-duplication of blocks in identified portions of the first and second application-specific data; based on said inserted de-duplication indicators, determine if a duplicate copy of any of the blocks in the identified portions of the first application-specific data exist in the first de-duplication database; and based on said inserted de-duplication indicators, determine if a duplicate copy of any of the blocks in the identified portions of the second application-specific data exists in the second de-duplication database.