Patent ID: 7865575

Claim:
A method for sending a file from a source distributed file system to a destination distributed file system, the method comprising: sending a list of data nodes storing a first portion of the file and a second portion of the file to a master node of the destination distributed file system; computing a first checksum for a first portion of the file at a first data node of the source distributed file system; sending the first checksum from the first data node of the source distributed file system to a master node of the source distributed file system; computing a second checksum for a second portion of the file at a second data node of the source distributed file system; sending the second checksum from the second data node of the source distributed file system to the master node of the source distributed file system; sending the first checksum and the second checksum from the master node of the source distributed file system to the master node of the destination distributed file system, wherein the master node of the destination distributed file system sends the first checksum to a third data node of the destination distributed file system and the second checksum to a fourth data node of the destination distributed file system; receiving a first request for the first portion from a third data node of the destination distributed file system at the first data node of the source distributed file system; in response to the first request, sending the first portion of the file to the third data node of the destination distributed file system from the first data node of the source distributed file system, wherein the third data node of the destination distributed file system is assigned by the master node of the destination distributed file system; receiving a second request for the first portion from a fourth data node of the destination distributed file system at the second data node of the source distributed file system; and in response to the second request, sending the second portion of the file to the fourth data node of the destination distributed file system from the second data node of the source distributed file system, wherein the fourth data node of the destination distributed file system is assigned by the master node of the destination distributed file system.