Parallel streams to maintain a target data transfer rate
First Claim
1. A method for archiving data from a server cluster to a backend data storage device via a computer network, the method comprising:
- placing a complex of archive storage controllers in the network, the complex including a master archive storage controller having a speed matching buffer set module;
the server cluster executing backup logic programmed to send a bulk input/output (I/O) request for a greater than a predetermined-size transfer of archive data to the master archive storage controller; and
the speed matching buffer set module programmed, responsive to receiving the bulk I/O request, to identify a target transfer rate as defined by the bulk I/O request or by a predetermined relationship to I/O load, to identify identifying a speed matching buffer set of two or more of the archive storage controllers in the complex that are available, for lack of a predefined resource constraint characterized in terms of operational state, data storage capacity, processor capability, bandwidth, or utilization, to collectively transfer the bulk I/O request at the target transfer rate, and to send a bulk I/O response used by the server cluster to modify the bulk I/O request by apportioning it into parallel I/O requests to the speed matching buffer set.
1 Assignment
0 Petitions
Accused Products
Abstract
Apparatus and associated method contemplating sending a bulk request to a first archive storage controller to transfer application data from a server at a target transfer rate, the first archive storage controller residing within a complex of archive storage controllers; identifying two or more archive storage controllers in the complex collectively forming a speed matching buffer set capable of parallel streaming the application data at a data transfer rate that is at least the target transfer rate; and as a result of the identifying step, apportioning the application data to the speed matching buffer set.
-
Citations
18 Claims
-
1. A method for archiving data from a server cluster to a backend data storage device via a computer network, the method comprising:
-
placing a complex of archive storage controllers in the network, the complex including a master archive storage controller having a speed matching buffer set module; the server cluster executing backup logic programmed to send a bulk input/output (I/O) request for a greater than a predetermined-size transfer of archive data to the master archive storage controller; and the speed matching buffer set module programmed, responsive to receiving the bulk I/O request, to identify a target transfer rate as defined by the bulk I/O request or by a predetermined relationship to I/O load, to identify identifying a speed matching buffer set of two or more of the archive storage controllers in the complex that are available, for lack of a predefined resource constraint characterized in terms of operational state, data storage capacity, processor capability, bandwidth, or utilization, to collectively transfer the bulk I/O request at the target transfer rate, and to send a bulk I/O response used by the server cluster to modify the bulk I/O request by apportioning it into parallel I/O requests to the speed matching buffer set. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A non-transitory distributed data storage system, comprising:
-
a server cluster operably executing backup logic for computer applications via input/output (I/O) commands over a computer network; a backend data storage device configured to store archive data generated by the backup logic; a complex of archive storage controllers processing the I/O commands to transfer the archive data from the server cluster to the backend data storage device via the computer network, the complex including a master archive storage controller to which the backup logic sends a bulk I/O request for a greater than a predetermined-size data transfer, the master archive storage controller having a speed matching buffer set module programmed, in response to the bulk I/O request, to identify a target transfer rate as defined by the bulk I/O request or by a predefined relationship to I/O load, to identify a speed matching buffer set of two or more of the archive storage controllers in the complex that are available, for lack of a predefined resource constraint in terms of operational state, data storage capacity, processor capability, bandwidth, or utilization, to collectively transfer the bulk I/O request at the target transfer rate, and to send a bulk I/O response that is used by the server cluster to modify the bulk I/O request by apportioning it into parallel I/O requests to the speed matching buffer set. - View Dependent Claims (12, 13, 14, 15, 16, 17)
-
-
18. A non-transitory complex of archive storage controllers for processing input/output (I/O) commands from a server cluster operably executing backup logic for computer applications to store archive data generated by the backup logic with a backend data storage device via a computer network, the complex comprising a master archive storage controller to which the backup logic sends a bulk I/O request for a greater than a predetermined-size data transfer, the master archive storage controller having a speed matching buffer set module programmed, in response to receiving the bulk I/O request, to identify a target transfer rate as defined by the bulk I/O request or by a predefined relationship to I/O load, to identify a speed matching buffer set of two or more of the archive storage controllers in the complex that are available, for lack of a predefined resource constraint in terms of operational state, data storage capacity, processor capability, bandwidth, or utilization, to collectively transfer the bulk I/O request at the target transfer rate, and to send a bulk I/O response used by the server cluster to modify the bulk I/O request by apportioning it into parallel I/O requests to the speed matching buffer set.
Specification