IP Library › Granted Patent US 11,070,231
Granted Patent B2
US 11,070,231 · App. 16/237,586 · Granted Jul 20, 2021

Reducing storage of blockchain metadata via dictionary-style compression

Inventors: Eric Allan Bier (Palo Alto, CA); Alejandro Brito (Mountain View, CA); Shantanu Rane (Menlo Park, CA)
Assignee: Palo Alto Research Center Incorporated
H03M7/702G06F16/211G06F16/907H04L9/0637H04L9/0643H04L2209/38
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,070,231
App. No.
16/237,586
Granted
Jul 20, 2021
Kind
B2
Abstract

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.

Claims (35)

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;

providing the compressed transaction block, including the ID of the dictionary block, for storage on the blockchain;

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, 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, 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; and

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.

2. 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;

providing the compressed transaction block, including the ID of the dictionary block, for storage on the blockchain;

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, 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, 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;

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.

3. 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;

providing the compressed transaction block, including the ID of the dictionary block, for storage on the blockchain;

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.

4. The method of reducing storage of blockchain metadata via dictionary style compression of claim 3 , 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.

Assignments (10)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 14, 2025
From: XEROX CORPORATION
To: GENESEE VALLEY INNOVATIONS, LLC
Reel/Frame 073562/0677 →
SECOND LIEN NOTES PATENT SECURITY AGREEMENT Recorded Jul 2, 2025
From: XEROX CORPORATION
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 071785/0550 →
FIRST LIEN NOTES PATENT SECURITY AGREEMENT Recorded Apr 11, 2025
From: XEROX CORPORATION
To: U.S. BANK TRUST COMPANY, NATIONAL ASSOCIATION, AS COLLATERAL AGENT
Reel/Frame 070824/0001 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS RECORDED AT RF 064760/0389 Recorded Feb 13, 2024
From: CITIBANK, N.A., AS COLLATERAL AGENT
To: XEROX CORPORATION
Reel/Frame 068261/0001 →
SECURITY INTEREST Recorded Feb 13, 2024
From: XEROX CORPORATION
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 066741/0001 →
SECURITY INTEREST Recorded Nov 20, 2023
From: XEROX CORPORATION
To: JEFFERIES FINANCE LLC, AS COLLATERAL AGENT
Reel/Frame 065628/0019 →
CORRECTIVE ASSIGNMENT TO CORRECT THE REMOVAL OF US PATENTS 9356603, 10026651, 10626048 AND INCLUSION OF US PATENT 7167871 PREVIOUSLY RECORDED ON REEL 064038 FRAME 0001. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 28, 2023
From: PALO ALTO RESEARCH CENTER INCORPORATED
To: XEROX CORPORATION
Reel/Frame 064161/0001 →
SECURITY INTEREST Recorded Jun 22, 2023
From: XEROX CORPORATION
To: CITIBANK, N.A., AS COLLATERAL AGENT
Reel/Frame 064760/0389 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 20, 2023
From: PALO ALTO RESEARCH CENTER INCORPORATED
To: XEROX CORPORATION
Reel/Frame 064038/0001 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 16, 2020
From: BIER, ERIC A.; BRITO, ALEJANDRO E.; RANE, SHANTANU
To: PALO ALTO RESEARCH CENTER INCORPORATED
Reel/Frame 054077/0372 →
Continuity (1)
Related Publication 20200212932A1 · Jul 2, 2020