Write input/output optimization for virtual disks in a virtualized computing system

    公开(公告)号:US11573741B2

    公开(公告)日:2023-02-07

    申请号:US17398021

    申请日:2021-08-10

    Applicant: VMWARE, INC.

    Abstract: An example method of handling, at a hypervisor on a host in a virtualized computing system, a write input/output (IO) operation to a file on a storage device having a virtual machine file system (VMFS) is described. The method includes: sorting, at the hypervisor, a scatter-gather array for the write IO operation into sets of scatter-gather elements, each of the sets including at least one scatter-gather element targeting a common file block address; resolving offsets of the sets of scatter-gather elements to identify a first scatter-gather array of transaction-dependent scatter-gather elements; generating logical transactions for the first scatter-gather array having updates to metadata of the VMFS for the file; batching the logical transactions into a physical transaction; and executing the physical transaction to commit the updates to the metadata of the VMFS on the storage device for the file.

    OPTIMAL METHOD FOR DELETING SUB-BLOCKS OF A POINTER BLOCK THAT DO NOT HAVE ON-DISK METADATA HEADERS FOR ADDRESSES

    公开(公告)号:US20220413700A1

    公开(公告)日:2022-12-29

    申请号:US17399098

    申请日:2021-08-11

    Applicant: VMWARE, INC.

    Abstract: A method of deleting a first pointer block of a plurality of pointer blocks of a file system from a storage device used by a plurality of applications, wherein the plurality of pointer blocks are each subdivided into sub-blocks, includes the steps of: determining that a first sub-block of the first pointer block is marked as being empty of any addresses of the file system at which storage space is allocated to files of the applications; determining that a second sub-block of the first pointer block has not been marked as being empty; in response to the determining that the second sub-block has not been marked as being empty, determining that the second sub-block does not contain any addresses of the file system at which storage space is allocated to the files of the applications; and deleting the first pointer block from the storage device.

    Reclaiming storage resources
    3.
    发明授权

    公开(公告)号:US10740227B2

    公开(公告)日:2020-08-11

    申请号:US15644854

    申请日:2017-07-10

    Applicant: VMWARE, INC.

    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for reclaiming one or more portions of storage resources in a computer system serving one or more virtual computing instances, where the storage resources in the computer system are organized in clusters of storage blocks. In one aspect, a method includes maintaining a respective block tracking value for each storage block that indicates whether a call to reclaim the storage block is outstanding; determining, from the block tracking values, a respective cluster priority value for each of the clusters based on a count of storage blocks in the respective cluster for which a call to reclaim is outstanding; and reclaiming a first portion of storage resources in the computer system in accordance with the cluster priority values.

    Avoiding data inconsistency in a file system using 2-level synchronization

    公开(公告)号:US11640375B2

    公开(公告)日:2023-05-02

    申请号:US17398065

    申请日:2021-08-10

    Applicant: VMWARE, INC.

    Abstract: A method of synchronously executing input/output operations (IOs) for a plurality of applications using a storage device with a file system includes the steps of: receiving a first write IO including an instruction to write first data at a first address of the file system; determining that, within a first range of the file system comprising the first address, there are no pending unmap IOs for deallocating storage space of the storage device from files of the plurality of applications; after determining that there are no pending unmap IOs within the first range, locking the first range to prevent incoming unmap IOs from deallocating storage space within the first range from the files of the plurality of applications; after locking the first range, writing the first data to the storage device at the first address; and after writing the first data, unlocking the first range.

    Optimal method for deleting sub-blocks of a pointer block that do not have on-disk metadata headers for addresses

    公开(公告)号:US11531481B1

    公开(公告)日:2022-12-20

    申请号:US17399098

    申请日:2021-08-11

    Applicant: VMWARE, INC.

    Abstract: A method of deleting a first pointer block of a plurality of pointer blocks of a file system from a storage device used by a plurality of applications, wherein the plurality of pointer blocks are each subdivided into sub-blocks, includes the steps of: determining that a first sub-block of the first pointer block is marked as being empty of any addresses of the file system at which storage space is allocated to files of the applications, determining that a second sub-block of the first pointer block has not been marked as being empty; in response to the determining that the second sub-block has not been marked as being empty, determining that the second sub-block does not contain any addresses of the file system at which storage space is allocated to the files of the applications; and deleting the first pointer block from the storage device.

    WRITE INPUT/OUTPUT OPTIMIZATION FOR VIRTUAL DISKS IN A VIRTUALIZED COMPUTING SYSTEM

    公开(公告)号:US20220365722A1

    公开(公告)日:2022-11-17

    申请号:US17398021

    申请日:2021-08-10

    Applicant: VMWARE, INC.

    Abstract: An example method of handling, at a hypervisor on a host in a virtualized computing system, a write input/output (IO) operation to a file on a storage device having a virtual machine file system (VMFS) is described. The method includes: sorting, at the hypervisor, a scatter-gather array for the write IO operation into sets of scatter-gather elements, each of the sets including at least one scatter-gather element targeting a common file block address; resolving offsets of the sets of scatter-gather elements to identify a first scatter-gather array of transaction-dependent scatter-gather elements; generating logical transactions for the first scatter-gather array having updates to metadata of the VMFS for the file; batching the logical transactions into a physical transaction; and executing the physical transaction to commit the updates to the metadata of the VMFS on the storage device for the file.

    Reclaiming storage resources
    10.
    发明授权

    公开(公告)号:US11341044B2

    公开(公告)日:2022-05-24

    申请号:US16926336

    申请日:2020-07-10

    Applicant: VMware, Inc.

    Abstract: Methods, systems, and apparatus, including computer programs encoded on a computer storage medium, for reclaiming one or more portions of storage resources in a computer system serving one or more virtual computing instances, where the storage resources in the computer system are organized in clusters of storage blocks. In one aspect, a method includes maintaining a respective block tracking value for each storage block that indicates whether a call to reclaim the storage block is outstanding; determining, from the block tracking values, a respective cluster priority value for each of the clusters based on a count of storage blocks in the respective cluster for which a call to reclaim is outstanding; and reclaiming a first portion of storage resources in the computer system in accordance with the cluster priority values.

Patent Agency Ranking