Reducing storage of blockchain metadata via dictionary-style compression

US2020212932A1 · US · A1

Patent metadata
FieldValue
Publication numberUS-2020212932-A1
Application numberUS-201816237586-A
CountryUS
Kind codeA1
Filing dateDec 31, 2018
Priority dateDec 31, 2018
Publication dateJul 2, 2020
Grant date

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 method of reducing the storage requirements of blockchain metadata via dictionary-style compression includes receiving a request to add a transaction block to a blockchain. The method further includes determining an identifier (ID) of a dictionary block most recently stored on the blockchain. The method further includes compressing, by a processing device, one or more transactions of the transaction block based on the dictionary block to generate a compressed transaction block. The method further includes adding the ID of the dictionary block to the compressed transaction block. The method further includes providing the compressed transaction block, including the ID of the dictionary block, for storage on the blockchain.

First claim

Opening claim text (preview).

What is claimed is: 1 . A method of reducing the storage requirements of blockchain metadata via dictionary-style compression, the method comprising: receiving a request to add a transaction block to a blockchain; determining an identifier (ID) of a dictionary block most recently stored on the blockchain; compressing, by a processing device, one or more transactions of the transaction block based on the dictionary block to generate a compressed transaction block; adding the ID of the dictionary block to the compressed transaction block; and providing the compressed transaction block, including the ID of the dictionary block, for storage on the blockchain. 2 . The method of reducing the storage requirements of blockchain metadata via dictionary-style compression of claim 1 , wherein the dictionary block comprises a first dictionary corresponding to a first field of data in the transaction block, and wherein the first dictionary comprises a first key-value pair representing compressed metadata and corresponding raw metadata of the first field, respectively. 3 . The method of reducing storage of blockchain metadata via dictionary-style compression of claim 2 , wherein the dictionary block further comprises a second dictionary corresponding to a second field of data in the transaction block, and wherein the second dictionary comprises a second key-value pair representing compressed metadata and corresponding raw metadata of the second field, respectively. 4 . The method of reducing storage of blockchain metadata via dictionary-style compression of claim 3 , wherein the dictionary block further comprises a data schema identifying the first dictionary and corresponding first field of data, and the second dictionary and corresponding second field of data. 5 . The method of reducing storage of blockchain metadata via dictionary-style compression of claim 4 , wherein compressing the one or more transactions of the transaction block based on the dictionary block to generate the compressed transaction block comprises: identifying raw metadata in a text field of the transaction block to be compressed; identifying the first dictionary block based on the ID of the dictionary in the transaction block; determining that the text field of the transaction block is the same as the first field of data of the transaction block; determining, based on the data schema of the first dictionary block, that the text field of the transaction block corresponds to the first field of data of the first dictionary; based on the determining, identifying compressed metadata corresponding to the raw metadata in the first dictionary; and replacing the raw metadata with the corresponding compressed metadata. 6 . The method of reducing storage of blockchain metadata via dictionary-style compression of claim 4 , further comprising: identifying compressed metadata in a text field of the transaction block to be read; identifying the first dictionary block based on the ID of the dictionary in the transaction block; determining that the text field of the transaction block is the same as the first field of data of the transaction block; determining, based on the data schema of the first dictionary block, that the text field of the transaction block corresponds to the first field of data of the first dictionary; based on the determining, identifying raw metadata corresponding to the compressed metadata in the first dictionary; and providing the raw metadata to be read. 7 . The method of reducing storage of blockchain metadata via dictionary-style compression of claim 1 , further comprising: generating, based on a set of transaction blocks most recently added to the blockchain, a new dictionary block; and providing the new dictionary block for storage on the blockchain. 8 . The method of reducing storage of blockchain metadata via dictionary-style compression of claim 7 , wherein raw metadata corresponding to a higher frequency value in the new dictionary block is assigned a smaller corresponding compressed metadata value than raw metadata corresponding to a lower frequency value. 9 . A blockchain compression system comprising: a memory; and a processing device, operatively coupled to the memory, to: receive a request to add a transaction block to a blockchain; determine a transaction schema corresponding to the transaction block; compress, using the transaction schema and at least one corresponding dictionary, metadata of the transaction block to generate a compressed transaction block; and add the compressed transaction block to the blockchain. 10 . The blockchain compression system of claim 9 , wherein to determine the transaction schema corresponding to the transaction block the processing device is further to receive an indication of the transaction schema from the transaction block. 11 . The blockchain compression system of claim 9 , wherein to determine the transaction schema corresponding to the transaction block the processing device is further to: determine whether a dictionary block exists on the blockchain; in response to determining that a dictionary block exists on the blockchain, receive an indication of the transaction schema from the dictionary block; and in response to determining that the dictionary block does not exist on the blockchain, add the dictionary block to the blockchain and receive an indication of the transaction schema from the dictionary block. 12 . The blockchain compression system of claim 11 , wherein the dictionary block is a most recently added dictionary block. 13 . The blockchain compression system of claim 9 , wherein to determine the transaction schema corresponding to the transaction block the processing device is further to receive an indication of the transaction schema from a transaction block of the blockchain. 14 . The blockchain compression system of claim 13 , the processing device further to: in response to a determination that the transaction schema is outdated, update the transaction schema before compressing the metadata of the transaction block. 15 . The blockchain compression system of claim 1 , the processing device further to: determine that a compression level of the compressed transaction block is below a compression threshold; and in response to the determination: generate a new dictionary; and recompress the transaction block to generate the compressed transaction block. 16 . The blockchain compression system of claim 1 , wherein the compressed transaction block comprises: a dictionary block identifier (ID) of the corresponding dictionary and a schema ID of the transaction schema. 17 . The blockchain compression system of claim 1 , wherein the compressed transaction block comprises: a dictionary block of the corresponding dictionary. 18 . A non-transitory computer-readable storage medium having instructions stored thereon that, when executed by a processing device, causes the processing device to: receive a request to access a transaction block on a blockchain; determine a transaction schema corresponding to the transaction block; decompress, by a processing device, using the transaction schema and at least one corresponding dictionary, metadata of the transaction block to generate a decompressed transaction block; and provide access to the decompressed transaction block. 19 . The non-transitory computer-readable storage medium of claim 18 , wherein to determine the transaction schema corresponding to the transaction block the processi

Assignees

Inventors

Classifications

  • using hash chains, e.g. blockchains or hash trees · CPC title

  • using table look-up for the coding or decoding process, e.g. using read-only memory {(H03M7/4006 takes precedence)} · CPC title

  • Coding table selection · CPC title

  • Fixed length to variable length coding · CPC title

  • Graphs; Linked lists (G06F16/9027 takes precedence) · 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 US2020212932A1 cover?
A method of reducing the storage requirements of blockchain metadata via dictionary-style compression includes receiving a request to add a transaction block to a blockchain. The method further includes determining an identifier (ID) of a dictionary block most recently stored on the blockchain. The method further includes compressing, by a processing device, one or more transactions of the tran…
Who is the assignee on this patent?
Palo Alto Res Ct Inc
What technology area does this patent fall under?
Primary CPC classification H04L9/3239. Mapped technology areas include Electricity.
When was this patent published?
Publication date Thu Jul 02 2020 00:00:00 GMT+0000 (Coordinated Universal Time) (A1). 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).