US 12,346,208 B2
Server group fetch in database backup
Prasenjit Sarkar, Los Gatos, CA (US)
Assigned to Rubrik, Inc., Palo Alto, CA (US)
Filed by Rubrik, Inc., Palo Alto, CA (US)
Filed on Sep. 27, 2021, as Appl. No. 17/486,552.
Prior Publication US 2023/0095814 A1, Mar. 30, 2023
Int. Cl. G06F 11/14 (2006.01); G06F 16/16 (2019.01)
CPC G06F 11/1451 (2013.01) [G06F 11/1464 (2013.01); G06F 16/16 (2019.01); G06F 2201/84 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A method of performing a backup of a group of relational databases, the method comprising:
identifying database files to be fetched from the group of relational databases;
grouping the identified database files into batches;
based on configuration parameters of the identified database files, identifying, among the batches, a sub-set of batches of database files that are eligible to be fetched in parallel for the backup;
configuring a single fetch call to a call stack of a data management node, the single fetch call to fetch the sub-set of eligible batches in parallel from the group of relational databases;
obtaining feedback from an element in the call stack of the data management node, wherein the feedback indicates resource constraints associated with the element;
determining whether to use a push model or a pull model for execution of the configured single fetch call to fetch the sub-set of eligible batches in parallel based at least in part on the feedback from the element in the call stack of the data management node, wherein both the push model and the pull model are operable to fetch the sub-set of batches of database files from a third-party agent that is separate from the group of relational databases and configured to read database files from the group of relational databases and transfer the database files to a server running on a data management node; and
executing the configured single fetch call based at least in part on the determined model, wherein:
when the determined model is the push model, executing the configured single fetch call according to the determined model comprises causing the third-party agent to push the sub-set of batches of database files to the data management node, and
when the determined model is the pull model, executing the configured single fetch call according to the determined model comprises causing the data management node to pull the sub-set of batches of database files from the third-party agent in accordance with a determination made by the data management node.