MANAGING OPPORTUNISTIC LOCKS IN A DISTRIBUTED FILESYSTEM
First Claim
1. A computer-implemented method for managing opportunistic locks 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;
receiving at a first cloud controller a request from a first client to access a file in the distributed filesystem, wherein the first client requests an opportunistic lock for the file from the first cloud controller; and
if no other outstanding client accesses on the other cloud controllers of the distributed filesystem preclude the requested opportunistic lock, granting the first client the opportunistic lock for the file.
9 Assignments
0 Petitions
Accused Products
Abstract
The disclosed embodiments disclose techniques for managing opportunistic locks in a distributed filesystem. Two or more cloud controllers collectively manage distributed filesystem data that is stored in the cloud storage systems; the cloud controllers ensure data consistency for the stored data, and each cloud controller caches portions of the distributed filesystem. During operation, a client sending a request to access a file from a cloud controller also requests an opportunistic lock for the file. If there are no other outstanding client accesses on the other cloud controllers that preclude the requested opportunistic lock, the cloud controller grants the client file access and the opportunistic lock.
37 Citations
20 Claims
-
1. A computer-implemented method for managing opportunistic locks 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; receiving at a first cloud controller a request from a first client to access a file in the distributed filesystem, wherein the first client requests an opportunistic lock for the file from the first cloud controller; and if no other outstanding client accesses on the other cloud controllers of the distributed filesystem preclude the requested opportunistic lock, granting the first client the opportunistic lock for the file. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)
-
-
13. A non-transitory computer-readable storage medium storing instructions that when executed by a computer cause the computer to perform a method for managing opportunistic locks 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; receiving at a first cloud controller a request from a first client to access a file in the distributed filesystem, wherein the first client requests an opportunistic lock for the file from the first cloud controller; and if no other outstanding client accesses on the other cloud controllers of the distributed filesystem preclude the requested opportunistic lock, granting the first client the opportunistic lock for the file. - View Dependent Claims (14, 15, 16, 17, 18, 19)
-
-
20. A cloud controller that manages opportunistic locks 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 to access a file in the distributed filesystem, wherein the client requests an opportunistic lock for the file from the cloud controller; and wherein, if no other outstanding client accesses on the other cloud controllers of the distributed filesystem preclude the requested opportunistic lock, the storage management mechanism is configured to grant the client the opportunistic lock for the file.
-
Specification