US2022391358A1PendingUtilityA1

Methods and apparatus for a distributed database within a network

68
Assignee: HEDERA HASHGRAPH LLCPriority: Aug 28, 2015Filed: Jan 21, 2022Published: Dec 8, 2022
Est. expiryAug 28, 2035(~9.1 yrs left)· nominal 20-yr term from priority
H04L 67/1097G06F 16/275G06F 16/273G06F 16/184G06F 16/27G06F 9/542G06F 16/1834G06F 16/1844G06F 16/182G06F 16/1837
68
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

In some embodiments, an apparatus includes an instance of a distributed database at a first compute device configured to be included within a set of compute devices that implement the distributed database. The apparatus also includes a processor configured to define a first event linked to a first set of events. The processor is configured to receive, from a second compute device from the set of compute devices, a signal representing a second event (1) defined by the second compute device and (2) linked to a second set of events. The processor is configured to identify an order associated with a third set of events based at least one a result of a protocol. The processor is configured to store in the instance of the distributed database the order associated with the third set of events.

Claims

exact text as granted — not AI-modified
1 - 20 . (canceled) 
     
     
         21 . A non-transitory processor-readable medium storing code representing instructions to be executed by a processor, the code comprising code to cause the processor to:
 receive, at a first compute device from a plurality of compute devices that implements a distributed database and based on a synchronization process with a second compute device from the plurality of compute devices, an event;   update, based on the event, a directed acyclic graph (DAG) at the first compute device and including a representation of a plurality of events;   identify, based on the DAG at the first compute device, a set of events not yet received by the second compute device;   send the set of events to the second compute device as part of the synchronization process such that the second compute device (1) updates a DAG at the second compute device based on the set of events and (2) computes a state of an instance of the distributed database associated with the second compute device based on a consensus protocol and the DAG at the second compute device; and   receive, from the second compute device, the state of the instance of the distributed database associated with the second compute device.   
     
     
         22 . The non-transitory processor-readable medium of  claim 21 , further comprising code to cause the processor to:
 compute a state of an instance of the distributed database associated with the first compute device based on the consensus protocol and the DAG at the first compute device; and   digitally sign the state of the instance of the distributed database associated with the second compute device when the state of the instance of the distributed database associated with the second compute device corresponds with the state of the instance of the distributed database associated with the first compute device.   
     
     
         23 . The non-transitory processor-readable medium of  claim 21 , further comprising code to cause the processor to:
 store in a memory the state of the instance of the distributed database associated with the second compute device.   
     
     
         24 . The non-transitory processor-readable medium of  claim 21 , wherein the event is a first event, the code further comprising code to cause the processor to:
 compute a state of an instance of the distributed database associated with the first compute device based on the consensus protocol and the DAG at the first compute device; and   define a second event including the state of the instance of the distributed database associated with the first compute device to notify compute devices from the plurality of compute devices of the state of the instance of the distributed database associated with the first compute device.   
     
     
         25 . The non-transitory processor-readable medium of  claim 21 , wherein the event is a first event, the code further comprising code to cause the processor to:
 compute a state of an instance of the distributed database associated with the first compute device based on the consensus protocol and the DAG at the first compute device;   define a second event including the state of the instance of the distributed database associated with the first compute device to notify compute devices from the plurality of compute devices of the state of the instance of the distributed database associated with the first compute device;   digitally signing the state of the instance of the distributed database associated with the first compute device; and   confirm the state based on a threshold number of compute devices from the plurality of compute devices digitally signing the state of the instance of the distributed database associated with the first compute device.   
     
     
         26 . A method, comprising:
 receiving an event defined by a compute device from a plurality of compute devices implementing a distributed database;   updating, based on the event and at a first time, a directed acyclic graph (DAG) including a representation of a plurality of events to define a partial order of the event with respect to a set of events from the plurality of events based on a position of the event in the DAG;   identifying, at a second time after the first time, a consensus order of the event with respect to the plurality of events based on the partial order and a consensus protocol; and   calculating a state value associated with the distributed database based on the consensus order.   
     
     
         27 . The method of  claim 26 , further comprising:
 storing in a memory the consensus order of the event with respect to the plurality of events.   
     
     
         28 . The method of  claim 26 , wherein the event is a first event, the method further comprising:
 defining a second event including the state value to notify compute devices from the plurality of compute devices of the state value.   
     
     
         29 . The method of  claim 26 , wherein the event is a first event, the method further comprising:
 defining a second event including the state value to notify compute devices from the plurality of compute devices of the state value;   digitally signing the state value; and   confirming the state value based on a threshold number of compute devices from the plurality of compute devices digitally signing the state value.   
     
     
         30 . An apparatus, comprising:
 a memory; and   a processor operatively coupled to the memory, the processor configured to define, based on a plurality of events received from a plurality of compute devices implementing a distributed database, a directed acyclic graph (DAG),   the processor configured to calculate, based on the DAG and a consensus protocol, an order of the plurality of events,   the processor configured to calculate a state value associated with the distributed database based on the order of the plurality of events,   the processor configured to define an event including the state value to notify compute devices from the plurality of compute devices of the order.

Cited by (0)

No later patents cite this yet.

References (0)

No backward citations on record.