Replica database maintenance with parallel log file transfers
First Claim
1. A computing system, comprising:
- a processor configured to run a database management system (DBMS) configured to manage a database (DB), the DBMS being configured to maintain a DB log file associated with the DB;
a connection logic configured to establish two or more data transfer connections between the computing system and a remote computing system associated with a replica of the DB;
a partition logic configured to separate the DB log file into two or more portions, the number of portions being determined, at least in part, by the number of data transfer connections established by the connection logic; and
a distribution logic configured to provide the two or more log file portions in parallel to the remote computing system through the two or more data transfer connections.
1 Assignment
0 Petitions
Accused Products
Abstract
Systems, methods, and other embodiments associated with remote database maintenance using parallel file transfers are described. One exemplary system includes a processor configured to run a database management system (DBMS) that is in turn configured to manage a database (DB). The DBMS may maintain a database log file that stores information about changes to the database. The system may also include a connection logic for establishing data transfer connections between the computing system and a remote computing system storing the database replica. The system may also include a partition logic that separates the database log file into multiple portions and a distribution logic that provides the multiple file portions in parallel to the remote computing system through the multiple data transfer connections.
38 Citations
24 Claims
-
1. A computing system, comprising:
-
a processor configured to run a database management system (DBMS) configured to manage a database (DB), the DBMS being configured to maintain a DB log file associated with the DB;
a connection logic configured to establish two or more data transfer connections between the computing system and a remote computing system associated with a replica of the DB;
a partition logic configured to separate the DB log file into two or more portions, the number of portions being determined, at least in part, by the number of data transfer connections established by the connection logic; and
a distribution logic configured to provide the two or more log file portions in parallel to the remote computing system through the two or more data transfer connections. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A computing system, comprising:
-
a processor configured to run a DBMS configured to manage a replica DB, the DBMS being configured to employ a DB log file associated with a replicated DB to facilitate keeping the replica DB current with the replicated DB;
a connection logic configured to establish two or more data transfer connections between the computing system and a host computing system associated with the replicated DB; and
a collection logic configured to receive two or more portions of the DB log file in parallel from the host computing system through the two or more data transfer connections. - View Dependent Claims (9, 10, 11, 12)
-
-
13. The system of claim 13, the verification logic being configured to selectively request retransmission of a received portion of the DB log file from the host computing system.
-
14. A client-server computing system, comprising:
-
a server system comprising;
a server processor configured to run a server DBMS configured to manage a replicated DB, the server DBMS being configured to maintain a server DB log file associated with the replicated DB;
a server connection logic configured to establish the server side of two or more data transfer connections between the server computing system and a client computing system;
a partition logic configured to separate the server DB log file into two or more portions, the number of portions being determined, at least in part, by the number of data transfer connections established by the server connection logic; and
a distribution logic configured to provide the two or more portions in parallel to the client computing system through the two or more data transfer connections; and
a client computing system, comprising;
a client processor configured to run a client DBMS configured to maintain a replica DB, the client DBMS being configured to employ a client DB log file associated with a server DB log file to facilitate keeping the replica DB current with the replicated DB;
a client connection logic configured to establish the client side of the two or more data transfer connections; and
a collection logic configured to receive in parallel the two or more portions of the DB log file provided from the server computing system through the two or more data transfer connections.
-
-
15. A method, comprising
establishing two or more connections between a first computing system and a second computing system, the first computing system being configured to maintain a first copy of a database, the second computing system being configured to maintain a replica copy of the database; -
partitioning a log file on the first computing system into two or more file parts based, at least in part, on the number of connections established between the first computing system and the second computing system; and
providing the two or more file parts from the first computing system to the second computing system substantially in parallel. - View Dependent Claims (16, 17)
-
-
18. A computer-readable medium storing processor executable instructions operable to perform a method, the method comprising:
-
establishing two or more connections between a first computing system and a second computing system, the first computing system being configured to maintain a first copy of a database, the second computing system being configured to maintain a replica copy of the database;
partitioning a log file on the first computing system into two or more file parts based, at least in part, on the number of connections established between the first computing system and the second computing system; and
providing the two or more file parts from the first computing system to the second computing system substantially in parallel.
-
-
19. A method, comprising:
-
establishing two or more connections between a first computing system and a second computing system, the first computing system being configured to maintain a first copy of a database, the second computing system being configured to maintain a replica copy of the database;
receiving substantially in parallel in the second computing system from the first computing system two or more parts of a log file; and
selectively updating the replica copy of the database based on the two or more parts of the log file. - View Dependent Claims (20)
-
-
21. A client-server method, comprising:
-
establishing two or more connections between a server computing system and a client computing system, the server computing system being configured to maintain a server copy of a database, the client computing system being configured to maintain a client copy of the server database;
partitioning a database log file on the server computing system into two or more file parts based, at least in part, on the number of connections established between the server computing system and the client computing system;
providing the two or more file parts from the server computing system to the client computing system substantially in parallel;
receiving substantially in parallel in the client computing system from the server computing system the two or more file parts; and
selectively updating the client copy of the server database based on the two or more file parts. - View Dependent Claims (22)
-
-
23. A system, comprising:
-
means for partitioning a database file into N parts, N being an integer greater than one;
means for establishing M connections between a first computing system and a second computing system, M being an integer greater than one, the first computing system being configured to store an original copy of a database and the second computing system being configured to store a replica copy of the original copy of the database; and
means for transmitting, substantially in parallel, the N parts over the M connections.
-
-
24. A set of application programming interfaces embodied on a computer-readable medium for execution by a computer component in conjunction with maintaining a replica database using parallel log file transfers, comprising:
-
a first interface for communicating a database log identification data;
a second interface for communicating a degree of parallelism data;
a third interface for communicating a connection data; and
a fourth interface for communicating a database log partition data.
-
Specification