Patent ID: 8356174

Claim:
A data shadowing system, connected to a plurality of monitored computer systems, for the automatic backup storage of data into the data shadowing system that is written in the memories of a plurality of monitored computer systems and the selective retrieval of the data from the data shadowing system for restoration to the memories of the monitored computer systems, the data shadowing system comprising: a memory module, connected to a plurality of monitored computer systems via a communication medium, for storing a shadow copy of the data which is written in the memories of the plurality of monitored computer systems; a customer data file manager, resident in each of the plurality of monitored computer systems, for autonomously transmitting customer data files, resident on the monitored computer system, to the memory module, comprising: a customer data file map generator for autonomously mapping file directory structures associated with each of the customer data files that are written in the memory of the monitored computer system into file tree information which identifies original names of customer data files as stored on the monitored computer system, and a corresponding location in the memory module which stores a copy of these customer data files to enable both memory-level and file-level restoration of data to replicate the disk image on the memory of the monitored computer system; a customer data file hash generator for hashing each of the customer data files to generate a hash value of each of the customer data files to uniquely identify each customer data file; a customer data file transmitter for transmitting the customer file and the hash value of the hashed customer data file to the memory module; and wherein the memory module comprises: customer data file storage, for storing each of the customer data files and the hash value of the hashed customer data file received from each of the monitored computer systems via the communication medium, in the memory module; and a duplication eliminator, responsive to a plurality of the customer data files having the same hash value, for storing a single instance of the customer data file in the memory module.