IP Library › Granted Patent US 11,922,412
Granted Patent B2
US 11,922,412 · App. 16/938,307 · Granted Mar 5, 2024

Data object compression and reduction

Inventors: Peter Mattias Palm (Stockholm, SE); Jesper Lars Wilhelm Hermodsson (Bromma, SE); Sven Marcus Dahlin (Hägersten, SE); Carl Erik Thornberg (Stockholm, SE)
Assignee: Chicago Mercantile Exchange Inc.
G06Q20/389G06Q20/381
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,922,412
App. No.
16/938,307
Granted
Mar 5, 2024
Kind
B2
Abstract

A system for data object compression and reduction includes to implement, in accordance with obtained optimization constraint data, an optimization procedure configured to determine an optimal set of adjustments to a set of data objects that maximizes reduction of both a data set aggregate magnitude and a data link composite magnitude for at least one pair of a plurality of data sources, the optimal set of adjustments including an offset of multiple data objects of data objects of same data object type and opposite polarity, and to store data indicative of the optimal set of adjustments to the set of data objects.

Claims (51)

1. A system for data object compression and reduction, the system comprising:

a processor;

a memory coupled with the processor;

first logic stored in the memory and executable by the processor to cause the processor to obtain a set of data objects from a plurality of data sources, each data object of the set of data objects specifying a data object type, a size, a polarity, and identification data, each data object is representative of a currency exchange transaction, the identification data specifies two data sources as a party and counterparty to the currency exchange transaction, the data object type is indicative of base and counter currencies of the currency exchange transaction, the size is indicative of a notional amount of the base currency for the currency exchange transaction, and the polarity is indicative of whether the party is buying or selling in the currency exchange transaction;

second logic stored in the memory and executable by the processor to cause the processor to obtain, via a respective configuration file provided from each data source of the plurality of data sources, optimization constraint data for each data source of the plurality of data sources;

third logic stored in the memory and executable by the processor to cause the processor to identify those data objects of the plurality of data objects for which the identification data matches;

fourth logic stored in the memory and executable by the processor to cause the processor to maximize reduction of both a data set aggregate magnitude and a data link composite magnitude for at least one pair of the plurality of data sources via implementation of, in accordance with the obtained optimization constraint data, an optimization procedure configured to determine an optimal set of adjustments to the set of data objects, the optimal set of adjustments comprising an offset of multiple data objects of the identified data objects of same data object type and opposite polarity thereby a total number of data objects in the set of data objects being reduced without information loss; and

fifth logic stored in the memory and executable by the processor to cause the processor to store data indicative of the optimal set of adjustments to the set of data objects thereby applying data compression the set of data objects;

wherein the data set aggregate magnitude is indicative of a sum of the size of each data object of the set of data objects, and

wherein the data link composite magnitude is indicative of a sum of the sizes of those data objects of the set of data objects linked to the pair of data sources.

2. The system of claim 1 , further comprising sixth logic stored in the memory and executable by the processor to cause the processor to configure a linear optimizer in accordance with the obtained optimization constraint data, the linear optimizer being configured to implement the optimization procedure.

3. The system of claim 1 , wherein the optimization constraint data comprises tolerance data indicative of a limitation on an extent to which the optimization procedure is permitted to consider adjustments that result in deviation in a net size of the data objects of a respective data source of the plurality of data sources.

4. The system of claim 3 , wherein the net size is specific to the data object type.

5. The system of claim 3 , wherein the tolerance data is specified as a function of time.

6. The system of claim 1 , wherein the optimization procedure is configured with configuration data indicative of an extent to which reductions to the data set aggregate magnitude are weighted relative to reductions to the data link composite magnitude given preferences specified by a respective data source of the plurality of data sources.

7. The system of claim 6 , wherein:

the optimization weighting data of a first data source of the plurality of data sources specifies that, with regard to the data objects involving the first data source, only the reductions to the data link composite magnitude are to be given weight in the optimization procedure; and

the optimization weighting data of a second data source of the plurality of data sources specifies that, with regard to the data objects involving the second data source, only the reductions to the data set aggregate magnitude are to be given weight in the optimization procedure.

8. The system of claim 1 , further comprising sixth logic stored in the memory and executable by the processor to cause the processor to nullify one or more data objects of the set of data objects in accordance with the optimal set of adjustments.

9. The system of claim 1 , wherein:

the optimization procedure is configured to consider adding a new data object to the set of data objects in connection with determining the optimal set of adjustments;

the system further comprises eighth logic stored in the memory and executable by the processor to cause the processor to incorporate the new data object into the set of data objects.

10. The system of claim 1 , wherein the optimization constraint data comprises data link composite magnitudes for each data source of the plurality of data sources.

