Memory system and host device
US-2024394189-A1 · Nov 28, 2024 · US
US9760485B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-9760485-B2 |
| Application number | US-201514607237-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jan 28, 2015 |
| Priority date | Jan 28, 2015 |
| Publication date | Sep 12, 2017 |
| Grant date | Sep 12, 2017 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Embodiments of the invention relate to receiving a write request that includes a write data and an address of a target block in tertiary storage. In response to the write request, a write-miss is detected at a cache located in persistent storage. Based on detecting the write-miss, the write data and associated metadata are written to a fast write storage location and the write request is marked as complete. In addition, the target block is retrieved from the address in the tertiary storage and stored in the cache. Contents of the fast write storage location are merged with the contents of the target block in the cache.
Opening claim text (preview).
What is claimed is: 1. A method comprising: receiving a write request that includes a write data and an address of a target block in tertiary storage, wherein the tertiary storage is tape storage; detecting a write-miss at a cache in response to the write request, the cache located in persistent storage; and in response to detecting the write-miss: writing the write data and associated metadata to a fast write storage location in a fast write data storage and not to the cache, and marking the write request as complete, wherein the fast write data storage is separate from the cache; retrieving the target block from the address in the tertiary storage; storing the target block in the cache; and merging contents of the fast write storage location with the contents of the target block in the cache. 2. The method of claim 1 , wherein the retrieving is initiated in parallel with or subsequent to the writing being initiated. 3. The method of claim 1 , wherein the method further comprises: receiving at least one additional write request that includes additional write data and the address of the target block in tertiary storage; and writing the additional write data and associated metadata to the fast write storage location and marking the at least one additional write request as complete. 4. The method of claim 1 , wherein the retrieving, storing, and merging are further in response to the fast write storage location having less than a threshold amount of free space. 5. The method of claim 1 , wherein the fast write storage is persistent storage. 6. The method of claim 1 , further comprising: receiving a request to read data from the target block; determining whether all or a subset of the read data is located in the fast write storage location in response to receiving the request. 7. The method of claim 1 , wherein the fast write data storage is persistent storage and the fast write storage location includes a log entry in a log. 8. The method of claim 7 , wherein the writing further comprises updating a memory map in volatile storage based on the write data and associated metadata, the memory map provides an index into contents of the log, and the index is utilized by the merging to identify one or more log entries corresponding to the target block. 9. The method of claim 1 , wherein the fast write storage location is a shadow cache block and the metadata indicates a starting and ending location of the write data in the target block. 10. The method of claim 1 , wherein the metadata is stored in volatile memory in the fast write storage location. 11. A storage system, comprising: a storage controller coupled to a cache storage and to a tertiary storage, the cadre storage comprising a persistent cache storage device, the storage system configured for: receiving a write request that includes a write data and an address of a target block in the tertiary storage, wherein the tertiary storage is tape storage; detecting a write-miss at the cache storage in response to the write request; and in response to detecting the write-miss: writing the write data and associated metadata to a fast write storage location in a fast write data storage and not to cache, and marking the write request as complete, wherein the fast write data storage is separate from the cache; retrieving the target block from the address in the tertiary storage; storing the target block in the cache storage; and merging contents of the fast write storage location with the contents of the target block in the cache storage. 12. The system of claim 11 , wherein the retrieving is initiated in parallel with or subsequent to the writing being initiated. 13. The system of claim 11 , wherein the storage system is further configured for: receiving at least one additional write request that includes additional write data and the address of the target block in the tertiary storage; and writing the additional write data and associated metadata to the fast write storage location and marking the at least one additional write request as complete. 14. The system of claim 11 , wherein the retrieving, storing, and merging are further in response to the fast write storage location having less than a threshold amount of free space. 15. The system of claim 11 , wherein the fast write data storage is persistent storage. 16. The system of claim 11 , wherein the storage system is further configured for: receiving a request to read data from the target block; determining whether all or a subset of the read data is located in the fast write storage location in response to receiving the request. 17. The system of claim 11 , wherein: the fast write data storage is persistent storage and the fast write storage location includes a log entry in a log, the writing further comprises updating a memory map in volatile storage based on the write data and associated metadata, the memory map provides an index into contents of the log, and the index is utilized by the merging to identify one or more log entries corresponding to the target block. 18. A computer program product comprising: a computer readable storage medium having program code embodied therewith, the program code is executable by a processor to: receive a write request that includes a write data and an address of a target block in tertiary storage, wherein the tertiary storage is tape storage; detect a write-miss at a cache in response to the write request, the cache located in persistent storage; and in response to detecting the write-miss: write the write data and associated metadata to a fast write storage location in a fast write data storage and not to the cache, and marking the write request as complete, wherein that fast write storage is separate from the cache; retrieve the target block from the address in the tertiary storage; store the target block in the cache; and merge contents of the fast write storage location with the contents of the target block in the cache. 19. The computer program product of claim 18 , wherein the retrieving is initiated in parallel with or subsequent to the writing being initiated.
In storage controller · CPC title
with main memory updating (G06F12/0806 takes precedence) · CPC title
Disk storage · CPC title
Data transfer between cache memory and other subsystems, e.g. storage devices or host systems · CPC title
Non-volatile memory · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.