AVOIDING CLIENT TIMEOUTS IN A DISTRIBUTED FILESYSTEM
First Claim
1. A computer-implemented method for reducing client timeouts for a distributed filesystem, the method comprising:
- collectively managing the data of the distributed filesystem using two or more cloud controllers, wherein collectively managing the data comprises;
storing the data for the distributed filesystem in one or more cloud storage systems, wherein the cloud controllers cache and ensure data consistency for data stored in the cloud storage systems, wherein each cloud controller is associated with a local storage pool; and
caching data for the distributed filesystem in the local storage pool of each cloud controller;
receiving at a cloud controller a request from a client system for a data block from a target file that is stored in the distributed filesystem; and
delaying the transmission of one or more cached data blocks for the target file from the cloud controller to the client system.
9 Assignments
0 Petitions
Accused Products
Abstract
The disclosed embodiments disclose techniques that facilitate of avoiding client timeouts in a distributed filesystem. Multiple cloud controllers collectively manage distributed filesystem data that is stored in one or more cloud storage systems; the cloud controllers ensure data consistency for the stored data, and each cloud controller caches portions of the distributed filesystem in a local storage pool. During operation, a cloud controller receives from a client system a request for a data block in a target file that is stored in the distributed filesystem. Although the cloud controller is already caching the requested data block, the cloud controller delays transmission of the cached data block; this additional delay gives the cloud controller more time to access uncached data blocks for the target file from a cloud storage system, thereby ensuring that subsequent requests of such data blocks do not exceed a timeout interval on the client system.
118 Citations
20 Claims
-
1. A computer-implemented method for reducing client timeouts for a distributed filesystem, the method comprising:
-
collectively managing the data of the distributed filesystem using two or more cloud controllers, wherein collectively managing the data comprises; storing the data for the distributed filesystem in one or more cloud storage systems, wherein the cloud controllers cache and ensure data consistency for data stored in the cloud storage systems, wherein each cloud controller is associated with a local storage pool; and caching data for the distributed filesystem in the local storage pool of each cloud controller; receiving at a cloud controller a request from a client system for a data block from a target file that is stored in the distributed filesystem; and delaying the transmission of one or more cached data blocks for the target file from the cloud controller to the client system. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
-
-
12. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for reducing client timeouts for a distributed filesystem, the method comprising:
-
collectively managing the data of the distributed filesystem using two or more cloud controllers, wherein collectively managing the data comprises; storing the data for the distributed filesystem in one or more cloud storage systems, wherein the cloud controllers cache and ensure data consistency for data stored in the cloud storage systems, wherein each cloud controller is associated with a local storage pool; and caching data for the distributed filesystem in the local storage pool of each cloud controller; receiving at a cloud controller a request from a client system for a data block from a target file that is stored in the distributed filesystem; and delaying the transmission of one or more cached data blocks for the target file from the cloud controller to the client system. - View Dependent Claims (13, 14, 15, 16, 17, 18, 19)
-
-
20. A cloud controller that reduces client timeouts for a distributed filesystem, comprising:
-
a processor; a storage mechanism that stores metadata for the distributed filesystem; and a storage management mechanism; wherein two or more cloud controllers collectively manage the data of the distributed filesystem; wherein the cloud controller is configured to receive a request from a client system for a data block of a target file that is stored in the distributed filesystem; and wherein the cloud controller is further configured to delay the transmission of one or more cached blocks for the target file from the cloud controller to the client system.
-
Specification