IP Library Granted Patent US 8,805,810
Granted Patent B2
US 8,805,810 · App. 13/564,187 · Granted Aug 12, 2014

Generalized reconciliation in a distributed database

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 8,805,810
App. No.
13/564,187
Granted
Aug 12, 2014
Kind
B2
Abstract

Embodiments of the present disclosure include systems and methods for generalized consistency control of database transactions in a distributed database. In distributed database systems a specific reconciliation procedure is typically needed and coded for each possible irresolvable event. The systems and methods described herein enable a general characterization of multiple types of irresolvable events and thus eliminate and/or reduce the need to write individual code for every specific event.

Claims (55)

1. A method of consistency control in a distributed database system, the distributed database system comprising a database management system having a processing unit configured to implement the method, the method comprising:

receiving, by an interface coupled to the processing unit of the database management system, a plurality of database transactions associated with a plurality of transaction sequences from a plurality of client systems in the distributed database system, wherein each transaction sequence indicates one or more uncommitted database transactions and each uncommitted database transaction includes one or more assertions that require consensus among a plurality of resources in the distributed database system to reconcile;

detecting, by processing unit of the database management system, an inconsistency among assertions associated with two or more uncommitted database transactions from two or more transaction sequences of the plurality of transaction sequences, wherein the inconsistency indicates a lack of consensus among the plurality of resources with respect to the validity of one or more of the assertions; and

processing, by the processing unit of the database management system, the two or more assertions associated with the two or more transaction sequences to generate a semantic preserving transform, wherein the semantic preserving transform, when applied to one or more of the two or more assertions, eliminates the inconsistency.

2. The method of claim 1 , further comprising:

reconciling, by the processing unit of the database management system, the database transactions by applying the semantic preserving transform to the one or more of the assertions.

3. The method of claim 1 , wherein the semantic preserving transform indicates a modification that, when applied to the one or more assertions, eliminates the inconsistency.

4. The method of claim 1 , wherein the two or more transaction sequences of the plurality of transaction sequences are reconciled into a global transaction sequence.

5. The method of claim 1 , further comprising:

processing, by the processing unit of the database management system, a set of rules to generate the semantic preserving transform.

6. The method of claim 5 , wherein the set of rules comprise generalized instructions for processing the two or more assertions associated with the two or more transactions sequences to generate the semantic preserving transform.

7. The method of claim 1 , further comprising:

sending, by the interface coupled to the processing unit of the database management system, a message to one or more of the client systems associated with the two or more assertions associated with the two or more transaction sequences to solicit user input for resolving the inconsistency; and

receiving, by the interface coupled to the processing unit of the database management system, a response indicating the user input.

8. The method of claim 7 , further comprising:

processing, by the processing unit of the database management system, the user input and the two or more assertions associated with the two or more transaction sequences to generate the semantic preserving transform.

9. The method of claim 1 , wherein the resources comprise other database management systems in the distributed database system.

10. The method of claim 1 , wherein the resources comprise storage management systems in the distributed database system.

11. A method of consistency control in a distributed database system, the distributed database system comprising a database management system having a processing unit configured to implement the method, the method comprising:

detecting, by the processing unit of the database management system, an inconsistency among assertions associated with two or more database transactions from two or more transaction sequences of a plurality of transaction sequences, wherein the inconsistency indicates a lack of consensus among the plurality of resources with respect to the validity of one or more of the assertions;

processing, by the processing unit of the database management system, the two or more assertions associated with the two or more transaction sequences to generate a semantic preserving transform, wherein the semantic preserving transform, when applied to one or more of the two or more assertions, eliminates the inconsistency; and

reconciling, by the processing unit of the database management system, one or more uncommitted database transactions by applying the semantic preserving transform to the one or more assertions.

12. The method of claim 11 , further comprising:

receiving, by an interface coupled to the processing unit of the database management system, the plurality of database transactions associated with the plurality of transaction sequences from a plurality of client systems in the distributed database system, wherein each transaction sequence indicates the one or more uncommitted database transactions and each uncommitted database transaction includes one or more assertions that require consensus among a plurality of resources in the distributed database system to reconcile.

13. The method of claim 11 , wherein the semantic preserving transform indicates a modification that, when applied to the one or more assertions, eliminates the inconsistency.

14. The method of claim 11 , wherein the two or more transaction sequences of the plurality of transaction sequences are reconciled into a global transaction sequence.

15. The method of claim 11 , further comprising:

processing, by the processing unit of the database management system, a set of rules in addition to the two or more assertions to generate the semantic preserving transform.

16. The method of claim 15 , wherein the set of rules comprise generalized instructions for processing the two or more assertions associated with the two or more transactions sequences to generate the semantic preserving transform.

17. The method of claim 11 , further comprising:

sending, by an interface coupled to the processing unit of the database management system, a message to one or more of the client systems associated with the two or more assertions associated with the two or more transaction sequences to solicit user input for resolving the inconsistency; and

