摘要:
A system and method for managing logical versions of a filesystem made through a near-instantaneous copy process is provided. Each logical version of the filesystem, including the primary version, is assigned a unique epoch number or other identifying value, and each filesystem object is assigned two epoch numbers that define the space of logical versions for which the object exists. A list of all valid epoch numbers are maintained in a version table. The near-instantaneous creation of a logical version of the filesystem requires inserting a unique epoch number entry in the version table (106) and the next epoch number to the new logical version. An original state of the system is preserved through the use of a copy-on-write procedure for filesystem objects that are reference by that logical filesystem version (120). Accordingly, filesystem versions are maintained and original states of previous states of the logical filesystem versions are preserved.
摘要:
Various copy-on-write implementations for a computing environment are presented. One copy-on-write implementation includes employing a read mapping table to perform a first virtual block to physical block mapping for use in reading a block of data of a file to be copy-on-written from physical storage for modification; and employing a different, write mapping table to perform a second virtual block to physical block mapping for use in writing a modified block of the file data to physical storage, wherein copy-on-write of the block of data is achieved using a single write operation. In another implementation, a distributed copy-on-write of a file for a client server environment is presented. This distributed copy-on-write includes performing, by a first client, copy-on-write of at least one block of data of the file to be copy-on-written, and performing, by a second client, copy-on-write of at least one other block of data of the file, wherein multiple clients perform the copy-on-write of the file.
摘要:
A method of tracking events and their sequences in a computer system and predicting the probability of future events using a data structure that represents the predictive nature of the system after an initial event correlating to an object in the system. The invention reduces memory requirements and computational complexity by partitioning a trie into subtries where each subtrie represents a set of sequences of events, statically limiting the size of the partitions by limiting the number of descendants below the node defining the partition, and refreshing parts of the set of children and releasing slots occupied by particular descendants when additional space is needed. In addition, each partition can be attached to the object which it represents and moved in and out of memory with that object. In this way, data structures which would otherwise grow as large as N.sup.O and which have a computational complexity of predictions on the order of O.times.N, where N is the number of objects modeled and O is the model order, will be limited in size to N which, in turn, limits the computational complexity to order O.
摘要:
A system, method, and computer program product for a lease-based timeout scheme that addresses fencing's shortcomings. Unlike fencing, this scheme (or protocol) enables an isolated computer to realize it is disconnected from the distributed system and write its dirty data out to storage before its locks are stolen. In accordance with the invention, data consistency during a partition in a distributed system is ensured by establishing a lease based protocol between in the distributed system wherein a client can hold a lease with a server. The lease represents a contract between a client and a server in which the server promises to respect the client for a period of time. The server respects the contract even when it detects a partition between the client and itself.
摘要:
“A system and associated method restore a file system from incremental backups in the presence of deletion, without restoring deleted files. This is accomplished by logging deletions in a deletion log. Using the deletion log, the system re-deletes the deleted files upon a restore operation to an incremental backup epoch. The system the logs deletions so that the files that were deleted and survived a backup epoch have their records logged. The activity log enables an incremental backup from a prior snapshot, and represents a point-in-time version of the file system. The system can either not restore the deleted files, or, alternatively, it can restore the deleted files and then re-deletes them.”
摘要:
A data storage system randomly determines a start offset at which to write objects to a storage medium. For updated blocks of the object, e.g., for blocks written during copy-on-write as part of a point-in-time snapshot, the updated block is written in the region of the original file or as close thereto as possible to achieve “virtual contiguity”. Subsequent reads of the object read entire region containing both the object and, potentially, “chaff” data other than the object. The “chaff” data is discarded by the I/O system or file system using, e.g., a bit mask, subsequent to the read.
摘要:
The present invention discloses a method, apparatus, and article of manufacture for generating, transmitting, replicating, and rebuilding in-place reconstructible software updates to a file from a source computer to a target computer updates to a file from a source computer to a target computer. The present invention stores the first version of the file and the updates to the first version of the file in the memory of the source computer. The first version is also stored in the memory of the target computer. The updates are then transmitted from the memory of the source computer to the memory of the target computer. The present invention uses these updates at the target computer to build the second version of the file in-place.