Patents by Inventor Nitin Rastogi
Nitin Rastogi has filed for patents to protect the following inventions. This listing includes patent applications that are pending as well as patents that have already been granted by the United States Patent and Trademark Office (USPTO).
-
Patent number: 11593399Abstract: System and method for managing copy-on-write (COW) B tree structures for metadata of storage objects stored in a storage system determine, when a request to modify a target storage object stored in the storage system that requires a modification of a target leaf node in a B tree structure for metadata of the target storage object is received, whether an operation sequence number of the target leaf node is greater than a snapshot sequence number of a parent snapshot of a running point of the B tree structure. When the operation sequence number is greater than the snapshot sequence number, the target leaf mode is modified in place without copying the target leaf node. When the operation sequence number is not greater than the snapshot sequence number, the target leaf node is copied as a new leaf node for the B tree structure and the new leaf node is modified.Type: GrantFiled: June 22, 2021Date of Patent: February 28, 2023Assignee: VMWARE, INC.Inventors: Enning Xiang, Wenguang Wang, Pranay Singh, Subhradyuti Sarkar, Nitin Rastogi
-
Publication number: 20230028678Abstract: The present disclosure is related to methods, systems, and machine-readable media for determining shared nodes between snapshots using probabilistic data structures. A unique identifier can be assigned to each node of a first tree data structure corresponding to a first snapshot of a virtual computing instance (VCI). A first probabilistic data structure representing the first tree data structure can be created that includes hashes of the identifiers assigned to the nodes of the first tree data structure. A unique identifier can be assigned to each node of a second tree data structure corresponding to a second snapshot of the VCI. A second probabilistic data structure representing the second tree data structure can be created that includes hashes of the identifiers assigned to the nodes of the second tree data structure.Type: ApplicationFiled: July 22, 2021Publication date: January 26, 2023Applicant: VMware, Inc.Inventors: Nitin Rastogi, Wenguang Wang, Pranay Singh, Subhradyuti Sarkar, Enning Xiang
-
Publication number: 20230028391Abstract: Techniques for efficiently managing a file clone from a filesystem which supports efficient volume snapshots are provided. In some embodiments, a system may receive an instruction to remove the file clone from the filesystem. The file clone may be a point-in-time copy of metadata of an original file. The system may further—for a file map entry in a filesystem tree associated with the file clone, the file map entry indicating a data block—decrement a reference count in a reference count entry associated with the file map entry. The reference count entry may be stored in the filesystem tree according to a key and the key may comprise an identification of the original file. The system may further reclaim the data block in a storage system when the reference count is zero.Type: ApplicationFiled: October 4, 2022Publication date: January 26, 2023Inventors: Sriram Patil, Abhay Kumar Jain, Wenguang Wang, Nitin Rastogi, Pranay Singh, Richard P. Spillane
-
Publication number: 20230010516Abstract: A method for of input/output (I/O) quiescing in a write-ahead-log (WAL)-based storage system comprising a WAL, is provided. The method generally includes receiving a request to process a control operation for the storage system, determining whether a memory buffer includes payload data for one or more write requests previously received for the storage system and added to the WAL, forcing a flush of the payload data in the memory buffer to a persistent layer of the storage system when the memory buffer includes the payload data, and processing the control operation subsequent to completing the asynchronous flush, without waiting for processing of one or more other write requests in the WAL corresponding to payload data that was not added to the memory buffer prior to receiving the request to process the control operation.Type: ApplicationFiled: July 6, 2021Publication date: January 12, 2023Inventors: Enning XIANG, Wenguang WANG, Nitin RASTOGI, Pranay SINGH, Subhradyuti SARKAR
-
Publication number: 20220405305Abstract: System and method for managing copy-on-write (COW) B tree structures for metadata of storage objects stored in a storage system determine, when a request to modify a target storage object stored in the storage system that requires a modification of a target leaf node in a B tree structure for metadata of the target storage object is received, whether an operation sequence number of the target leaf node is greater than a snapshot sequence number of a parent snapshot of a running point of the B tree structure. When the operation sequence number is greater than the snapshot sequence number, the target leaf mode is modified in place without copying the target leaf node. When the operation sequence number is not greater than the snapshot sequence number, the target leaf node is copied as a new leaf node for the B tree structure and the new leaf node is modified.Type: ApplicationFiled: June 22, 2021Publication date: December 22, 2022Inventors: Enning Xiang, Wenguang Wang, Pranay Singh, Subhradyuti Sarkar, Nitin Rastogi
-
Publication number: 20220382591Abstract: The disclosure herein describes management of distribution of resources between a global pool and an associated plurality of local pools using a flush threshold. A request for resources is received at the global pool from a local pool, the request indicating a requested quantity of resources. Based on the received request, it is determined that available resources in the global pool are below a flush threshold of the global pool. Based on this determination, flush instructions are sent to the local pools, wherein the flush instructions instruct each local pool to release unused resources (e.g., available to be released) to the global pool. Based on the available resources of the global pool then exceeding the requested quantity of resources and/or the flush threshold, resources of the global pool are allocated to the requesting local pool, whereby the local pool is enabled to use the allocated resources.Type: ApplicationFiled: May 27, 2021Publication date: December 1, 2022Inventors: Nitin Rastogi, Wenguang Wang, Richard P. Spillane
-
Patent number: 11494334Abstract: Techniques for efficiently managing a file clone from a filesystem which supports efficient volume snapshots are provided. In some embodiments, a system may receive an instruction to remove the file clone from the filesystem. The file clone may be a point-in-time copy of metadata of an original file. The system may further—for a file map entry in a filesystem tree associated with the file clone, the file map entry indicating a data block—decrement a reference count in a reference count entry associated with the file map entry. The reference count entry may be stored in the filesystem tree according to a key and the key may comprise an identification of the original file. The system may further reclaim the data block in a storage system when the reference count is zero.Type: GrantFiled: December 11, 2020Date of Patent: November 8, 2022Assignee: VMWARE INC.Inventors: Sriram Patil, Abhay Kumar Jain, Wenguang Wang, Nitin Rastogi, Pranay Singh, Richard P. Spillane
-
Patent number: 11494297Abstract: An example method of memory management in a computing system having a plurality of processors includes: receiving a first memory allocation request at a memory manager from a process executing on a processor of the plurality of processors in the computing system; allocating a local memory pool for the processor from a global memory pool for the plurality of processors in response to the first memory allocation request; and allocating memory from the local memory pool for the processor in response to the first memory allocation request without locking the local memory pool.Type: GrantFiled: September 9, 2020Date of Patent: November 8, 2022Assignee: VMWARE, INC.Inventors: Abhay Kumar Jain, Richard P. Spillane, Wenguang Wang, Nitin Rastogi, Mounesh Badiger
-
Publication number: 20220342848Abstract: The present disclosure is related to methods, systems, and machine-readable media for snapshot space reporting. A first probabilistic data structure can be created for a first snapshot of a virtual computing instance (VCI) in a file system based on a hash of physical block numbers of a plurality of blocks of the first snapshot. A second probabilistic data structure can be created for a second snapshot of the VCI based on a hash of physical block numbers of a plurality of blocks of the second snapshot. A space report can be determined for the first and second snapshots based on the first probabilistic data structure and the second probabilistic data structure, wherein the space report is indicative of the storage space occupied by the first and second snapshots. A file system function can be performed by reference to the space report.Type: ApplicationFiled: April 23, 2021Publication date: October 27, 2022Applicant: VMware, Inc.Inventors: Pranay Singh, Wenguang Wang, Nitin Rastogi
-
Publication number: 20220342851Abstract: The present disclosure is related to methods, systems, and machine-readable media for file system event monitoring using metadata snapshots. A traditional snapshot of a virtual computing instance (VCI) can be created in a file system. The snapshot can correspond to an extent. An indication can be made that the extent is owned by a single snapshot. A metadata snapshot, corresponding to the extent, can be created without changing the indication that the extent is owned. The extent can be modified, wherein the indication that the extent is owned causes the extent to be modified without allocating a new extent.Type: ApplicationFiled: April 23, 2021Publication date: October 27, 2022Applicant: VMware, Inc.Inventors: Pranay Singh, Wenguang Wang, Nitin Rastogi
-
Publication number: 20220342847Abstract: The present disclosure is related to methods, systems, and machine-readable media for deleting snapshots. A deletion process can be performed responsive to receiving a request to delete a snapshot of a virtual computing instance (VCI) in a file system. The deletion process can include performing a first file comparison between the snapshot and a previous snapshot to determine first extents exclusive to the snapshot, performing a second file comparison between the snapshot and a subsequent snapshot to determine second extents exclusive to the snapshot, performing a third file comparison between the first extents and the second extents to determine common extents, wherein the common extents are common to the first extents and the second extents, and deleting the common extents from the file system.Type: ApplicationFiled: April 15, 2021Publication date: October 27, 2022Applicant: VMware, Inc.Inventors: Pranay Singh, Wenguang Wang, Nitin Rastogi
-
Publication number: 20220188267Abstract: Techniques for efficiently managing a file clone from a filesystem which supports efficient volume snapshots are provided. In some embodiments, a system may receive an instruction to remove the file clone from the filesystem. The file clone may be a point-in-time copy of metadata of an original file. The system may further—for a file map entry in a filesystem tree associated with the file clone, the file map entry indicating a data block—decrement a reference count in a reference count entry associated with the file map entry. The reference count entry may be stored in the filesystem tree according to a key and the key may comprise an identification of the original file. The system may further reclaim the data block in a storage system when the reference count is zero.Type: ApplicationFiled: December 11, 2020Publication date: June 16, 2022Inventors: Sriram Patil, Abhay Kumar Jain, Wenguang Wang, Nitin Rastogi, Pranay Singh, Richard P. Spillane
-
Publication number: 20220027264Abstract: An example method of memory management in a computing system having a plurality of processors includes: receiving a first memory allocation request at a memory manager from a process executing on a processor of the plurality of processors in the computing system; allocating a local memory pool for the processor from a global memory pool for the plurality of processors in response to the first memory allocation request; and allocating memory from the local memory pool for the processor in response to the first memory allocation request without locking the local memory pool.Type: ApplicationFiled: September 9, 2020Publication date: January 27, 2022Inventors: ABHAY KUMAR JAIN, Richard P. Spillane, Wenguang Wang, Nitin Rastogi, Mounesh Badiger