Data reduction techniques in a flash-based key/value cluster storage
US-9606870-B1 · Mar 28, 2017 · US
US11372772B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-11372772-B2 |
| Application number | US-201816013024-A |
| Country | US |
| Kind code | B2 |
| Filing date | Jun 20, 2018 |
| Priority date | Jun 20, 2018 |
| Publication date | Jun 28, 2022 |
| Grant date | Jun 28, 2022 |
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.
A storage system in one embodiment comprises a plurality of storage devices and a storage controller. The storage system is configured by the storage controller to receive a plurality of data records in a count-key-data format, to separate count and key portions of the data records from remaining portions of the data records, to store the count and key portions of the data records in at least one designated page of a set of pages of a logical storage volume of the storage system, and to store the remaining portions of the data records in one or more other pages of the set of pages of the logical storage volume of the storage system. The designated page of the set of pages of the logical storage volume may comprise a first page of the set of pages, and the one or more other pages of the set of pages may comprise respective ones of a sequence of consecutive pages following the first page.
Opening claim text (preview).
What is claimed is: 1. An apparatus comprising: a storage system comprising a plurality of storage devices and a storage controller; the storage controller comprising a processor coupled to a memory; the storage system being configured by the storage controller: to receive a plurality of data records in a count-key-data format; to separate count and key portions of the data records from remaining portions of the data records; to store the count and key portions of the data records in one designated page of a set of pages of a logical storage volume of the storage system; and to store the remaining portions of the data records in one or more other pages of the set of pages of the logical storage volume of the storage system. 2. The apparatus of claim 1 wherein the designated page of the set of pages of the logical storage volume comprises a first page of the set of pages. 3. The apparatus of claim 2 wherein the one or more other pages of the set of pages comprise respective ones of a sequence of consecutive pages following the first page. 4. The apparatus of claim 1 wherein the data records are part of a particular track comprising multiple data records in the count-key-data format. 5. The apparatus of claim 1 wherein storing the count and key portions of the data records in one designated page of a set of pages of a logical storage volume of the storage system comprises storing the count and key portions for a given one of the records in the designated page in association with a pointer to a location of the remaining portion of the given one of the records in the one or more other pages of the set of pages. 6. The apparatus of claim 1 wherein the designated page comprises a plurality of entries for count and key portions of respective ones of the data records with each of the entries of the designated page comprising count and key portions for a given one of the data records and a pointer to a location of the remaining portion of the given one of the records in the one or more other pages of the set of pages. 7. The apparatus of claim 1 wherein the count portion for a given one of the data records comprises a count field indicating a length of the given data record. 8. The apparatus of claim 1 wherein the key portion for a given one of the data records comprises a key field including key information of the given data record. 9. The apparatus of claim 1 wherein the remaining portion for a given one of the data records comprises user data of the given data record. 10. The apparatus of claim 1 wherein the storage system is configured to perform a deduplication operation on the one or more other pages of the set of pages of the logical storage volume but not on the designated page of the set of pages. 11. The apparatus of claim 1 wherein the storage system is configured to perform a compression operation on the one or more other pages of the set of pages of the logical storage volume but not on the designated page of the set of pages. 12. The apparatus of claim 1 wherein the storage system comprises a content addressable storage system. 13. The apparatus of claim 1 wherein the storage devices comprise respective non-volatile memory devices. 14. The apparatus of claim 1 wherein the storage system comprises a clustered storage system having a plurality of storage nodes each comprising a plurality of storage devices and wherein the storage controller is implemented in a distributed manner so as to comprise a plurality of distributed storage controller components implemented on respective ones of the storage nodes of the clustered storage system. 15. A method comprising: receiving a plurality of data records in a count-key-data format; separating count and key portions of the data records from remaining portions of the data records; storing the count and key portions of the data records in one designated page of a set of pages of a logical storage volume of a storage system; and storing the remaining portions of the data records in one or more other pages of the set of pages of the logical storage volume of the storage system; wherein the method is performed by at least one processing device comprising a processor coupled to a memory. 16. The method of claim 15 wherein the designated page of the set of pages of the logical storage volume comprises a first page of the set of pages and wherein the one or more other pages of the set of pages comprise respective ones of a sequence of consecutive pages following the first page. 17. The method of claim 15 wherein the designated page comprises a plurality of entries for count and key portions of respective ones of the data records with each of the entries of the designated page comprising count and key portions for a given one of the data records and a pointer to a location of the remaining portion of the given one of the records in the one or more other pages of the set of pages. 18. A computer program product comprising a non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes said at least one processing device: to receive a plurality of data records in a count-key-data format; to separate count and key portions of the data records from remaining portions of the data records; to store the count and key portions of the data records in one designated page of a set of pages of a logical storage volume of a storage system; and to store the remaining portions of the data records in one or more other pages of the set of pages of the logical storage volume of the storage system. 19. The computer program product of claim 18 wherein the designated page of the set of pages of the logical storage volume comprises a first page of the set of pages and wherein the one or more other pages of the set of pages comprise respective ones of a sequence of consecutive pages following the first page. 20. The computer program product of claim 18 wherein the designated page comprises a plurality of entries for count and key portions of respective ones of the data records with each of the entries of the designated page comprising count and key portions for a given one of the data records and a pointer to a location of the remaining portion of the given one of the records in the one or more other pages of the set of pages.
Emulated environment, e.g. virtual machine · CPC title
Logical to physical mapping or translation of blocks or pages · CPC title
Memory management in non-volatile memory, e.g. resistive RAM or ferroelectric memory · CPC title
Cleaning, compaction, garbage collection, erase control · CPC title
Multiple device management, e.g. distributing data over multiple flash devices · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.