Data storage space recovery system and method
First Claim
1. A method of determining explicitly free data storage space in a data storage subsystem that is implicitly allocated to a host file system, the method comprising:
- querying the host file system to identify file system storage units that are no longer in use by the host file system, wherein the file system storage units correspond to implicitly allocated storage space in the data storage subsystem by virtue of the file system storage units having been previously allocated to the host file system, resulting in such allocated storage space being free for reuse in actuality yet still appearing, from the perspective of the data storage subsystem, as in use by the host file system;
receiving a list of the identified unused file system storage units from the host file system;
mapping each unused file system storage unit of the list of identified unused file system storage units to a corresponding implicitly allocated data storage space in the data storage subsystem; and
explicitly freeing the corresponding implicitly allocated data storage space based on a determination of whether the corresponding implicitly allocated data storage space is in an active point in time copy page or a historical point in time copy page, such that the explicitly free data storage space no longer appears in use by the host file system from the perspective of the data storage subsystem.
16 Assignments
0 Petitions
Accused Products
Abstract
A process of determining explicitly free data space in computer data storage systems with implicitly allocated data space through the use of information provided by a hosting computer system with knowledge of what space allocated is currently being used at the time of a query, is provided. In one embodiment, a File System (“FS”) is asked to identify clusters no longer in use which is then mapped to physical disks as visible to an Operating System (“OS”). The physical disks are mapped to simulated/virtualized volumes presented by a storage subsystem. By using server information regarding the FS, for those pages that are no longer in use, point in time copy (“PITC”) pages are marked for future PITC and will not be coalesced forward, thereby saving significant storage.
81 Citations
11 Claims
-
1. A method of determining explicitly free data storage space in a data storage subsystem that is implicitly allocated to a host file system, the method comprising:
-
querying the host file system to identify file system storage units that are no longer in use by the host file system, wherein the file system storage units correspond to implicitly allocated storage space in the data storage subsystem by virtue of the file system storage units having been previously allocated to the host file system, resulting in such allocated storage space being free for reuse in actuality yet still appearing, from the perspective of the data storage subsystem, as in use by the host file system; receiving a list of the identified unused file system storage units from the host file system; mapping each unused file system storage unit of the list of identified unused file system storage units to a corresponding implicitly allocated data storage space in the data storage subsystem; and explicitly freeing the corresponding implicitly allocated data storage space based on a determination of whether the corresponding implicitly allocated data storage space is in an active point in time copy page or a historical point in time copy page, such that the explicitly free data storage space no longer appears in use by the host file system from the perspective of the data storage subsystem. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A data storage subsystem in operable communication with a host file system, the data storage subsystem comprising a computer-readable data storage medium and a controller, the controller configured to:
-
allocate data storage space of the computer-readable data storage medium to the host file system, wherein by virtue of the allocation of the data storage space, the allocated portions of the data storage space appear, from the perspective of the controller, to be in use by the host file system even where any of such allocated portions are free for reuse in actuality, being no longer in use by the host file system; query the host file system to identify free portions of the allocated data storage space which are no longer in use by the host file system; receive, from the host file system, a list of the identified free portions of the data storage space no longer in use by the host file system; map the data storage space identified in the list of free portions of the data storage space to corresponding portions of data storage space in the computer-readable data storage medium; and explicitly free the corresponding portion of data storage space in the computer-readable data storage medium based on a determination of whether the corresponding portion of data storage space is in an active point in time copy page or a historical point in time copy page, such that explicitly free portions of data storage space no longer appear in use by the host file system from the perspective of the controller. - View Dependent Claims (9, 10)
-
-
11. A method of determining explicitly free data storage space in a data storage subsystem that is implicitly allocated to a host file system, the method comprising:
-
receiving a list of file system storage units from the host file system that are no longer in use by the host file system, the file system storage units corresponding to implicitly allocated data storage space in the data storage subsystem by virtue of the file system storage units having been previously allocated to the host file system, resulting in such allocated storage space being free for reuse in actuality yet still appearing, from the perspective of the data storage subsystem, as in use by the host file system; and explicitly freeing the corresponding implicitly allocated data storage space based on a determination of whether the corresponding implicitly allocated data storage space is in an active point in time copy page or a historical point in time copy page, such that the explicitly free data storage space no longer appears in use by the host file system from the perspective of the data storage subsystem.
-
Specification