Patents by Inventor Vamsi Gunturu

Vamsi Gunturu 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).

  • Publication number: 20220066950
    Abstract: A method for encrypting data blocks is provided. The method receives a plurality of data blocks and encrypts each data block using an LBA of the data block as a tweak. The method writes the plurality of encrypted data blocks to physical blocks of the plurality of physical disks. The method then performs deduplication on the physical disks by determining that first and second physical blocks in the physical disks are duplicates, decrypting encrypted data in the first physical block using a first LBA associated with the first physical block as the tweak, and re-encrypting decrypted data in the first physical block using a PBA associated with the first physical block as the tweak. When reading the data back, either the LBA or PBA is used as the tweak, depending on whether the data was encrypted using LBA or re-encrypted using PBA during the deduplication process.
    Type: Application
    Filed: August 25, 2020
    Publication date: March 3, 2022
    Inventors: Wenguang WANG, Eric KNAUFT, Vamsi GUNTURU
  • Publication number: 20220066883
    Abstract: Techniques for recovering metadata associated with data backed up in cloud object storage are provided. In one set of embodiments, a computer system can create a snapshot of a data set, where the snapshot includes a plurality of data blocks of the data set that have been modified since the creation of a prior snapshot of the data set. The computer system can further upload the snapshot to a cloud object storage platform of a cloud infrastructure, where the snapshot is uploaded as a plurality of log segments conforming to an object format of the cloud object storage platform, and where each log segment includes one or more data blocks in the plurality of data blocks, and a set of metadata comprising, for each of the one or more data blocks, an identifier of the data set, an identifier of the snapshot, and a logical block address (LBA) of the data block.
    Type: Application
    Filed: August 25, 2020
    Publication date: March 3, 2022
    Inventors: Wenguang Wang, Vamsi Gunturu, Junlong Gao, Petr Vandrovec, Ilya Languev, Maxime Austruy, Ilia Sokolinski, Satish Pudi
  • Publication number: 20220057955
    Abstract: Scalable segment cleaning for log-structured file systems (LFSs) includes determining counts of segment cleaners and virtual nodes, with each virtual node being associated with a plurality of objects. Each virtual node is assigned to a selected segment cleaner. Based at least on the assignments, performing, for each virtual node, segment cleaning of the objects by the assigned segment cleaner. A portion, less than all, of the virtual nodes are reassigned to a newly selected segment cleaner based on a change of the count of the segment cleaners and/or a change of the count of the virtual nodes. Based at least on the reassignments, segment cleaning of the objects is performed, for each reassigned virtual node, by the reassigned segment cleaner. In some examples, the objects comprise virtual machine disks (VMDKs) and the segment cleaning uses a segment usage table (SUT) to track segment usage and identify segment cleaning candidates.
    Type: Application
    Filed: August 21, 2020
    Publication date: February 24, 2022
    Inventors: Wenguang Wang, Junlong Gao, Vamsi Gunturu
  • Publication number: 20220058161
    Abstract: The efficiency of segment cleaning for a log-structured file system (LFS) is enhanced at least by storing additional information in a segment usage table (SUT). Live blocks (representing portions of stored objects) in an LFS are determined based at least on the SUT. Chunk identifiers associated with the live blocks are read. The live blocks are coalesced at least by writing at least a portion of the live blocks into at least one new segment. A blind update of at least a portion of the chunk identifiers in a chunk map is performed to indicate the new segment. The blind update includes writing to the chunk map without reading from the chunk map. In some examples, the objects comprise virtual machine disks (VMDKs) and the SUT changes between a list format and a bitmap format, to minimize size.
    Type: Application
    Filed: August 21, 2020
    Publication date: February 24, 2022
    Inventors: Wenguang Wang, Ilia Langouev, Vamsi Gunturu, Junlong Gao
  • Publication number: 20220058094
    Abstract: Solutions for managing archived storage include receiving, at a first node, a snapshot comprising object data (e.g., a virtual machine disk snapshot) from a second node (e.g., a software defined data center), and storing the snapshot in a tiered structure that includes a data tier and a metadata tier. Snapshots may be used for fail-over operations and/or backups, to support disaster recovery. The data tier comprises a log-structured file system (LFS), and the metadata tier comprises a content addressable storage (CAS) identifying addresses within the LFS. The metadata tier also comprises a logical layer indicating content in the CAS. Segment cleaning of the data tier is performed using a segment usage table (SUT). Some examples include performing a fail-over operation from the second node to a third node using at least the stored snapshot for workload recovery. In some examples, the CAS comprises a log-structured merge-tree (LSM-tree).
    Type: Application
    Filed: August 20, 2020
    Publication date: February 24, 2022
    Inventors: Vamsi Gunturu, Wenguang Wang, Junlong Gao, Ilia Langouev, Petr Vandrovec, Maxime Austruy, Ilia Sokolinski, Satish Pudi
  • Publication number: 20220058043
    Abstract: The present disclosure is related to methods, systems, and machine-readable media for log-structured file system management operations. An aggregate amount of over-provisioned computing resources assigned to a plurality of log-structured file system (LFS) objects that are allocated for performance of memory management operations associated with a virtual storage area network (vSAN) can be determined. A subset of LFS objects that are candidates for performance of a particular memory management operation based on an amount of over-provisioned computing resources consumed by one or more LFS objects among the plurality of LFS objects exceeding a resource consumption threshold associated with the determined amount of over-provisioned computing resources assigned to the plurality of LFS objects can be selected. The particular memory management operation using one or more of the candidate LFS objects can be performed.
    Type: Application
    Filed: August 21, 2020
    Publication date: February 24, 2022
    Applicant: VMware, Inc.
    Inventors: Wenguang Wang, Vamsi Gunturu, Eric Knauft, Pascal Renauld, Matt Amdur, Blake Lewis, Peng Mi
  • Publication number: 20220027187
    Abstract: The present disclosure is related to methods, systems, and machine-readable media for supporting clones with consolidated snapshots. A clone of a virtual computing instance can be created in a snapshot tree provided by a software defined data center. A consolidated snapshot including tuples from a diskchain of the clone in the snapshot tree can be created responsive to a determination that the snapshot tree exceeds a threshold.
    Type: Application
    Filed: July 24, 2020
    Publication date: January 27, 2022
    Applicant: VMware, Inc.
    Inventors: Wenguang Wang, Matt Amdur, Vamsi Gunturu, Eric Knauft, Pascal Renauld, Blake Lewis, Peng Mi
  • Publication number: 20220027185
    Abstract: The present disclosure is related to methods, systems, and machine-readable media for cloneless snapshot reversion. A request can be received to revert to a past snapshot of a virtual computing instance in a snapshot chain of a snapshot tree provided by a software defined data center. A live snapshot can be created at an end of the snapshot chain comprising the past snapshot. An intervening snapshot in the snapshot chain can be indicated as abandoned in a snapshot map associated with the snapshot tree based on the reversion.
    Type: Application
    Filed: July 23, 2020
    Publication date: January 27, 2022
    Applicant: VMware, Inc.
    Inventors: Wenguang Wang, Matt Amdur, Vamsi Gunturu
  • Publication number: 20220019529
    Abstract: A logical map represents fragments from separate versions of a data object. Migration of data from a first (old) version to the second (new) version happens gradually, where write operations go to the new version of the data object. The logical map initially points to the old data object, but is updated to point to the portions of the new data object as write operations are performed on the new data object. A background migration copies data from the old data object to the new data object.
    Type: Application
    Filed: July 20, 2020
    Publication date: January 20, 2022
    Inventors: Wenguang Wang, Vamsi Gunturu
  • Publication number: 20220019528
    Abstract: A logical map represents fragments from separate versions of a data object. Migration of data from a first (old) version to the second (new) version happens gradually, where write operations go to the new version of the data object. The logical map initially points to the old data object, but is updated to point to the portions of the new data object as write operations are performed on the new data object. A background migration copies data from the old data object to the new data object.
    Type: Application
    Filed: July 20, 2020
    Publication date: January 20, 2022
    Inventors: Wenguang Wang, Vamsi Gunturu
  • Patent number: 11226760
    Abstract: Techniques for supporting large segments when issuing writes to an erasure coded storage object in a distributed storage system are provided. In one set of embodiments, a node of the system can receive a write request for updating a logical data block of the storage object, write data/metadata for the block to a record in a data log of a metadata object of the storage object (where the metadata object is stored on a performance storage tier), and determine whether the data log has accumulated a threshold number of records. If so, the node can further allocate an in-memory bank, place the data from the data log records into free slots of the bank, allocate a segment in a capacity object of the storage object for holding contents of the bank (where the capacity object is stored on a capacity storage tier), and write the bank contents via a full stripe write to the allocated segment.
    Type: Grant
    Filed: April 7, 2020
    Date of Patent: January 18, 2022
    Assignee: VMware, Inc.
    Inventors: Wenguang Wang, Vamsi Gunturu
  • Publication number: 20220012131
    Abstract: Writing to a storage system with data striping includes storing blocks of data in local memory until one or more full-stripe write operations can be performed, thus reducing write amplification on the data striped storage system. Crash recovery information includes storing the data associated metadata to respective persistent storage devices.
    Type: Application
    Filed: July 9, 2020
    Publication date: January 13, 2022
    Inventors: Wenguang Wang, Vamsi Gunturu, Eric Knauft
  • Publication number: 20220012132
    Abstract: Processing write requests from clients includes logging the associated data into logs corresponding to the data objects targeted by the write requests. The logs are persisted by combining log entries from each of the logs into one ore more fixed-size data blocks. The fixed-size data blocks are inserted into a data tree stored on a block-based storage device.
    Type: Application
    Filed: July 9, 2020
    Publication date: January 13, 2022
    Inventors: Wenguang Wang, Vamsi Gunturu, Eric Knauft
  • Patent number: 11221944
    Abstract: A method for managing metadata for data stored in a cloud storage is provided. The method receives, at a first of a plurality of metadata servers, information associated with an object stored in the cloud storage, the information comprising a plurality of LBAs for where the object is stored. Each metadata server allocates contiguous chunk IDs for a group of objects. The method generates a new chunk ID for the object, which is a combination of a unique fixed value and a monotonically incrementing local value associated with each LBA, such that a first LBA is mapped to a first chunk ID having a first local value and a next LBA is mapped to a second chunk ID having the first local value incremented as a second local value. The method stores the new chunk ID and other metadata in one or more tables stored in a metadata storage.
    Type: Grant
    Filed: August 25, 2020
    Date of Patent: January 11, 2022
    Assignee: VMware, Inc.
    Inventors: Wenguang Wang, Vamsi Gunturu, Junlong Gao, Ilya Languev, Petr Vandrovec, Maxime Austruy, Ilia Sokolinski, Satish Pudi
  • Patent number: 11204706
    Abstract: A method for generating one or more hashes for one or more data blocks is provided. The method receives a data block to write on at least one physical disk of a set of physical disks associated with a set of host machines. The method then calculates a hash for the received data block and writes a first entry to a data log in a cache disk, the first entry comprising a first header and data indicative of the received block, the first header comprising the hash. The method further writes the data to the at least one physical disk as part of data blocks of a stripe, and stores the hash in a summary block on the at least one physical disk. The summary block is associated with the data blocks of the stripe stored on the at least one physical disk.
    Type: Grant
    Filed: March 23, 2020
    Date of Patent: December 21, 2021
    Assignee: VMware, Inc.
    Inventors: Wenguang Wang, Vamsi Gunturu
  • Publication number: 20210365319
    Abstract: Techniques for using erasure coding across multiple regions to reduce the likelihood of losing objects in a cloud object storage platform are provided. In one set of embodiments, a computer system can upload each of a plurality of data objects to each of a plurality of regions of the cloud object storage platform. The computer system can further compute a parity object based on the plurality of data objects, where the parity object encodes parity information for the plurality of data objects. The computer system can then upload the parity object to another region of the cloud object storage platform different from the plurality of regions.
    Type: Application
    Filed: May 22, 2020
    Publication date: November 25, 2021
    Inventors: Wenguang Wang, Junlong Gao, Vamsi Gunturu
  • Publication number: 20210365365
    Abstract: Techniques for using data mirroring across regions to reduce the likelihood of losing objects in a cloud object storage platform are provided. In one set of embodiments, a computer system can upload first and second copies of a data object to first and second regions of the cloud object storage platform respectively, where the first and second copies are identical. The computer system can then attempt to read the first copy of the data object from the first region. If the read attempt fails, the computer system can retrieve the second copy of the data object from the second region.
    Type: Application
    Filed: May 22, 2020
    Publication date: November 25, 2021
    Inventors: Wenguang Wang, Vamsi Gunturu, Junlong Gao
  • Publication number: 20210365318
    Abstract: Techniques for using erasure coding in a single region to reduce the likelihood of losing objects in a cloud object storage platform are provided. In one set of embodiments, a computer system can upload a plurality of data objects to a region of a cloud object storage platform, where the plurality of data objects including modifications to a data set. The computer system can further compute a parity object based on the plurality of data objects, where the parity object encodes parity information for the plurality of data objects. The computer system can then upload the parity object to the same region where the plurality of data objects was uploaded.
    Type: Application
    Filed: May 22, 2020
    Publication date: November 25, 2021
    Inventors: Wenguang Wang, Vamsi Gunturu, Junlong Gao
  • Patent number: 11182250
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for resynchronizing data in a storage system. One of the methods includes determining that a particular disk of a capacity object of a storage system is out-of-sync and that a primary disk is unavailable; and for each segment of one or more segments of the capacity object: generating a first version of the column of the segment corresponding to the unavailable primary disk; determining whether the data integrity token in the column summary of the generated first version is valid; and in response to determining that the data integrity token is valid, resynchronizing the column of the segment corresponding to the particular disk using i) the primary columns of the segment corresponding to each available primary disk and ii) the first version of the column of the segment corresponding to the unavailable primary disk.
    Type: Grant
    Filed: July 2, 2020
    Date of Patent: November 23, 2021
    Assignee: VMware, Inc.
    Inventors: Enning Xiang, Wenguang Wang, Vamsi Gunturu
  • Publication number: 20210349790
    Abstract: Methods, systems, and apparatus, including computer programs encoded on computer storage media, for resynchronizing data in a storage system. One of the methods includes determining that a particular primary disk of a capacity object of a storage system has failed, wherein the capacity comprises a plurality of segments, and wherein the each segment comprises: a plurality of primary columns each corresponding to a respective primary disk of the capacity object, and a plurality of parity columns each corresponding to a respective parity disk of the capacity object; and resynchronizing, for each segment of one or more segments of the capacity object, the primary column of the segment corresponding to the particular primary disk using i) the primary columns of the segment corresponding to each other primary disk of the capacity object, ii) one or more parity columns of the segment, and iii) the column summaries of the segment.
    Type: Application
    Filed: May 8, 2020
    Publication date: November 11, 2021
    Inventors: Wenguang WANG, Enning XIANG, Vamsi GUNTURU, Eric KNAUFT, Pascal RENAULD