receiving, by the interface coupled to the processing unit of the database management system, a response indicating the user input.

18. The method of claim 17 , further comprising:

processing, by the processing unit of the database management system, the user input and the two or more assertions associated with the two or more transaction sequences to generate the semantic preserving transform.

19. A database management system comprising:

a processing unit;

an interface configured to receive a plurality of database transactions associated with a plurality of transaction sequences from a plurality of client systems in the distributed database system, wherein each transaction sequence indicates one or more uncommitted database transactions and each uncommitted database transaction includes one or more assertions that require consensus among a plurality of resources in the distributed database system to reconcile;

a memory unit having instructions stored thereon, wherein the instructions, when executed by the processing unit, cause the processing unit to detect an inconsistency among assertions associated with two or more uncommitted database transactions from two or more transaction sequences of the plurality of transaction sequences, and process the two or more assertions associated with the two or more transaction sequences to generate a semantic preserving transform, wherein the semantic preserving transform, when applied to one or more of the two or more assertions, eliminates the inconsistency.

20. The database management system of claim 19 , wherein the inconsistency indicates a lack of consensus among the plurality of resources with respect to the validity of one or more of the assertions.

21. The database management system of claim 19 , wherein the instructions, when executed by the processing unit, further cause the processing unit to:

reconcile the uncommitted database transactions by applying the semantic preserving transform to the one or more of the assertions.

22. The database management system of claim 21 , wherein the semantic preserving transform indicates a modification that, when applied to the one or more assertions, eliminates the inconsistency.

23. The database management system of claim 19 , wherein the two or more transaction sequences of the plurality of transaction sequences are reconciled into a global transaction sequence.

24. The database management system of claim 19 , wherein the instructions, when executed by the processing unit, further cause the processing unit to:

process a set of rules in addition to the two or more assertions to generate the semantic preserving transform.

25. The database management system of claim 24 , wherein the set of rules comprise generalized instructions for processing the two or more assertions associated with the two or more transactions sequences to generate the semantic preserving transform.

26. The database management system of claim 25 , wherein the interface is further configured to:

sending a message to one or more of the client systems associated with the two or more assertions associated with the two or more transaction sequences to solicit user input for resolving the inconsistency; and

receive a response indicating the user input.

27. The database management system of claim 26 , wherein the instructions, when executed by the processing unit, further cause the processing unit to:

process the user input and the two or more assertions associated with the two or more transaction sequences to generate the semantic preserving transform.

28. A database management system comprising:

means for detecting an inconsistency among assertions associated with two or more database transactions from two or more transaction sequences of a plurality of transaction sequences, wherein the inconsistency indicates a lack of consensus among the plurality of resources with respect to the validity of one or more of the assertions;

means for processing the two or more assertions associated with the two or more transaction sequences to generate a semantic preserving transform, wherein the semantic preserving transform, when applied to one or more of the two or more assertions, eliminates the inconsistency; and

means for reconciling uncommitted database transactions by applying the semantic preserving transform to the one or more assertions.

Assignments (9)
RELEASE OF SECURITY INTEREST Recorded Sep 11, 2020
From: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
To: IFWE INC.
Reel/Frame 053741/0080 →
CORRECTIVE ASSIGNMENT TO CORRECT THE CONVEYANCE TYPE PREVIOUSLY RECORDED AT REEL: 053700 FRAME: 0163. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Sep 8, 2020
From: BANK OF AMERICA, N.A.
To: IFWE INC.
Reel/Frame 053718/0453 →
SECURITY INTEREST Recorded Sep 4, 2020
From: BANK OF AMERICA, N.A.
To: IFWE INC.
Reel/Frame 053700/0163 →
RELEASE OF SECURITY INTEREST Recorded Sep 4, 2020
From: BANK OF AMERICA, N.A.
To: IFWE INC.
Reel/Frame 053700/0192 →
TERMINATION AND RELEASE OF SECURITY INTEREST IN PATENTS Recorded Aug 29, 2019
From: JPMORGAN CHASE BANK, N.A., AS ADMINISTRATIVE AGENT
To: THE MEET GROUP, INC.
Reel/Frame 050234/0505 →
NOTICE OF GRANT OF SECURITY INTEREST IN PATENTS Recorded Aug 29, 2019
From: IFWE INC.
To: BANK OF AMERICA, N.A., AS ADMINISTRATIVE AGENT
Reel/Frame 050234/0486 →
SECURITY INTEREST Recorded Sep 28, 2017
From: THE MEET GROUP, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044050/0569 →
CHANGE OF NAME Recorded Oct 16, 2014
From: TAGGED, INC.
To: IFWE INC.
Reel/Frame 034010/0249 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Aug 4, 2012
From: LUCAS, JASON
To: TAGGED, INC.
Reel/Frame 028724/0760 →