IP Library › Granted Patent US 12,189,609
Granted Patent B2
US 12,189,609 · App. 17/980,779 · Granted Jan 7, 2025

Managing transaction consistency in distributed databases

Inventors: Sisir Samanta (Bangalore, IN); Shibi Panikkar (Bangalore, IN); Pratheek Veluswamy (Bangalore, IN)
Assignee: Dell Products L.P.
G06F16/2365G06F16/2379G06F16/27
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,189,609
App. No.
17/980,779
Granted
Jan 7, 2025
Kind
B2
Abstract

Methods, apparatus, and processor-readable storage media for managing transaction consistency in distributed databases are provided herein. An example computer-implemented method includes determining a first one of a plurality of consistency levels to be applied for a transaction in a distributed database comprising a set of database nodes; and in response to determining that the first one of the plurality of consistency levels is to be applied: configuring at least two connections with the distributed database; releasing a first one of the at least two connections in response to detecting that the transaction completed on a first node in the set of database nodes; and in response to one or more of the other database nodes in the set of database nodes being updated to reflect changes on the first database node resulting from the transaction, releasing at least a second one of the at least two connections.

Claims (41)

1. A computer-implemented method comprising:

determining a first one of a plurality of consistency levels to be applied for a transaction in a distributed database comprising a set of database nodes, wherein the distributed database comprises a highly consistent distributed database; and

in response to determining that the first one of the plurality of consistency levels is to be applied:

configuring at least two connections with the distributed database;

releasing a first one of the at least two connections in response to detecting that the transaction completed on a first database node in the set of database nodes; and

in response to one or more of the other database nodes in the set of database nodes being updated to reflect changes on the first database node resulting from the transaction, releasing at least a second one of the at least two connections;

wherein the method is performed by at least one processing device comprising a processor coupled to a memory.

2. The computer-implemented method of claim 1 , wherein the first one of the plurality of consistency levels corresponds to an eventually consistent transaction.

3. The computer-implemented method of claim 1 , comprising:

in response to determining that a second one of the plurality of consistency levels is to be applied, configuring a single connection with the distributed database for the transaction.

4. The computer-implemented method of claim 3 , wherein the second one of the plurality of consistency levels corresponds to a highly consistent transaction.

5. The computer-implemented method of claim 1 , wherein the transaction corresponds to one or more database queries provided by an application associated with the distributed database.

6. The computer-implemented method of claim 1 , wherein the detecting that the transaction completed on the first database node comprises monitoring a set of logs corresponding to the set of database nodes.

7. The computer-implemented method of claim 1 , wherein the determining the first one of the plurality of consistency levels to be applied for the transaction is based on information related to consistency levels for one or more types of transactions.

8. The computer-implemented method of claim 1 , wherein the determining the first one of the plurality of consistency levels to be applied for the transaction is based on a machine learning model that is trained to predict the consistency level for the transaction.

9. The computer-implemented method of claim 1 , wherein the first one of the at least two connections is released prior to the one or more of the other database nodes being updated to reflect the changes on the first database node.

10. A non-transitory processor-readable storage medium having stored therein program code of one or more software programs, wherein the program code when executed by at least one processing device causes the at least one processing device:

to determine a first one of a plurality of consistency levels to be applied for a transaction in a distributed database comprising a set of database nodes, wherein the distributed database comprises a highly consistent distributed database; and

in response to determining that a first one of the plurality of consistency levels is to be applied:

to configure at least two connections with the distributed database;

to release a first one of the at least two connections in response to detecting that the transaction completed on a first database node in the set of database nodes; and

in response to one or more of the other database nodes in the set of database nodes being updated to reflect changes on the first database node resulting from the transaction, release at least a second one of the at least two connections.

11. The non-transitory processor-readable storage medium of claim 10 , wherein the first one of the plurality of consistency levels corresponds to an eventually consistent transaction.

12. The non-transitory processor-readable storage medium of claim 10 , wherein the program code when executed by the at least one processing device causes the at least one processing device:

