IP Library Granted Patent US 11,895,211
Granted Patent B2
US 11,895,211 · App. 18/201,276 · Granted Feb 6, 2024

Adaptive compression of stored data

Inventors: Fateen Sharaby (Fort Lee, NJ); Sriram A. Raju Datla (Naperville, IL); Dhiraj Subhash Bawadhankar (Naperville, IL); John Charles Redfield (Brooklyn, NY); Justin Yeong-Juin Lee (Chicago, IL)
Assignee: Chicago Mercantile Exchange Inc.
H04L67/5651G06F3/061G06F3/0608G06F16/22H03M7/30H04L43/16H04L69/04
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,895,211
App. No.
18/201,276
Granted
Feb 6, 2024
Kind
B2
Abstract

Systems, devices and methods for adaptive compression of stored information includes a memory management computing device programmed to monitor a size of a plurality of data structures stored in a data repository. The computing device compares the size of each of a plurality of data structures to a predetermined threshold. When a size of an uncompressed data structure meets the threshold, the memory management computing device calculates a value of a first compression parameter based on a value of a first parameter and a value of a second parameter of each data element of the uncompressed data structure, calculates a value of a second compression parameter based the value of the first parameter of each data element of the uncompressed data structure, generates a compressed data structure based on the value of the first compression parameter and the second compression parameter; and replaces, in the data repository, the uncompressed data structure with the compressed data structure.

Claims (38)

1. A system comprising:

a processor and a memory coupled therewith, the memory storing instructions that when executed by the processor cause the processor to:

determine that a data size of a data structure storing a plurality of data elements meets a threshold, each of the plurality of data elements including data indicative of first and second parameters resulting from an electronic transaction, the plurality of data elements collectively characterized by a third parameter, and based thereon:

generate a first replacement data element based on a difference between a first parameter of a selected data element of the plurality of data elements and a fourth parameter collectively characterizing the plurality of data elements based on a modification of the first parameter of each of the plurality of data elements as a function of the second parameter thereof;

generate, when there is a difference between the first parameter of the selected data element and the first replacement data element, a second replacement data element based on the difference such that the first and second replacement data elements are collectively characterized by the third parameter; and

replace the plurality of data elements of the data structure with the first and, when generated, second replacement data elements, the data structure size thereby being reduced.

2. The system of claim 1 , wherein the plurality of data elements comprises an electronic record of results of a plurality of electronic transactions corresponding to an associated user completed prior to the determination.

3. The system of claim 2 , wherein the instructions are further executable by the processor to cause the processor to determine, subsequent to the replacement, that another electronic transaction corresponding to the associated user has been completed and, based thereon, add a data element indicative thereof to the data structure.

4. The system of claim 2 , wherein each data element of the plurality of data elements corresponds to a result of a different electronic transaction and wherein the first parameter of at least one of the plurality of data elements is different from the first parameter of another of the plurality of data elements.

5. The system of claim 4 , wherein each electronic transaction comprises an interest rate swap.

6. The system of claim 5 , wherein the interest rate swap is a Brazilian Real (BRL) interest rate swap (BRL swap).

7. The system of claim 5 , wherein the first parameter corresponds to an interest rate and the second parameter corresponds to a notional value.

8. The system of claim 1 , wherein the third parameter is indicative of the collective cash flow of the plurality of data elements.

9. The system of claim 1 , wherein the data size of the data structure may be compared to a threshold different from a threshold to which a data size of another data structure is compared.

10. The system of claim 1 , wherein the data structure is periodically synchronized with a remote computer system via a communications network, the data structure, subsequent to the replacement, taking less time to synchronize than the data structure prior to the replacement.

11. A computer implemented method comprising:

determining, by a processor, that a data size of a data structure storing a plurality of data elements meets a threshold, each of the plurality of data elements including data indicative of first and second parameters resulting from an electronic transaction, the plurality of data elements collectively characterized by a third parameter, and based thereon:

generating, by the processor, a first replacement data element based on a difference between a first parameter of a selected data element of the plurality of data elements and a fourth parameter collectively characterizing the plurality of data elements based on a modification of the first parameter of each of the plurality of data elements as a function of the second parameter thereof;

