Method and system for providing common coordination and...

Electrical computers and digital processing systems: multicomput – Computer-to-computer data routing – Least weight routing

Reexamination Certificate

Rate now

  [ 0.00 ] – not rated yet Voters 0   Comments 0

Details

C709S241000, C709S202000, C709S226000, C709S241000

Reexamination Certificate

active

06708227

ABSTRACT:

BACKGROUND OF THE INVENTION
1. Field of the Invention
The present invention relates to volume snapshots in a computer system. More particularly, the present invention relates to a method and system for coordinating and administrating diverse, but similar elements in a computer system, and even more particularly, to a method and system for coordinating and administrating a plurality of snapshot providers.
2. Brief Description of Prior Developments
When a computer system crashes or the system freezes, many consequences ranging from the trivial to the irreparable may result. For standalone computers or client computers, a local system crash can result in the loss of work product. For example, anything that has not been saved properly may be lost from further access or use. Furthermore, a user may be inconvenienced by having to reboot the computer system, thereby expending additional time. In the case of network servers and other computer systems, a system crash can be even more sweeping, affecting multiple users, clients, and/or customers. As computer systems grow ever more complex, it seems that programmers, collectively speaking, have not been able to entirely eliminate system states in which a computer or application “freezes” or “crashes.”
Accepting it to be true that the probability of a system crash or freeze is not zero, a field of study, known as recovery, has arisen which relates to improving the process whereby a computer system recovers from a crashed state to a stable state. Recovery from system instability has been the subject of much research and development.
In general, the goal of reboot or redo recovery is, after a crash, to return the computer system to a previous and presumed correct state in which the computer system was operating immediately prior to the crash or at a point in time for which a consistent set of backup information is known. Because point in time information representative of a consistent state for all of an application's dependencies can not be ensured, some restore or backup services may incorrectly reset an application's state to an incorrect state, or alternatively, an extremely resource intensive brute force freeze or flush of every process of the computer system may be required in order to recover to a stable state for the application, volume or other object being backed up or restored.
For example, database system designers have attempted to design database recovery techniques which minimize the amount of data lost, the amount of work needed to recover to the pre-crash operating state, and the performance impact of recovery on the database system during normal operation. A known difficulty encountered with recovering target data object(s) is that there may exist various dependencies associated with a target object that can prevent a consistent point in time copy of the target data. For example, the occurrence of file save operations, registry write operations, database storage operations, active directory write operations, access operations, authentication operations and/or other like dependencies might exist prior to the initiation of a restore or backup service, and prevent atomic point in time recovery or backup of target data. While a full backup of crashed computer system volume(s) may be performed for an atomic point in time, it is a resource intensive process, in terms of both time, memory and processing, and is to be avoided if possible.
In response to difficulties associated with existing backup techniques, a type of efficient backup technique has been developed that utilizes a snapshot provider for providing snapshot services to target object(s) or volume(s). As an alternative to a full backup, a volume snapshot is also a consistent, point in time copy of a volume. However, instead of implementing a brute force file by file recovery of a volume any time the system crashes, a snapshot enables the state of a computer system to be frozen at an arbitrary point in time, which enables a much faster and less resource intensive backup process. In general, a snapshot is created at a time t
0
. After t
0
, the content of the snapshot itself can be backed-up to an off-line target, and a full backup is thus avoided through the use of differential files, which enable the system to act only upon that which has changed since a previous time. A backup application may use snapshot services, but many different types of services other than backup services may also use snapshot services. Any source or service that might desire a consistent point in time view of a data set is a good candidate for the use of snapshot service providers.
To maintain the snapshot data, when a change is written to an allocation unit (e.g., a cluster) that was in use at the time of the snapshot, the original data is copied from the allocation unit to the differential file before writing the new data. This method is often referred to as “copy-on-write.” In this way, the state i.e., snapshot of the base volume at the time the snapshot was taken, is accessible by reading current data from the base volume in conjunction with any data stored in the differential file associated with the snapshot.
“Support for Multiple Temporal Snapshots of Same Volume”, U.S. patent application Ser. No. 09/505,447, filed FEb. 16, 2000, to Cabrera et al., “Kernel-Based Crash-Consistency Coordinator”, U.S. patent application Ser. No. 09/505,344, filed Feb. 16, 2000, to Golds et al. and “System and Method for Growing Differential File on a Base Volume of a Snapshot”, U.S. patent application Ser. No. 09/505,450, filed Feb. 16, 2000, to Kusters et al. relate to backup processes generally and are directed to different aspects of snapshot systems. These applications are hereby incorporated by reference, as background information relating to the provision of snapshot services.
Thus, a snapshot is a logical copy of the information stored on a volume representative of a particular instant in time. A snapshot may be used like a backup copy of a volume, but is much faster to create than a full backup. A “base volume” is the volume that is represented by the snapshot. A snapshot system uses a differential file to track the changes written to the base volume after the snapshot is captured. If multiple snapshots are taken over time, a differential file exists for each snapshot.
In systems having multiple volumes, data or files may be distributed across more than one volume. Some programs may maintain large data files on one volume and log files on another volume. Many of those programs include the capability to recover the data and log files in the event of a system crash, but only if the crash occurred simultaneously across all affected volumes. However, existing snapshot systems do not have the ability to coordinate snapshot sets across multiple volumes. Thus, current crash recovery software and the like can not reliably reconstruct related files distributed across those multiple volumes.
Additionally, a developer presently has to choose among multiple snapshot providers or write code that accommodates different types of snapshot providers. Some snapshot providers, e.g., implement what are known as split-mirror snapshots, while others implement differential snapshots. Thus, there is no standard or uniform protocol for making calls to or otherwise communicating with a plurality of snapshot providers from an application or other object. Furthermore, since different volumes may use different snapshot providers, there is currently a difficulty in collectively storing snapshot information about volume(s) that are serviced by different snapshot providers.
To provide more insight into the problem, there are multiple companies that have developed different snapshot services, with various compatibility and interchangeability issues. EMC, for example, is a provider of a hardware-based solution that utilizes a technique known as the “split-mirror” technique. On the other hand, there are also companies that provide software-based solutions. Some companies provide file-based solutions while still others provi

LandOfFree

Say what you really think

Search LandOfFree.com for the USA inventors and patents. Rate them and share your experience with other people.

Rating

Method and system for providing common coordination and... does not yet have a rating. At this time, there are no reviews or comments for this patent.

If you have personal experience with Method and system for providing common coordination and..., we encourage you to share that experience with our LandOfFree.com community. Your opinion is very important and Method and system for providing common coordination and... will most certainly appreciate the feedback.

Rate now

     

Profile ID: LFUS-PAI-O-3221742

  Search
All data on this website is collected from public sources. Our data reflects the most accurate information available at the time of publication.