摘要:
Methods and systems are provided for processing a cache. A candidate object is identified for updating. A fresh object corresponding to the candidate object is obtained if it is determined that a newer version of the candidate object is available. A destination buffer is selected from a group of primary and non-primary buffers based on an amount of available space in a primary buffer. The fresh object is stored in the destination buffer.
摘要:
An apparatus and method for creating and maintaining a cyclic or circular buffer are implemented using logical blocks corresponding to the physical blocks of the buffer. The logical blocks are mapped to the physical blocks of the cyclic buffer, and are used to create an index table for the buffer. Each entry in the index table corresponds to one or more blocks in the buffer, and has a logical block number respectively associated with a buffer block. When information from the buffer is accessed, the index table is consulted to determine if the requested information is stored in the buffer. If the information is stored in the buffer, the logical block number corresponding to the information is retrieved from the entry and translated into a corresponding physical block number. Using logical block numbers allows simple determination of whether the buffer block is valid, and how new or fresh the buffer block is without requiring a generation or cycle number.
摘要:
Systems and methods are disclosed in which a computer system having main memory and persistent memory is caused to perform a method for caching related objects. The computer system receives a plurality of objects from an origin server and computes a hash value based on source information about an object. Then the computer system stores the object based on the hash value with other related objects. Additionally, a computer system consistent with the present invention may retrieve related objects from the cache by performing a batch read of related objects.
摘要:
A system and method for performing policy-based storage management using data related to access frequency and file attribute accumulation. A switch device provides transparency for transactions between a client and a storage network. The transparency allows objects (e.g., files or directories) to be moved (e.g., migrated) on the storage network without affecting a reference to the object used by the client (e.g., a file handle). A monitoring module generates accumulation data associated with the transactions for use in policy-based management. The accumulation data can describe uses of the file such as how often certain files are accessed, modifications to files such as creations of new directories or files, and other uses.
摘要:
A NAS switch, in the data path of a client and a NAS file server on the storage network, provides a centralized point of reconfiguration after a network change that alleviates the need for reconfiguration of each connected client. The client uses a NAS request to access a storage object to the NAS switch using a switch file handle that is independent of object location and that can be used to locate the primary and its replica storage objects if the object is subsequently replicated. A replication module replicates a namespace separately from data contained therein. Afterwards, synchronicity module looks-up the switch file handle in a file handle replication table to determine if the object has been replicated and, if so, sends one of the replica NAS file handles. The synchronicity module also maintains synchronicity between the primary and replica file servers through critical NAS requests that modify objects such as create, delete, and the like.
摘要:
A transparent proxy server is implemented by directing particular client packets to a proxy server that handles communications between the client and an origin server. When a client sends a packet to an origin server, a router transparently redirects the packet to the proxy server by storing the proxy server address in the destination field and the origin server address in the record route options field. The proxy server sends connection setup requests to the origin server and forwards acknowledgement packets to the client. For other requests, the proxy server determines whether the requested information is stored in the proxy server cache. If so, the information is retrieved from the cache; if not, the information is retrieved from the origin server. All acknowledgement and information packets are sent to the client with the origin server address in the source field, making it appear that the origin server sent the packets.
摘要:
A NAS switch provides extended storage capacity to a file server in a decentralized storage network such as a NAS (Network Attached Storage) storage network. The NAS switch sits in the data path of a client on the front end and a directory file server and shadow file servers on the back end. A segregation module in the NAS switch replicates data from the directory file server to a shadow file server, and then replaces the data in the directory file server with holey files. Holey files, which store a range of consecutive values such as zero with negligible storage space, retain the attributes of the data without retaining its storage consumption. Thus, the directory file server can server as a single directory hierarchy for several shadow file servers containing data beyond a capacity of the directory file server. When the NAS switch receives operations from the client, an association module forwards directory operations to the directory file server and data operations to the shadow file server. The NAS switch also provides services to several shadow file servers from a single directory file server.
摘要:
The present invention provides selective migration in a storage network in accordance with a policy. The policy can include rules that establish which objects are migrated from a source file server to a destination file server based on file attributes (e.g., file type, file size, last access time, frequency of access). For example, large multimedia files that consume I/O bandwidth on expensive or critical file servers, without adding much value to enterprise productivity, can be migrated to a commodity or less critical file server.
摘要:
A system and method for parallel file system traversal using multiple job executors is disclosed. The system includes a pool of job executors, a job queue, and a trigger tracker. An object, representative of a node in the filesystem, is added (i.e., pushed) to the job queue for processing by an job executor. The job queue assigns (i.e., pops) objects to job executors in accordance to a LIFO (Last In First Out) ordering. Then the job executor performs an action such as copy. In one embodiment, the trigger tracker follows the processing of a child nodes to a particular child node. Thus, the filesystem is being traversed by several job executors at the same time.
摘要:
A caching server that provides faster access times for independently operating network elements. The caching server initiates information transfer and holds the requested information in its memory, instead of caching information transfer in response to user requests. The caching server preloads information from another server into its memory based on a set of predetermined criteria. Such preloading preferably occurs during low usage time, such as nighttime. The information source determines which information is described in the catalog in accordance with one of a second set of predetermined criteria. For example, the catalog may be organized according to size and the information source will organize the catalog by file size. The caching server preloads as many often-used files as will fit in its cache memory