Storage system

US10503424B2 · US · B2

Patent metadata
FieldValue
Publication numberUS-10503424-B2
Application numberUS-201615755454-A
CountryUS
Kind codeB2
Filing dateSep 21, 2016
Priority dateOct 19, 2015
Publication dateDec 10, 2019
Grant dateDec 10, 2019

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.

A storage system is provided that has a plurality of flash packages and a storage controller that controls read/write processing between a host and the flash packages. When data identical to data written in a second address of a second flash package of the plurality of flash packages is written to a first address of a first flash package of the plurality of flash packages, the storage system may store the second address in the first package in association with the first address, and perform deduplication. When the first flash package stores the second address in association with the first address and a read request for the first address is received from the storage controller, the first flash package may return the second address to the storage controller. In response to receiving the second address, the storage controller may acquire target read data from the second flash package.

First claim

Opening claim text (preview).

The invention claimed is: 1. A storage system comprising: a plurality of flash packages each having a plurality of nonvolatile storage media; and a storage controller configured to execute read/write processing between a host and the plurality of flash packages, wherein: the storage system is configured to store, when data identical to data written in a second address of a second flash package of the plurality of flash packages is written to a first address of a first flash package of the plurality of flash packages, the second address in the first package in association with the first address; and the first flash package is configured to return, when the second address is stored in association with the first address, the second address to the storage controller in response to receiving a read request for the first address from the storage controller; the storage controller is configured to issue, in response to receiving the second address from the first flash package, a read request to the second flash package and receive target read data from the second flash package. 2. The storage system of claim 1 , wherein: the storage controller is configured to receive, from the plurality of flash packages, historical information of write requests accepted by the flash packages; and the storage system is configured to detect, based on the historical information, that identical data is written in a plurality of areas of the plurality of flash packages. 3. The storage system of claim 2 , wherein: the historical information includes addresses of the flash packages for which write requests have been issued by the storage controller and a characteristic amount of the write data designated by the write requests; and the storage system is configured to determine, in a case that the characteristic amount included in the historical information created by the first flash package and the characteristic amount of data stored in the second flash package are identical, that data identical to the first flash package is written in the second flash package. 4. The storage system of claim 3 , wherein: in response to receiving, from the storage controller, a write request for the write data, the flash package is configured to: calculate a characteristic amount of the write data, and create the historical information including an address of the flash package included in the write request, a characteristic amount of the write data, and a characteristic amount of pre-update data of the write data. 5. The storage system of claim 4 , wherein the storage system is configured to: determine whether data having an identical characteristic amount to the characteristic amount of the pre-update data included in the historical information is stored in any of the plurality of flash packages; and transmit, to the flash package that created the historical information, in a case that data having the same characteristic amount as the characteristic amount of the pre-update data is not stored in the plurality of flash packages, information indicating that the pre-update data may be deleted. 6. The storage system of claim 3 , wherein: each of the plurality of flash packages is configured to manage information related to characteristic amounts of a predetermined range and addresses of the flash packages in which data having the characteristic amount are stored, in response to receiving the write request and the write data, the flash package is configured to: calculate a characteristic amount of the received write data, create the historical information including a write destination address of the write data and the characteristic amount, and transmit, to the storage controller, the historical information, the storage controller that received the historical information is configured to: identify, from among the plurality of flash packages, the flash package that manages the characteristic amount included in the historical information, and transmit, to the identified flash package, the historical information, the flash package that has received the historical information is configured to determine whether data having an identical characteristic amount as the characteristic amount of the write data included in the historical information is stored in any of the plurality of flash packages, the second flash package is configured to transmit, in a case that it is determined that data having an identical characteristic amount as the characteristic amount of the write data is stored in the second address, the second address to the first flash package via the storage controller, and the first flash package is configured to store the second address in association with the first address. 7. The storage system of claim 6 , wherein: the first flash package and the second flash package belong to a same RAID group; in a case that the address of the first flash package in which the write data is written and the address of the second flash package in which data having an identical characteristic amount as the characteristic amount of the write data are identical, the flash package that received the historical information is configured not to transmit, to the first flash package, an address within the second flash package in which identical data is stored. 8. The storage system of claim 3 , wherein: the storage system further includes a plurality of real storage systems having a storage controller and a plurality of flash packages connected to the storage controller, the first flash package is connected to a first storage controller in the plurality of real storage systems and the second flash package is connected to a second storage controller in the plurality of real storage systems, the first flash package is configured to return, when the second address is stored in association with the first address, the second address to the first storage controller in response to receiving a read request for the first address from the first storage controller, the first storage controller is configured to issue, in response to receiving the second address from the first flash package, a request to the second storage controller to read data from the second flash package, and the second storage controller is configured to read target read data from the second flash package and return it to the first storage controller. 9. The storage system of claim 8 , wherein: each of a plurality of storage controllers is configured to manage information related to characteristic amounts of a predetermined range and addresses of the flash packages in which data having the characteristic amount are stored, in response to receiving the write request and the write data, the first flash package is configured to: calculate a characteristic amount of the received write data, create the historical information including a write destination address of the write data and the characteristic amount, and transmit, to the first storage controller, the historical information, in a case that the storage controller that manages the characteristic amount included in the historical information is the second storage controller, the first storage controller is configured to transmit the historical information to the second storage controller, and the second storage controller that has received the historical information is configured to determine whether data having an identical characteristic amount as the characteristic amount of the write data included in the historical information is stored in any of the plurality of flash packages. 10. The storage system of claim 8 , wherein: each of the plurality of flash packages is configured to manage information related to ch

Assignees

Inventors

Classifications

  • in block erasable memory, e.g. flash memory · CPC title

  • in relation to throughput · CPC title

  • Non-volatile semiconductor memory device, e.g. flash memory, one time programmable memory [OTP] · CPC title

  • from or to individual record carriers, e.g. punched card {, memory card, integrated circuit [IC] card or smart card} · CPC title

  • Plurality of storage devices · 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 US10503424B2 cover?
A storage system is provided that has a plurality of flash packages and a storage controller that controls read/write processing between a host and the flash packages. When data identical to data written in a second address of a second flash package of the plurality of flash packages is written to a first address of a first flash package of the plurality of flash packages, the storage system ma…
Who is the assignee on this patent?
Hitachi Ltd
What technology area does this patent fall under?
Primary CPC classification G06F3/0641. Mapped technology areas include Physics.
When was this patent published?
Publication date Tue Dec 10 2019 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 2 related publications on this page (citations in our corpus or others sharing the same primary CPC).