IP Library › Granted Patent US 12,013,830
Granted Patent B2
US 12,013,830 · App. 17/769,176 · Granted Jun 18, 2024

System and method using bloom filters to improve system reliability

Inventor: Lum Ramabaja (Linz, AT)
G06F16/2255G06F16/2462
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 12,013,830
App. No.
17/769,176
Granted
Jun 18, 2024
Kind
B2
Abstract

There is disclosed a system ( 100 ) comprising computing nodes ( 102 A, 102 B, 102 C, 102 D), wherein each computing node includes processor ( 104 A, 104 B, 104 C, 104 D), wherein each computing node comprises hash value of each data entity of pre-existing data entities therein, and wherein system ( 100 ) operates to provide verified recordal of data entities therein to ensure consistent recordal of data that assists to ensure reliable, efficient and robust operation of the system ( 100 ). The processor ( 104 A, 104 B, 104 C, 104 D) is configured to perform process comprising: executing first set of instructions on first computing node ( 102 A) and second computing node ( 102 B) to generate first set of values; executing second set of instructions on the hash value of each pre-existing data entity of first computing node ( 102 A) and first set of values, to generate second set of values; generating data structure based on the second set of values; transmitting data structure; determining a mapping factor based on pre-existing data entities in second computing node ( 102 B); and transmitting data entities from first computing node ( 102 A) to second computing node ( 102 B) if the mapping factor is less than 100 percent.

Claims (38)

1. A system comprising a plurality of computing nodes that are communicably coupled to each other via a distributed communication network, wherein each computing node includes a processor, wherein each computing node comprises a hash value of each data entity of pre-existing data entities therein, and wherein the system operates to provide verified recordal of data entities therein, to achieve a more stable, efficient and robust operation of the system, wherein the processor is configured to:

execute a first set of instructions on a nonce of a first computing node of the plurality of computing nodes and a nonce of a second computing node of the plurality of computing nodes to generate a first set of values;

execute a second set of instructions on the hash value of each pre-existing data entity of the first computing node and the first set of values, to generate a second set of values;

generate a data structure for the first computing node and the second computing node based on the second set of values;

transmit the data structure from the first computing node to the second computing node;

determine a mapping factor based on the data structure representative of whether or not the pre-existing data entities in the second computing node are consistent with respect to the pre-existing data entities in the first computing node; and

transmit one or more data entities from the pre-existing data entities in the first computing node to the pre-existing data entities in the second computing node if the determined mapping factor is less than 100 percent;

wherein the processor is further configured to:

determine an inconsistency probability factor for each computing node of the plurality of computing nodes which have a mapping factor equal to 100 percent,

transmit one or more data entities to a given computing node, from a computing node having mapping factor equal to 100 percent after a first iteration of the process, if the inconsistency probability factor of the given computing node is less than a threshold inconsistency probability factor.

2. A system of claim 1 , wherein the processor is further configured to determine the mapping factor and transmit one or more data entities based on a mapping factor for each computing node with respect to each of the other computing nodes.

3. A system of claim 1 , wherein the processor is further configured to execute a hashing function to generate the hash value of each pre-existing data entity in the plurality of computing nodes.

4. A system of claim 1 , wherein the first set of instructions comprises executing an XOR mathematical function and a subsequent hashing function.

5. A system of claim 4 , wherein the first set of instructions further comprises concatenating a random value before executing the hashing function.

6. A system of claim 1 , wherein the second set of instructions comprises executing an XOR mathematical function.

7. A system of claim 1 , wherein the processor is further configured to execute a modulo mathematical operation on the second set of values before generating the data structure.

8. A system of claim 1 , wherein the data structure is a Bloom filter.

9. A method of operating a system comprising a plurality of computing nodes that are communicably coupled to each other via a distributed communication network, wherein each computing node includes a processor, and wherein each computing node comprises a hash value of each data entity of pre-existing data entities therein, and wherein the system operates to provide verified recordal of data entities therein, to achieve a more stable, efficient and robust operation of the system, wherein the method includes configuring the processor to perform a process comprising:

executing a first set of instructions on a nonce of a first computing node of the plurality of computing nodes and a nonce of a second computing node of the plurality of computing nodes to generate a first set of values;

executing a second set of instructions on the hash value of each pre-existing data entity of the first computing node and the first set of values, to generate a second set of values;

generating a data structure for the first computing node and the second computing node based on the second set of values;

transmitting the data structure from the first computing node to the second computing node;

determining a mapping factor based on the data structure representative of whether or not the pre-existing data entities in the second computing node are consistent with respect to the pre-existing data entities in the first computing node; and

transmitting one or more data entities from the pre-existing data entities in the first computing node to the pre-existing data entities in the second computing node if the determined mapping factor is less than 100 percent-;

wherein the method further comprises:

determining an inconsistency probability factor for each computing node of the plurality of computing nodes which have a mapping factor equal to 100 percent,

transmitting one or more data entities to a given computing node, from a computing node having mapping factor equal to 100 percent after a first iteration of the process, if the inconsistency probability factor of the given computing node is less than a threshold inconsistency probability factor.

10. A method of claim 9 , wherein the data structure is a Bloom filter.

11. A computer program product comprising a non-transitory computer-readable storage medium having computer-readable instructions stored thereon, the computer-readable instructions being executable by a computerized device comprising processing hardware to execute a method of operating a system comprising a plurality of computing nodes that are communicably coupled to each other via a distributed communication network, wherein each computing node includes a processor, and wherein each computing node comprises a hash value of each data entity of pre-existing data entities therein, and wherein the system operates to provide verified recordal of data entities therein, to achieve a more stable, efficient and robust operation of the system, wherein the method includes configuring the processor to perform a process comprising:

executing a first set of instructions on a nonce of a first computing node of the plurality of computing nodes and a nonce of a second computing node of the plurality of computing nodes to generate a first set of values;

executing a second set of instructions on the hash value of each pre-existing data entity of the first computing node and the first set of values, to generate a second set of values;

generating a data structure for the first computing node and the second computing node based on the second set of values;

transmitting the data structure from the first computing node to the second computing node;

determining a mapping factor based on the data structure representative of whether or not the pre-existing data entities in the second computing node are consistent with respect to the pre-existing data entities in the first computing node; and

transmitting one or more data entities from the pre-existing data entities in the first computing node to the pre-existing data entities in the second computing node if the determined mapping factor is less than 100 percent;

wherein the method further comprises:

determining an inconsistency probability factor for each computing node of the plurality of computing nodes which have a mapping factor equal to 100 percent,

transmitting one or more data entities to a given computing node, from a computing node having mapping factor equal to 100 percent after a first iteration of the process, if the inconsistency probability factor of the given computing node is less than a threshold inconsistency probability factor.

Assignments (2)
NUNC PRO TUNC ASSIGNMENT Recorded Mar 26, 2024
From: FETCH.AI LIMITED
To: ASSMBL.AI LIMITED
Reel/Frame 066895/0001 →
SECURITY INTEREST Recorded Oct 25, 2023
From: FETCH.AI LIMITED
To: SHEIKH, HUMAYUN MUNIR
Reel/Frame 065337/0174 →
Priority Claims (1)
EP 19020580 · Oct 16, 2019 · regional
Continuity (1)
Related Publication 20230350865A1 · Nov 2, 2023