Fast write and management of persistent cache in a system that includes tertiary storage

US9760485B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-9760485-B2
Application numberUS-201514607237-A
CountryUS
Kind codeB2
Filing dateJan 28, 2015
Priority dateJan 28, 2015
Publication dateSep 12, 2017
Grant dateSep 12, 2017

How to read this patent

A practical reading order for non-experts. Skip the full description unless you need deep technical detail.

  1. Title

    What the patent document calls the invention.

  2. Abstract

    A short plain-language summary of the technical disclosure.

  3. Assignees and inventors

    Who owns or filed the patent and who is credited as inventor.

  4. Key dates

    Filing, priority, publication, and grant dates set the timeline.

  5. First independent claim

    The legal scope of protection — read this for what is actually claimed.

  6. CPC / IPC classifications

    Technology tags used to group this patent with similar filings.

  7. Citations and related patents

    Prior art links and similar publications in this corpus.

Abstract

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.

First claim

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.

Assignees

Inventors

Classifications

  • 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

Patent family

Related publications grouped by family.

External sources

Frequently asked questions

Answers are generated from the same data shown on this page.

What does patent US9760485B2 cover?
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…
Who is the assignee on this patent?
IBM
What technology area does this patent fall under?
Primary CPC classification G06F12/0804. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Sep 12 2017 00:00:00 GMT+0000 (Coordinated Universal Time) (B2). Legal status and post-grant events are not shown on this page.
What related patents are in patentsdb?
We list 8 related publications on this page (citations in our corpus or others sharing the same primary CPC).