IP Library Granted Patent US 9,143,562
Granted Patent B2
US 9,143,562 · App. 13/458,885 · Granted Sep 22, 2015

Managing transfer of data from a source to a destination machine cluster

View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 9,143,562
App. No.
13/458,885
Granted
Sep 22, 2015
Kind
B2
Abstract

In a method for managing transfer of data from a source machine cluster to a destination machine cluster, information relevant to the transfer of data from the source machine cluster to the destination machine cluster is accessed. In addition, a data transfer operation that substantially optimizes the transfer of the data based upon the accessed information is determined. Furthermore, the determined data transfer operation is implemented to transfer the data from the source machine cluster to the destination machine cluster.

Claims (44)

1. A method for managing transfer of data from a source machine cluster to a destination machine cluster, said method comprising:

identifying data stored in a plurality of source machines in the source machine cluster to be transferred to a plurality of destination machines in the destination machine cluster during a common data transfer operation;

accessing information relevant to the transfer of the identified data from the plurality of source machines to the plurality of destination machines, wherein the information relevant to the transfer of the identified data comprises at least one of: the number of source machines from which the identified data is to be transferred, the number of destination machines to which the identified data is to be transferred, the locations of the source machines and the destination machines in a network, the type of the identified data to be transferred from the source machines, the size of the identified data to be transferred, the source machines in which the identified data is stored, and the content of the identified data;

determining a data transfer operation that substantially optimizes the transfer of the identified data from the plurality of source machines to the plurality of destination machines based upon the accessed information; and

implementing the determined data transfer operation in transferring the identified data from the plurality of source machines to the plurality of destination machines, wherein the plurality of destination machines are final destinations at which the identified data transferred from the plurality of source machines are stored.

2. The method according to claim 1 , further comprising:

establishing a connection between a source machine of the source machine cluster and a destination machine of the destination machine cluster; and

wherein accessing information relevant to the transfer of the identified data further comprises exchanging the information relevant to the transfer of the identified data from the source machine to the destination machine.

3. The method according to claim 1 , wherein accessing information relevant to the transfer of the identified data further comprises accessing the information from a user.

4. The method according to claim 1 , wherein determining the data transfer operation further comprises determining the data transfer operation in a source machine of the source machine cluster, said method further comprising:

communicating information pertaining to the determined data transfer operation to a destination machine of the destination machine cluster;

determining whether an indication of data transfer operation approval is received from the destination machine responsive to the communicated information; and

wherein implementing the determined data transfer operation in transferring the identified data further comprises implementing the determined data transfer operation in transferring the identified data in response to receipt of the indication of data transfer operation approval from the destination machine.

5. The method according to claim 4 , further comprising:

in response to a determination that the indication of data transfer operation approval is not received from the destination machine, determining another transfer operation for the identified data.

6. The method according to claim 1 , wherein determining the data transfer operation further comprises determining the data transfer operation in a destination machine of the destination machine cluster, said method further comprising:

communicating information pertaining to the determined data transfer operation to a source machine of the source machine cluster;

determining whether an indication of data transfer operation approval is received from the source machine response to the communicated information;

wherein implementing the determined data transfer operation in transferring the identified data further comprises implementing the determined data transfer operation in transferring the identified data in response to receipt of the indication of data transfer operation approval from the source machine; and

in response to a determination that the indication of data transfer operation approval is not received from the source machine, determining another data transfer operation that substantially optimizes the transfer of the identified data based upon the accessed information.

7. The method according to claim 1 , wherein determining the data transfer operation further comprises determining at least one of a manner in which the identified data is to be split, a manner in which a sort order of the identified data is to be modified, a manner in which the identified data is to be compressed, a manner in which the identified data is to be encoded, and a manner in which the identified data is to be transferred from the source machine cluster and the destination machine cluster.

8. The method according to claim 1 , wherein determining the data transfer operation further comprises implementing at least one of a rule-based optimizer, a cost-based optimizer, and a machine-learning optimizer that employs historical data to determine the data transfer operation that substantially optimizes the transfer of the identified data based upon the accessed information.

9. The method according to claim 1 , wherein implementing the determined data transfer operation in transferring the identified data further comprises implementing the determined data transfer operation to transfer multiple copies of the identified data from the plurality of source machines to the plurality of destination.

10. A manager for managing transfer of data from a source machine cluster to a destination machine cluster, said manager comprising:

a memory on which is stored at least one module to,

identify data stored in a plurality of source machines in the source machine cluster to be transferred to a plurality of destination machines in the destination machine cluster during a common data transfer operation;

access information relevant to the transfer of the identified data from the plurality of source machines to the plurality of destination machines, wherein the information relevant to the transfer of the identified data comprises at least one of: the number of source machines from which the identified data is to be transferred, the number of destination machines to which the identified data is to be transferred, the locations of the source machines and the destination machines in a network, the type of the identified data to be transferred from the source machines, the size of the identified data to be transferred, the source machines in which the identified data is stored, and the content of the identified data;