11. The system of claim 1 , wherein the identification data identifies a bilateral link between two data sources of the data object.

12. The system of claim 1 , wherein:

the sum of the sizes for the data link composite magnitude is a net sum that accounts for the polarity of each data object; and

the data set aggregate magnitude is an absolute value summation of the sizes of the data objects in the set of data objects.

13. A computer-implemented method for data object compression and reduction, the method comprising:

obtaining, by a processor, a set of data objects from a plurality of data sources, each data object of the set of data objects specifying a data object type, a size, a polarity, and identification data, each data object is representative of a currency exchange transaction, the identification data specifies two data sources as a party and counterparty to the currency exchange transaction, the data object type is indicative of base and counter currencies of the currency exchange transaction, the size is indicative of a notional amount of the base currency for the currency exchange transaction, and the polarity is indicative of whether the party is buying or selling in the currency exchange transaction;

obtaining, by the processor and via a respective configuration file provided from each data source of the plurality of data sources, optimization constraint data for each data source of the plurality of data sources;

identifying, by the processor, those data objects of the plurality of data objects for which the identification data matches;

maximizing reduction of both a data set aggregate magnitude and a data link composite magnitude for at least one pair of the plurality of data sources by implementing, by the processor, in accordance with the obtained optimization constraint data, an optimization procedure configured to determine an optimal set of adjustments to the set of data objects, the optimal set of adjustments comprising an offset of multiple data objects of the identified data objects of same data object type and opposite polarity thereby a total number of data objects in the set of data objects being reduced without information loss; and

storing, by the processor, data indicative of the optimal set of adjustments to the set of data objects thereby applying data compression the set of data objects;

wherein the data set aggregate magnitude is indicative of a sum of the size of each data object of the set of data objects, and

wherein the data link composite magnitude is indicative of a sum of the sizes of those data objects of the set of data objects linked to the pair of data sources.

14. The computer-implemented method of claim 13 , further comprising configuring a linear optimizer in accordance with the obtained optimization constraint data, the linear optimizer being configured to implement the optimization procedure.

15. The computer-implemented method of claim 13 , further comprising nullifying one or more data objects of the set of data objects in accordance with the optimal set of adjustments.

16. The computer-implemented method of claim 13 , wherein:

the optimization procedure is configured to consider adding a new data object to the set of data objects in connection with determining the optimal set of adjustments;

the method further comprises incorporating the new data object into the set of data objects.

17. The computer-implemented method of claim 13 , wherein:

the sum of the sizes for the data link composite magnitude is a net sum that accounts for the polarity of each data object; and

the data set aggregate magnitude is an absolute value summation of the sizes of the data objects in the set of data objects.

18. A computer program product for data object compression and reduction, the computer program product comprising one or more non-transitory computer-readable storage media having stored thereon computer-executable instructions that, when executed by one or more processors of a computing system, cause the computing system to perform a method, the method comprising:

obtaining a set of data objects from a plurality of data sources, each data object of the set of data objects specifying a data object type, a size, a polarity, and identification data, each data object is representative of a currency exchange transaction, the identification data specifies two data sources as a party and counterparty to the currency exchange transaction, the data object type is indicative of base and counter currencies of the currency exchange transaction, the size is indicative of a notional amount of the base currency for the currency exchange transaction, and the polarity is indicative of whether the party is buying or selling in the currency exchange transaction;

obtaining, via a respective configuration file provided from each data source of the plurality of data sources, optimization constraint data for each data source of the plurality of data sources;

identifying those data objects of the plurality of data objects for which the identification data matches;

maximizing reduction of both a data set aggregate magnitude and a data link composite magnitude for at least one pair of the plurality of data sources by implementing, in accordance with the obtained optimization constraint data, an optimization procedure configured to determine an optimal set of adjustments to the set of data objects, the optimal set of adjustments comprising an offset of multiple data objects of the identified data objects of same data object type and opposite polarity thereby a total number of data objects in the set of data objects being reduced without information loss; and

storing data indicative of the optimal set of adjustments to the set of data objects thereby applying data compression the set of data objects;

wherein the data set aggregate magnitude is indicative of a sum of the size of each data object of the set of data objects, and

wherein the data link composite magnitude is indicative of a sum of the sizes of those data objects of the set of data objects linked to the pair of data sources.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Feb 10, 2021
From: PALM, PETER MATTIAS; HERMODSSON, JESPER LARS WILHELM; DAHLIN, SVEN MARCUS; THORNBERG, CARL ERIK
To: CHICAGO MERCANTILE EXCHANGE INC.
Reel/Frame 055215/0370 →
Continuity (2)
Provisional Application 62950909 · Dec 19, 2019
Related Publication 20210192504A1 · Jun 24, 2021