Method and system for load balancing a distributed database
First Claim
1. A method of processing a database transaction request, the method comprising:
- (a) receiving the transaction request, wherein the transaction request is comprised of one or more operations;
(b) analyzing the transaction request to determine the one or more operations;
(c) associating one or more database locks with each of the one or more operations;
(d) determining one or more sequence numbers for one or more of the database locks associated with each of the one or more operations; and
(e) transmitting the one or more operations with the associated database locks and the one or more sequence numbers to one or more database servers accessible to a database load balancer based on respective processing abilities associated with each of the one or more database servers.
4 Assignments
0 Petitions
Accused Products
Abstract
A method of processing a transaction request at a database load balancer. The method comprises receiving the transaction request, where the transaction request is comprised of one or more operations; analyzing the transaction request to determine the one or more operations; associating one or more database locks with each of the one or more operations; analyzing one or more of the database locks to determine the one or more sequence numbers associated with each of the one or more operations; and transmitting the one or more operations with the associated database locks and the sequence numbers to one or more databases servers accessible to the database load balancer.
38 Citations
49 Claims
-
1. A method of processing a database transaction request, the method comprising:
-
(a) receiving the transaction request, wherein the transaction request is comprised of one or more operations; (b) analyzing the transaction request to determine the one or more operations; (c) associating one or more database locks with each of the one or more operations; (d) determining one or more sequence numbers for one or more of the database locks associated with each of the one or more operations; and (e) transmitting the one or more operations with the associated database locks and the one or more sequence numbers to one or more database servers accessible to a database load balancer based on respective processing abilities associated with each of the one or more database servers. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A non-transitory computer-readable medium upon which a plurality of instructions are stored, the instructions for performing:
-
(a) receiving a transaction request, wherein the transaction request is comprised of one or more operations; (b) analyzing the transaction request to determine the one or more operations; (c) associating one or more database locks with each of the one or more operations; (d) determining one or more sequence numbers for one or more of the database locks associated with each of the one or more operations; and (e) transmitting the one or more operations with the associated database locks and the one or more sequence numbers to one or more database servers accessible to a database load balancer based on respective processing abilities associated with each of the one or more database servers.
-
-
12. A method of processing a transaction request, the method comprising:
-
(a) receiving at a database server one or more operations of a transaction request from a database load balancer based on processing abilities associated with the database server, where the operations have associated with them one or more sequence numbers and one or more locks; (b) analyzing the one or more sequence numbers; (c) placing each of the one or more operations in one or more queues based on results of analyzing the one or more sequence numbers; and (d) analyzing the queues to determine an order of execution of the one or more operations based on the one or more sequence numbers and one or more locks associated with the one or more operations. - View Dependent Claims (13, 14, 15, 16, 17, 18)
-
-
19. A non-transitory computer-readable medium upon which a plurality of instructions are stored, the instructions for performing:
-
(a) receiving at a database server one or more operations of a transaction request from a database load balancer based on processing abilities associated with the database server, where the operations have associated with them one or more sequence numbers and one or more locks; (b) analyzing the one or more sequence numbers; (c) placing each of the one or more operations in one or more queues based on results of analyzing the one or more sequence numbers; and (d) analyzing the queues to determine an order of execution of the one or more operations based on the one or more sequence numbers and one or more locks associated with the one or more operations.
-
-
20. A method of processing a transaction request, the method comprising:
-
(a) receiving the transaction request, wherein the transaction request is comprised of one or more operations; (b) analyzing the transaction request to determine the one or more operations; (c) associating one or more database locks with each of the one or more operations; (d) determining one or more sequence numbers for one or more of the database locks associated with each of the one or more operations; (e) determining processing abilities associated with one or more database servers associated with a database load balancer; and (f) transmitting one or more of the operations with the associated database locks and the sequence numbers to a one of the database servers based on the determination of processing abilities from step e. - View Dependent Claims (21, 22, 23, 24, 25)
-
-
26. A non-transitory computer-readable medium upon which a plurality of instructions are stored, the instructions for performing:
-
(a) receiving a transaction request, wherein the transaction request is comprised of one or more operations; (b) analyzing the transaction request to determine the one or more operations; (c) associating one or more database locks with each of the one or more operations; (d) determining one or more sequence numbers for one or more of the database locks associated with each of the one or more operations; (e) determining processing abilities associated with one or more database servers associated with a database load balancer; and (f) transmitting one or more of the operations with the associated database locks and the sequence numbers to a one of the database servers based on the determination of processing abilities from step e.
-
-
27. A system for processing a database transaction request, the system comprising:
-
(a) a memory for storing a plurality of instructions; and (b) a processor coupled to the memory, said processor configured for; (i) receiving the transaction request, wherein the transaction request is comprised of one or more operations; (ii) analyzing the transaction request to determine the one or more operations; (iii) associating one or more database locks with each of the one or more operations; (iv) determining one or more sequence numbers for one or more of the database locks associated with each of the one or more operations; and (v) providing the one or more operations with the associated database locks and the one or more sequence numbers to one or more database servers accessible to a database load balancer based on respective processing abilities associated with each of the one or more database servers. - View Dependent Claims (28, 29, 30, 31, 32, 33, 34, 35, 36)
-
-
37. A system for processing a database transaction request, the system comprising:
-
(a) a memory for storing a plurality of instructions; and (b) a processor coupled to the memory, said processor configured for; (i) receiving at a database server one or more operations of a transaction request from a database load balancer based on processing abilities associated with the database server, where the operations have associated with them one or more sequence numbers and one or more locks; (ii) analyzing the one or more sequence numbers; (iii) placing each of the one or more operations in one or more queues based on the analysis of the one or more sequence numbers; and (iv) analyzing the queues to determine an order of execution of the one or more operations based on the one or more sequence numbers and one or more locks associated with the one or more operations. - View Dependent Claims (38, 39, 40, 41, 42, 43)
-
-
44. A system for processing a transaction request, the system comprising:
-
(a) a memory for storing a plurality of instructions; and (b) a processor coupled to the memory, said processor configured for; (i) receiving the transaction request, wherein the transaction request is comprised of one or more operations; (ii) analyzing the transaction request to determine the one or more operations; (iii) associating one or more database locks with each of the one or more operations; (iv) determining one or more sequence numbers for one or more of the database locks associated with each of the one or more operations; (v) determining processing abilities associated with one or more database servers associated with the database load balancer; and (vi) transmitting one or more of the operations with the associated database locks and the sequence numbers to a one of the database servers based on the determination of processing abilities from step v. - View Dependent Claims (45, 46, 47, 48, 49)
-
Specification