摘要:
A data storage system provides generalized record caching through a control unit adapted to support track caching in the upper level store of a two level memory. Dynamic reallocation of space between each type of caching in the upper store follows operating patterns of host computer systems using the data storage system. A storage controller cache has a plurality of segments. A directory data entry data structure is allocated each segment. Such allocated directory entries are used to identify tracks as cached. A plurality of unallocated directory entries are also provided. As a record is cached in a segment outside of a track slot, an unallocated directory entry is used to identify a virtual track in cache corresponding to the track of the record in the lower level store. Records from one track can thus appear in several segments outside track slots. Tracking of records to locate records least recently used is done globally over all track slots and record caching segments and locally within individual record caching segments. A mechanism is provided for identifying record slots, as they become least recently used, and dropping them from the upper level store in the face of competing demands for the space. A second mechanism identifies least recently used segments for dropping from the upper level store.
摘要:
The invention teaches a system and method for temporarily buffering data written to a storage system by a host computer. The storage system includes direct access storage devices and a cache. The cache is used as the buffer for both caching and noncaching data records before destaging to a direct access storage device. Upon receipt of a channel program from a host computer containing data for records to be updated, the storage controller determines if the records are currently cached. If the records are not cached, a write miss has occurred. Upon a write miss the storage controller checks an attribute transmitted in the channel program to determine if the records have a regular format. Records having a known, regular format are buffered in cache until destaged by a background process.
摘要:
An improved storage controller and method for storing and recovering data. The storage controller includes a first cluster for directing data from a host computer to a storage device and a second cluster for directing data from a host computer to a storage device. A first cache memory is connected to the first cluster and a second cache memory is connected to the second cluster. A first nonvolatile memory is connected to the second cluster and a second nonvolatile memory is connected to the first cluster. The first and second cache memories and the first and second nonvolatile stores are thus "cross-coupled" to the first and second clusters to provide improved data recovery capability. Data is directed to the first cache and backed up to the first nonvolatile memory in a first operational mode. In the event of failure of the first nonvolatile memory, data is recovered from the first cache memory. In a particular embodiment, in the event of failure of the first nonvolatile memory, data is directed from the first cache memory to the second cache memory. The cache memories and nonvolatile stores may also be formed on separate power boundaries. By allowing for use of the first cache after failure of an associated nonvolatile memory, a system and technique for mitigating performance degradation in a storage control unit due to a failure in nonvolatile memory associated therewith may be obtained.
摘要:
A method and system for enhancing the efficiency of communication between one or more host computers and a storage system controller during a data search within either the associated storage systems or within the storage system controller itself. A storage system controller, coupled to one or more host computers via multiple communication channels, is utilized to control access to one or more direct access storage devices. A host computer authorizes the storage system controller to search within a range of data locations within the storage system, sets an initial location from which the data search will begin, and specifies a key field argument to search for. The host computer then permits the storage system controller to independently search the authorized range of data locations within the storage system or within cache memory within the storage system controller. The storage system controller examines multiple records within the authorized range of data locations to locate a desired record associated with the key field argument and presents a status report to the host computer only after the desired record is located or the entire range of data is searched and the desired record was not located. Allowing the storage system controller to independently search records and report status only after completion of an attempt to find a desired record within an authorized range of records minimizes communication overhead. Reducing the number of status reports presented over the communication channel enhances communication efficiency.
摘要:
A converter system that allows a host system using a first interface to use a second storage using a second interface. The invention provides a method to allow an ECKD MVS DASD storage using an ESCON interface to be used by an open system using a SCSI-type interface without changes to the ESCON storage or the open storage interfaces. The method also permits the SCSI-type interfaced open system to be physically located greater than 25 meters from the ESCON storage system. The method involves mapping the SCSI-type interface data and commands into parameters used and understood by the ESCON storage. The invention may also be implemented to provide a digital data storage medium containing the method of the invention and a digital apparatus capable of executing the invention.
摘要:
Provided are a method, system, and article of manufacture for using virtual copies in a failover and failback environment. Updates are copied from a primary first storage at the primary site to a secondary first storage at the secondary site during system operations. A second storage is maintained at at least one of the primary and secondary sites. A failover is performed from the primary site to the secondary site after a failure at the primary site. The at least one second storage is used after recovery of the primary site to synchronize the secondary site to the primary site. Only updates made to the secondary site during the failover are copied to or from the at least one second storage in response to the recovery at the primary site.
摘要:
Disclosed is a system and method for caching data. A processor receives data from a host to modify a track in a first storage device. The processor stores a copy of the modified data in a cache and indicates in a second storage device the tracks for which there is modified data in cache. During data recovery operations, the processor processes the second storage device and data therein to determine the tracks for which there was modified data in cache. The processor then marks the determined tracks as failed to prevent data at the determined tracks in the first storage device from being returned in response to a read request until the failure is resolved. In further embodiments, in response to detecting a partial failure within the storage system, the processor would scan the cache to determine tracks for which there is modified data stored in the cache. The processor then stores in the second storage device information indicating the tracks having modified data in cache and schedules the destaging of the modified data from the cache to the first storage device. The processor is further capable of receiving and processing read/write requests directed to the first storage device before all the modified data is destaged from cache.
摘要:
In a PCI bus system, a method and system check for errors in rite data transferred from a PCI data source across a PCI bus to the PCI bus system, the data comprising a plurality of blocks. Redundancy calculation logic receives the write data across the PCI bus, calculates a check value for each block of the data transferred across the PCI bus, and updating any previously calculated check value with the calculated check value at a storage location of a storage memory. Data path logic is coupled to the PCI bus and to the storage memory, and responds to a unique identifier of a redundancy write command sent subsequent to completion of the transfer of the write data across the PCI interface. The data path logic responds to the write command unique identifier, detecting the updated calculated check value at the storage location of the storage memory. Error check logic coupled to the data path logic determines whether the detected updated calculated check value indicates an error, and upon the detected updated calculated check value indicating an error, signals the error.
摘要:
Disclosed is a method, system, and program for prestaging data into cache from a storage system in preparation for data transfer operations. A first processing unit communicates data transfer operations to a second processing unit that controls access to the storage system. The first processing unit determines addressable locations in the storage system of data to prestage into cache and generates a data structure capable of indicating contiguous and non-contiguous addressable locations addressable locations in the storage system including the data to prestage into the cache. The first processing unit transmits a prestage command to the second processing unit. The prestage command causes the second processing unit to prestage into cache the data at the addressable locations indicated in the data structure. The first processing unit then requests data at the addressable locations indicated in the data structure. In response, the second processing unit returns the requested data from the cache.
摘要:
Disclosed is a system for managing data in cache. A list of data entries in a first memory area has a first end and a second end, such as a most recently used (MRU) end and least recently used (LRU) end. A first pointer addresses a data entry in the list and a second pointer addresses another data entry in the list that is not at the first and second ends. Data from a second memory area is provided to add to the list. A determination is made as to whether the provided data to add to the list is one of a first type and second type of data, such as sequentially accessed data or non-sequentially accessed data. The provided data is stored in the first memory area as a new data entry in the list. The first pointer is modified to address the new data entry after determining that the provided data is of the first type. After determining that the provided data is of the second type, the second pointer is processed to determine where to add the new data entry to the list between the first and second ends.