in response to determining that a second one of the plurality of consistency levels is to be applied, to configure a single connection with the distributed database for the transaction.

13. The non-transitory processor-readable storage medium of claim 12 , wherein the second one of the plurality of consistency levels corresponds to a highly consistent transaction.

14. The non-transitory processor-readable storage medium of claim 10 , wherein the transaction corresponds to one or more database queries provided by an application associated with the distributed database.

15. The non-transitory processor-readable storage medium of claim 10 , wherein the first one of the at least two connections is released prior to the one or more of the other database nodes being updated to reflect the changes on the first database node.

16. An apparatus comprising:

at least one processing device comprising a processor coupled to a memory;

the at least one processing device being configured:

to determine a first one of a plurality of consistency levels to be applied for a transaction in a distributed database comprising a set of database nodes, wherein the distributed database comprises a highly consistent distributed database; and

in response to determining that a first one of the plurality of consistency levels is to be applied:

to configure at least two connections with the distributed database;

to release a first one of the at least two connections in response to detecting that the transaction completed on a first database node in the set of database nodes; and

in response to one or more of the other database nodes in the set of database nodes being updated to reflect changes on the first database node resulting from the transaction, release at least a second one of the at least two connections.

17. The apparatus of claim 16 , wherein the first one of the plurality of consistency levels corresponds to an eventually consistent transaction.

18. The apparatus of claim 16 , wherein the at least one processing device is further configured:

in response to determining that a second one of the plurality of consistency levels is to be applied, to configure a single connection with the distributed database for the transaction.

19. The apparatus of claim 18 , wherein the second one of the plurality of consistency levels corresponds to a highly consistent transaction.

20. The apparatus of claim 16 , wherein the first one of the at least two connections is released prior to the one or more of the other database nodes being updated to reflect the changes on the first database node.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Nov 4, 2022
From: SAMANTA, SISIR; PANIKKAR, SHIBI; VELUSWAMY, PRATHEEK
To: DELL PRODUCTS L.P.
Reel/Frame 061656/0949 →
Continuity (1)
Related Publication 20240152501A1 · May 9, 2024
References Cited (24)
US 9507843B1 · Madhavarapu · 2016 [cited by examiner]
US 9842031B1 · Kharatishvili · 2017 [cited by examiner]
US 10372926B1 · Leshinsky · 2019 [cited by examiner]
US 10621200B2 · Merriman · 2020 [cited by examiner]
US 11269819B1 · Schuller · 2022 [cited by examiner]
US 20100192018A1 · Aiyer · 2010 [cited by examiner]
US 20130290249A1 · Merriman · 2013 [cited by examiner]
US 20150355946A1 · Kang · 2015 [cited by examiner]
US 20160357806A1 · Andleman · 2016 [cited by examiner]
US 20190065542A1 · Baker · 2019 [cited by examiner]
US 20190251006A1 · Bulkowski · 2019 [cited by examiner]
US 20190325055A1 · Lee · 2019 [cited by examiner]
US 20190392006A1 · Horowitz · 2019 [cited by examiner]
US 20210021469A1 · Sondur · 2021 [cited by examiner]
US 20210365439A1 · Pople · 2021 [cited by examiner]
US 20220083542A1 · Thiyagarajan · 2022 [cited by examiner]
US 20220207414A1 · Bablani · 2022 [cited by examiner]
US 20220245033A1 · Zou · 2022 [cited by examiner]
US 20220245133A1 · Li · 2022 [cited by examiner]
US 20220284035A1 · Butterstein · 2022 [cited by examiner]
US 20230095814A1 · Sarkar · 2023 [cited by examiner]
CN 117435603A · 2024 [cited by examiner]
Curtiss, Mike, “Why you should pick strong consistency, whenever possible”, Google Cloud, available at: https://cloud.google.com/blog/products/databases/why-you-should-pick-strong-consistency-whenever-possible (last acc… [cited by applicant]
Consistency (database systems), https://en.wikipedia.org/w/index.php?title=Consistency_(database_systems)&oldid=1119060398 (last accessed Nov. 4, 2022). [cited by applicant]