US2009019094A1PendingUtilityA1
Redirected updates on a backup server
Est. expiryJul 13, 2027(~1 yrs left)· nominal 20-yr term from priority
G06F 11/2097G06F 9/5027G06F 11/1658G06F 11/2035G06F 11/2046G06F 2209/509
44
PatentIndex Score
0
Cited by
0
References
0
Claims
Abstract
Embodiments of the invention relate to data processing systems and more specifically to high availability data processing systems comprising a primary server and a secondary server. The secondary server may receive an update request from a client. The secondary server may perform one or more preliminary operations required for processing of the update request. The secondary server may then redirect a partially processed update operation to the primary server for execution. Therefore, greater load balancing is achieved between the servers and more efficient utilization of secondary server resources is achieved.
Claims
exact text as granted — not AI-modified1 . A computer-implemented method for updating a database, comprising:
receiving an update request at a secondary database server, wherein the secondary database server provides a redundant failover for a primary database server; performing one or more operations to partially process the update request at the secondary database server, wherein the one or more operations performed at the secondary database server identify records that should be modified as a result of the update request; generating, by the secondary database server, at least one partially processed update operation specifying one or more actions to be performed by the primary server to complete the update request; and transmitting the partially processed update operation to the primary database server, wherein the primary database server is configured to complete the partially processed update operation by modifying the identified records in the primary database server, as indicated by the partially processed update operation.
2 . The method of claim 1 , wherein the one or more operations include scanning one or more rows of a table in the database to identify which of the one or more rows of the database maintained by the secondary database server to update in response to the update request.
3 . The method of claim 1 , further comprising:
recording, by the primary database server, an indication of the update operations performed at the primary database server in a log file; and transmitting at least a portion of the log file that includes the recorded operations to the secondary database server, wherein the secondary database server is configured to perform the operations recorded in the log file.
4 . The method of claim 1 , wherein the one or more operations performed by the secondary database server include any combination of:
scanning data; sorting data; parsing data; selecting data; and building an execution tree for executing the update operation.
5 . The method of claim 1 , wherein the one or more operations performed by the secondary database server include generating an operation structure comprising at least an image of data that is to be modified.
6 . The method of claim 5 , wherein the operation structure further comprises a previous image of data that is to be modified.
7 . The method of claim 6 , further comprising:
comparing, by the primary database server, the previous image of data to current data at the primary database server; and executing the update operation if the previous image of data provided by the secondary database server is the same as current data at the primary database server.
8 . The method of claim 5 , wherein the operation structure includes a version number for each row of data in the primary database server to be modified.
9 . The method of claim 8 , further comprising:
comparing, by the primary database server, the version number in the operation structure with a corresponding version number for each row of data in the primary database server to be modified; and completing the update operation only if the version number in the operation structure is the same as the corresponding version number the primary database server.
10 . The method of claim 1 , further comprising:
blocking incoming database access requests by the secondary database server after a first set of update operations are sent to the primary database server; sending, by the primary database server, an acknowledgement to the secondary database server after completing execution of the first set of update operations; and in response to receiving the acknowledgment, unblocking incoming database access requests by the secondary database server.
11 . A computer program product comprising a computer-useable storage medium having a computer readable program, wherein the computer readable program when executed on a computer causes the computer to perform an operation for processing an update request received by a secondary database server, the operation comprising:
receiving an update request at a secondary database server, wherein the secondary database server provides a redundant failover for a primary database server; performing one or more operations to partially process the update request at the secondary database server, wherein the one or more operations performed at the secondary database server identify records that should be modified as a result of the update request; generating, by the secondary database server, at least one partially processed update operation specifying one or more actions to be performed by the primary server to complete the update request; and transmitting the partially processed update operation to the primary database server, wherein the primary database server is configured to complete the partially processed update operation by modifying the identified records in the primary database server, as indicated by the partially processed update operation.
12 . The computer-useable storage of claim 11 , wherein the one or more operations include scanning one or more rows of a table in the database to identify which of the one or more rows of the database maintained by the secondary database server to update in response to the update request.
13 . The computer-useable storage medium of claim 11 , wherein the primary database server is configured to:
record an indication of the update operations performed at the primary database server in a log file; and transmit at least a portion of the log file that includes the recorded operations to the secondary database server, wherein the secondary database server is configured to perform the operations recorded in the log file.
14 . The computer-useable storage medium of claim 11 , wherein the one or more operations performed by the secondary database server include any combination of:
scanning data; sorting data; parsing data; selecting data; and building an execution tree for executing the update operation.
15 . The computer-useable storage medium of claim 11 , wherein the one or more operations performed by the secondary database server include generating an operation structure that includes at least an image of data that is to be modified.
16 . The computer-useable storage medium of claim 15 , wherein the operation structure further includes a previous image of data that is to be modified.
17 . The computer-useable storage medium of claim 16 , wherein the operations further comprise:
comparing, by the primary database server, the previous image of data to current data at the primary database server; and executing the update operation if the previous image of data provided by the secondary database server is the same as current data at the primary database server.
18 . The computer-useable storage medium of claim 15 , wherein the operation structure includes a version number for each row of data in the primary database server to be modified.
19 . The computer-useable storage medium of claim 18 , wherein the operations further comprise:
comparing, by the primary database server, the version number in the operation structure with a corresponding version number for each row of data in the primary database server to be modified; and completing the update operation only if the version number in the operation structure is the same as the corresponding version number the primary database server.
20 . The computer-useable storage medium of claim 11 , wherein the operations further comprise:
blocking incoming database access requests by the secondary database server after a first set of update operations are sent to the primary database server; sending, by the primary database server, an acknowledgement to the secondary database server after completing execution of the first set of update operations; and in response to receiving the acknowledgment, unblocking incoming database access requests by the secondary database server.
21 . A system, comprising:
a processor; and a secondary database server program configured to provide a redundant failover for a primary database server, and wherein the program, when executed by the processor, is configured to process an update operation by performing the steps of:
receiving an update request at a secondary database server, wherein the secondary database server provides a redundant failover for a primary database server,
performing one or more operations to partially process the update request at the secondary database server, wherein the one or more operations performed at the secondary database server identify records that should be modified as a result of the update request,
generating, by the secondary database server, at least one partially processed update operation specifying one or more actions to be performed by the primary server to complete the update request, and
transmitting the partially processed update operation to the primary database server, wherein the primary database server is configured to complete the partially processed update operation by modifying the identified records in the primary database server, as indicated by the partially processed update operation.
22 . The system of claim 21 , wherein the one or more operations include scanning one or more rows of a table in the database to identify which of the one or more rows of the database maintained by the secondary database server to update in response to the update request.
23 . The system of claim 21 , wherein the primary database server is configured to perform the steps of:
recording, by the primary database server, an indication of the update operations performed at the primary database server in a log file; and transmitting at least a portion of the log file that includes the recorded operations to the secondary database server, wherein the secondary database server is configured to perform the operations recorded in the log file.
24 . The system medium of claim 21 , wherein the one or more operations performed by the secondary database server include any combination of:
scanning data; sorting data; parsing data; selecting data; and building an execution tree for executing the update operation.Cited by (0)
No later patents cite this yet.
References (0)
No backward citations on record.