determine a data transfer operation that substantially optimizes the transfer of the identified data from the plurality of source machines to the plurality of destination machines based upon the accessed information;

implement the determined data transfer operation to transfer the identified data from the plurality of source machines to the plurality of destination machines, wherein the plurality of destination machines are final destinations at which the identified data transferred from the plurality of source machines are stored; and

a processor to implement the at least one module.

11. The manager according to claim 10 , wherein the at least one module is further to:

establish a connection between a source machine of the source machine cluster and a destination machine of the destination machine cluster;

exchange the information relevant to the transfer of the identified data between the source machine and the destination machine; and

transfer the identified data from the source machine cluster to the destination machine cluster.

12. The manager according to claim 10 , wherein the at least one module is further to:

request for approval of the determined data transfer operation;

determine another data transfer operation if approval for the determined data transfer operation is not received.

13. The manager according to claim 10 , wherein the at least one module is further to:

implement the determined data transfer operation to transfer multiple copies of the identified data from a plurality of source machines of the source machine cluster to a plurality of destination machines in the destination machine cluster.

14. A non-transitory computer readable storage medium on which is stored machine readable instructions that when executed by a processor, implement a method for managing transfer of data from a source machine cluster to a destination machine cluster, said machine readable instructions comprising code to:

identify data stored in a plurality of source machines in the source machine cluster to be transferred to a plurality of destination machines in the destination machine cluster during a common data transfer operation;

access information relevant to the transfer of the identified data from the plurality of source machines to the plurality of destination machines, wherein the information relevant to the transfer of the identified data comprises at least one of: the number of source machines from which the identified data is to be transferred, the number of destination machines to which the identified data is to be transferred, the locations of the source machines and the destination machines in a network, the type of the identified data to be transferred from the source machines, the size of the identified data to be transferred, the source machines in which the identified data is stored, and the content of the identified data;

determine a data transfer operation that substantially optimizes the transfer of the identified data from the plurality of source machines to the plurality of destination machines based upon the accessed information; and

implement the determined data transfer operation in transferring the identified data from the plurality of source machines to the plurality of destination machines, wherein the plurality of destination machines are final destinations at which the identified data transferred from the plurality of source machines are stored.

Assignments (10)
NUNC PRO TUNC ASSIGNMENT Recorded Apr 8, 2025
From: MICRO FOCUS LLC
To: ROCKET SOFTWARE, INC. (SUCCESSOR BY MERGER WITH ADMIRAL SOFTWARE LLC, FORMALLY KNOWN AS AMC SOFTWARE LLC)
Reel/Frame 070770/0795 →
SECURITY INTEREST Recorded Jan 10, 2025
From: ADMIRAL SOFTWARE LLC F/K/A AMC SOFTWARE LLC; ROCKET SOFTWARE, INC.
To: WILMINGTON TRUST, NATIONAL ASSOCIATION
Reel/Frame 069819/0708 →
SECURITY INTEREST Recorded Dec 18, 2024
From: ADMIRAL SOFTWARE LLC; ROCKET SOFTWARE, INC.
To: ROYAL BANK OF CANADA
Reel/Frame 069623/0372 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0577 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC)
Reel/Frame 063560/0001 →
RELEASE OF SECURITY INTEREST REEL/FRAME 044183/0718 Recorded Feb 2, 2023
From: JPMORGAN CHASE BANK, N.A.
To: MICRO FOCUS LLC (F/K/A ENTIT SOFTWARE LLC); BORLAND SOFTWARE CORPORATION; MICRO FOCUS (US), INC.; SERENA SOFTWARE, INC; ATTACHMATE CORPORATION; MICRO FOCUS SOFTWARE INC. (F/K/A NOVELL, INC.); NETIQ CORPORATION
Reel/Frame 062746/0399 →
CHANGE OF NAME Recorded Aug 8, 2019
From: ENTIT SOFTWARE LLC
To: MICRO FOCUS LLC
Reel/Frame 050004/0001 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ENTIT SOFTWARE LLC; ARCSIGHT, LLC
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0577 →
SECURITY INTEREST Recorded Oct 11, 2017
From: ENTIT SOFTWARE LLC; ATTACHMATE CORPORATION; BORLAND SOFTWARE CORPORATION; NETIQ CORPORATION; MICRO FOCUS (US), INC.; MICRO FOCUS SOFTWARE, INC.; ARCSIGHT, LLC; SERENA SOFTWARE, INC.
To: JPMORGAN CHASE BANK, N.A.
Reel/Frame 044183/0718 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 9, 2017
From: HEWLETT PACKARD ENTERPRISE DEVELOPMENT LP
To: ENTIT SOFTWARE LLC
Reel/Frame 042746/0130 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jun 22, 2012
From: VENKATESH, RAJAT
To: HEWLETT-PACKARD DEVELOPMENT COMPANY, L.P.
Reel/Frame 028425/0297 →