generating, by the processor when there is a difference between the first parameter of the selected data element and the first replacement data element, a second replacement data element based on the difference such that the first and second replacement data elements are collectively characterized by the third parameter; and

replacing, by the processor, the plurality of data elements of the data structure with the first and, when generated, second replacement data elements, the data structure size thereby being reduced.

12. The computer implemented method of claim 11 , wherein the plurality of data elements comprises an electronic record of results of a plurality of electronic transactions corresponding to an associated user completed prior to the determination.

13. The computer implemented method of claim 12 , further comprising determining, by the processor subsequent to the replacement, that another electronic transaction corresponding to the associated user has been completed and, based thereon, adding a data element indicative thereof to the data structure.

14. The computer implemented method of claim 12 , wherein each data element of the plurality of data elements corresponds to a result of a different electronic transaction and wherein the first parameter of at least one of the plurality of data elements is different from the first parameter of another of the plurality of data elements.

15. The computer implemented method of claim 14 , wherein each electronic transaction comprises an interest rate swap.

16. The computer implemented method of claim 15 , wherein the interest rate swap is a Brazilian Real (BRL) interest rate swap (BRL swap).

17. The computer implemented method of claim 15 , wherein the first parameter corresponds to an interest rate and the second parameter corresponds to a notional value.

18. The computer implemented method of claim 11 , wherein the third parameter is indicative of the collective cash flow of the plurality of data elements.

19. The computer implemented method of claim 11 , wherein the data size of the data structure may be compared to a threshold different from a threshold to which a data size of another data structure is compared.

20. The computer implemented method of claim 11 , wherein the data structure is periodically synchronized with a remote computer system via a communications network, the data structure, subsequent to the replacement, taking less time to synchronize than the data structure prior to the replacement.

21. A memory management computing device comprising:

a processor and a memory coupled therewith, the memory storing instructions that when executed by the processor cause the processor to perform the steps of:

determining that a data size of a data structure storing a plurality of data elements meets a threshold, each of the plurality of data elements including data indicative of first and second parameters resulting from an electronic transaction, the plurality of data elements collectively characterized by a third parameter, and based thereon:

generating a first replacement data element based on a difference between a first parameter of a selected data element of the plurality of data elements and a fourth parameter collectively characterizing the plurality of data elements based on a modification of the first parameter of each of the plurality of data elements as a function of the second parameter thereof;

generating, when there is a difference between the first parameter of the selected data element and the first replacement data element, a second replacement data element based on the difference such that the first and second replacement data elements are collectively characterized by the third parameter; and

replacing the plurality of data elements of the data structure with the first and, when generated, second replacement data elements, the data structure size thereby being reduced.

22. The memory management computing device of claim 21 , wherein the instructions, when executed by the processor, further cause the processor to perform the steps of:

determining, subsequent to the replacement, that another electronic transaction corresponding to the associated user has been completed and, based thereon, adding a data element indicative thereof to the data structure.

23. The memory management computing device of claim 21 , wherein the data structure is periodically synchronized with a remote computer system via a communications network, the data structure, subsequent to the replacement, taking less time to synchronize than the data structure prior to the replacement.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 24, 2023
From: SHARABY, FATEEN; DATLA, SRIRAM A. RAJU; BAWADHANKAR, DHIRAJ SUBHASH; REDFIELD, JOHN CHARLES; LEE, JUSTIN YEONG-JUIN
To: CHICAGO MERCANTILE EXCHANGE INC.
Reel/Frame 063744/0825 →
Continuity (8)
Continuation 17991030 · Nov 21, 2022
Continuation 17845052 · Jun 21, 2022
Continuation 17536886 · Nov 29, 2021
Continuation 17207881 · Mar 22, 2021
Continuation 16792973 · Feb 18, 2020
Continuation 15832244 · Dec 5, 2017
Provisional Application 62491040 · Apr 27, 2017
Related Publication 20230300214A1 · Sep 21, 2023