Data storage system using paced deallocation of truncated file blocks

    公开(公告)号:US10146780B1

    公开(公告)日:2018-12-04

    申请号:US15078672

    申请日:2016-03-23

    申请人: EMC Corporation

    发明人: Ivan Bassov

    IPC分类号: G06F17/00 G06F17/30

    摘要: In a data storage system an internal file system stores client storage objects as respective files. A count of actual free space includes blocks available for allocation to store new file data, and a count of reported free space includes the actual free space as well as blocks of recently deleted file data undergoing deallocation. The reported free space count is used to initiate file system operations requiring allocation of free space, while the actual free space count is used to continue initiated file system operations based on availability of actual free space. Upon a truncation, a reporting update estimates or counts a number of blocks to be freed and adds the number to the reported free space count, and a background update is initiated to deallocate truncated blocks at a paced rate and update the actual free space count as blocks are deallocated.

    Managing data storage reservations on a per-family basis

    公开(公告)号:US09916102B1

    公开(公告)日:2018-03-13

    申请号:US15197064

    申请日:2016-06-29

    申请人: EMC Corporation

    IPC分类号: G06F12/08 G06F3/06

    摘要: A technique for managing storage space in a data storage system generates liability values on a per-family basis, with each family including files in the file system that are related to one another by snapping. Each family thus groups together files in the file system that share at least some blocks among one another based on snapshot activities. Distinct files that do not share blocks based on snapping are provided in separate families. The file system leverages the snap-based relationships among family members to produce more accurate estimates of liability than would otherwise be feasible.

    Managing truncation of files of file systems

    公开(公告)号:US11847095B1

    公开(公告)日:2023-12-19

    申请号:US14983699

    申请日:2015-12-30

    申请人: EMC Corporation

    发明人: Ivan Bassov

    IPC分类号: G06F7/00 G06F16/17 G06F16/23

    CPC分类号: G06F16/1727 G06F16/2365

    摘要: A method is used in managing truncation of files of file systems. A request is received to delete a portion of a file of a file system. The file system includes a plurality of files. Metadata of the file is evaluated for determining a number of file system blocks associated with the portion of the file that are available for de-allocation. Storage space associated with the file system blocks is reported as available storage space to a user of the file.

    Managing storage space in storage systems

    公开(公告)号:US09846544B1

    公开(公告)日:2017-12-19

    申请号:US14983666

    申请日:2015-12-30

    申请人: EMC Corporation

    发明人: Ivan Bassov

    IPC分类号: G06F12/02 G06F3/06

    摘要: A method is used in managing storage space in storage systems. A request is received to write data to a logical storage object. A determination is made as to whether the data can be written to the logical storage object in a compressed format. Based on the determination, the request is processed based on a storage insurance value and a storage liability value associated with the logical storage object. The storage insurance value and storage liability value is determined based on the number of uncompressed blocks included in the logical storage object.

    Managing I/O requests in file systems

    公开(公告)号:US09760574B1

    公开(公告)日:2017-09-12

    申请号:US14318856

    申请日:2014-06-30

    申请人: EMC Corporation

    IPC分类号: G06F7/00 G06F17/30

    摘要: A method is used in managing I/O requests in file systems. A first and second I/O requests are received. The first I/O request is directed to a first portion of a file and the second I/O request is directed to a second portion of the file. Respective first portions of the first and second I/O requests are performed concurrently. Respective second portions of the first and second I/O requests are performed concurrently. Execution of the second I/O request starts before execution of the first I/O request finishes.