Back to results
US 10,310,980 B2Granted
Prefetch command optimization for tiered storage systems
AssigneeSeagate Technology LLC
InventorGeorge Alexander Kalwitz
Life of this patent
Estimating the term…
Abstract
A system is provided. The system includes a storage controller configured to receive a prefetch command from a host interface. The storage controller includes a read cache memory that stores prefetch data in response to the prefetch command and a plurality of storage tiers coupled to the storage controller and providing the prefetch data. The plurality of storage tiers includes a fastest storage tier that stores the prefetch data if the read cache memory discards the prefetch data after storing the prefetch data.
Claims20
A system comprising:
- a host computer;
- a storage controller configured to receive a prefetch command from the host computer, the storage controller comprising:
- a read cache memory that stores prefetch data in response to the prefetch command;
- and
- metadata comprising a starting Logical Block Address, a Logical Block Address length for the prefetch command, and one or more of a time stamp, a prefetch command flag, and a read by host flag;
- and
- a plurality of storage tiers, each comprising storage devices having different performance characteristics than others of the plurality of storage tiers, coupled to the storage controller and providing the prefetch data, the plurality of storage tiers comprising:
- a fastest storage tier that stores the prefetch data from the read cache memory in response to the storage controller determines the prefetch data should be discarded from the read cache memory, the storage controller further configured to transfer the prefetch data between the read cache memory and the fastest storage tier.
5 more elements
A method comprising:
- receiving, by a hardware storage controller, an interface prefetch command from a host, the hardware storage controller comprising metadata comprising a starting Logical Block Address, a Logical Block Address length for the interface prefetch command, and one or more of a time stamp, a prefetch command flag, and a read by host flag;
- reading, from one or more storage tiers, interface prefetch data corresponding to the interface prefetch command into a read cache, the one or more storage tiers each comprising storage devices having different performance characteristics than others of the one or more storage tiers;
- and
- storing, by the hardware storage controller, the interface prefetch data to a fastest storage tier of the one or more storage tiers in response to the storage controller determining the interface prefetch data should be discarded from the read cache.
1 more element
A storage controller comprising:
- circuitry configured to allocate data between a top storage tier and secondary storage tiers, the top storage tier comprising relatively faster data access media than any of the secondary storage tiers, the circuitry further configured to receive data read and write requests from a host computer, each of the top and secondary storage tiers comprising storage devices having different performance characteristics than others of the top and secondary storage tiers;
- a storage controller cache memory to store prefetch data, the storage controller identifying prefetch data in the storage controller cache memory corresponding to target data prefetched from the top or secondary storage tiers, retaining the prefetch data in the storage controller cache memory to serve read requests for the target data from the host computer, and migrating the prefetch data to the top storage tier in response to receiving a read request for the target data;
- and
- metadata comprising a starting Logical Block Address, a Logical Block Address length for the prefetch data, and one or more of a time stamp, a prefetch command flag, and a read by host flag.
1 more element
Dependencies are inferred from the claim text.