Concurrent file and object protocol access using space-efficient cloning
First Claim
1. A computer program product for providing concurrent file and object protocol access, the computer program product comprising a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising:
- computer readable program code configured to receive a notification that indicates storage of an object in response to an object PUT request from an object-based client, utilizing an object-based access protocol;
computer readable program code configured to create a clone of the object;
computer readable program code configured to identify a request to access the object by a file-based client different from the object-based client;
computer readable program code configured to provide, to the file-based client, access to the clone of the object, utilizing a file-based network attached storage (NAS) protocol different from the object-based access protocol, where the file-based NAS protocol implements a traversal of a file system hierarchy;
computer readable program code configured to identify a modification of the clone of the object by the file-based client that results in a modified clone of the object;
computer readable program code configured to return the object to the object-based client or another object-based client, in response to one or more object GET read requests for the object received from the object-based client or the other object-based client during the modification of the clone of the object by the file-based client; and
computer readable program code configured to replace the object with an updated object after the modification of the clone of the object, utilizing the modified clone of the object.
1 Assignment
0 Petitions
Accused Products
Abstract
A computer-implemented method is provided in one general embodiment for concurrent file and object protocol access. The method includes receiving a notification that indicates storage of an object by an object-based client, and creating a clone of the object. Also, the method includes providing a file-based client access to the clone of the object. Further, the method includes, after the file-based client has finished modifying the clone of the object, replacing the object with an updated object based on the modified clone of the object. The file-based client is provided access to the modified clone of the updated object. After the file-based client has finished modifying the modified clone of the updated object, the updated object is replaced with an additional object based on the modification to the modified clone of the updated object.
24 Citations
20 Claims
-
1. A computer program product for providing concurrent file and object protocol access, the computer program product comprising a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising:
-
computer readable program code configured to receive a notification that indicates storage of an object in response to an object PUT request from an object-based client, utilizing an object-based access protocol; computer readable program code configured to create a clone of the object; computer readable program code configured to identify a request to access the object by a file-based client different from the object-based client; computer readable program code configured to provide, to the file-based client, access to the clone of the object, utilizing a file-based network attached storage (NAS) protocol different from the object-based access protocol, where the file-based NAS protocol implements a traversal of a file system hierarchy; computer readable program code configured to identify a modification of the clone of the object by the file-based client that results in a modified clone of the object; computer readable program code configured to return the object to the object-based client or another object-based client, in response to one or more object GET read requests for the object received from the object-based client or the other object-based client during the modification of the clone of the object by the file-based client; and computer readable program code configured to replace the object with an updated object after the modification of the clone of the object, utilizing the modified clone of the object. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10)
-
-
11. A computer-implemented method for providing concurrent file and object protocol access, the method comprising:
-
receiving a notification that indicates storage of an object in response to an object PUT request from an object-based client, utilizing an object-based access protocol; creating a clone of the object; identifying a request to access the object by a file-based client different from the object-based client; providing, to the file-based client, access to the clone of the object utilizing a file-based network attached storage (NAS) protocol different from the object-based access protocol, where the file-based NAS protocol implements a traversal of a file system hierarchy; identifying a modification of the clone of the object by the file-based client that results in a modified clone of the object; replacing the object with an updated object based on the modified clone of the object; providing, to the file-based client, access to the modified clone of the object; identifying a modification of the modified clone of the object by the file-based client; and replacing the updated object with an additional object based on the modification of the modified clone of the object. - View Dependent Claims (12, 13, 14, 15, 16, 17, 18, 19)
-
-
20. A computer program product for providing concurrent file and object protocol access, the computer program product comprising a computer readable storage medium having computer readable program code embodied therewith, the computer readable program code comprising:
-
computer readable program code configured to receive a notification that indicates storage of an object in response to an object PUT request from an object-based client, utilizing an object-based access protocol; computer readable program code configured to create a clone of the object; computer readable program code configured to identify a request to access the object by a file-based client different from the object-based client; computer readable program code configured to provide, to the file-based client, access to the clone of the object, utilizing a file-based network attached storage (NAS) protocol different from the object-based access protocol, where the file-based NAS protocol implements a traversal of a file system hierarchy; computer readable program code configured to identify a modification of the clone of the object by the file-based client that results in a modified clone of the object; computer readable program code configured to replace the object with an updated object based on the modified clone of the object; computer readable program code configured to provide, to the file-based client, access to the modified clone of the object; computer readable program code configured to identify a modification of the modified clone of the object by the file-based client; and computer readable program code configured to replace the updated object with an additional object based on the modification of the modified clone of the object.
-
Specification