Patents by Inventor Sazzala Reddy

Sazzala Reddy 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: 11307765
    Abstract: Data in a storage system is deduplicated after receiving from at least one writing entity requests for a plurality of write operations for a corresponding plurality of data blocks in a storage object. The received blocks are buffered and sorted in order and a sequence of clumps is created from the buffered blocks, where each clump comprises a grouping of at least one of the sorted, buffered blocks. A boundary is determined between at least one pair of clumps based at least in part on the content of at least one of the buffered blocks, and it is then determined whether at least one of the clumps is a duplicate of a previously stored clump.
    Type: Grant
    Filed: March 18, 2019
    Date of Patent: April 19, 2022
    Assignee: VMware, Inc.
    Inventors: R. Hugo Patterson, III, Sazzala Reddy, Vijayan Prabhakaran, Garrett Smith, Lakshmi Narayanan Bairavasundaram, Ganesh Venkitachalam
  • Patent number: 11182188
    Abstract: Techniques for replicating virtual machine data is provided. A plurality of compute nodes running on a primary cluster determine the amount of virtual machine data cached within each compute node. Based on the amount of virtual machine data for a particular virtual machine, a particular compute node is assigned to replicate the data to a secondary cluster. The amount of particular virtual machine data copied to the secondary cluster is based on updated virtual machine data that belongs to a particular state of the virtual machine. The destination of the particular virtual machine data is based on available cache space and prior replication statistics for target compute nodes on the secondary cluster.
    Type: Grant
    Filed: April 18, 2018
    Date of Patent: November 23, 2021
    Assignee: VMware, Inc.
    Inventors: Boris Weissman, Sazzala Reddy
  • Patent number: 10915408
    Abstract: Techniques for scheduling replication events may be based upon establishing a plurality of policy groups. Each policy group has a replication schedule that defines when to initiate replication events and a membership selection pattern used to determine which virtual machines belong to which policy group. The policy groups may contain a first policy group and a second policy group, where each policy group has a unique replication schedule and a unique selection pattern. The system may assign a first set of virtual machines to the first policy group based upon the first selection pattern. A second set of virtual machines may be assigned to a second policy group based upon the second selection pattern. Each of the virtual machines in the first policy group may be assigned a first replication schedule and each of the virtual machines in the second policy group may be assigned a second replication schedule.
    Type: Grant
    Filed: April 24, 2018
    Date of Patent: February 9, 2021
    Assignee: VMware, Inc.
    Inventors: Boris Weissman, Sazzala Reddy, R. Hugo Patterson, III
  • Patent number: 10877940
    Abstract: A data storage system includes a plurality of hosts, each of which includes at least one processor and communicates over a network with a plurality of storage nodes, at least one of which has at least one storage device, at least one storage controller, and at least one non-volatile memory. At least one process within a host issues data storage read/write requests. At least one of the hosts has a cache for caching data stored in at least one of the plurality of storage nodes. The host writes data corresponding to a write request to at least one remote non-volatile memory and carries out at least one storage processing function; data in the written-to node may then be made available for subsequent reading by a different one of the hosts. Examples of the storage processing function include compression, ECC computation, deduplicating, garbage collection, write logging, reconstruction, rebalancing, and scrubbing.
    Type: Grant
    Filed: January 7, 2019
    Date of Patent: December 29, 2020
    Assignee: VMware, Inc.
    Inventors: R. Hugo Patterson, III, Brian Biles, Boris Weissman, Sazzala Reddy, Ganesh Venkitachalam
  • Patent number: 10810161
    Abstract: Exemplary methods, apparatuses, and systems maintain a plurality of summary data structures corresponding to a plurality of logical file system namespaces representing a plurality of hierarchies of one or more directories having one or more files, each file being stored in the storage system as a plurality of segments in a deduplicated manner. In response to a request to estimate a storage usage by a first of the file system namespace, identify a first of the summary data structures corresponding to the first file system namespace, wherein the first summary data structure stores information summarizing deduplicated segments referenced by one or more files of the first file system namespace. Estimate the storage usage of the first file system namespace based on the first summary data structure and a global summary data structure, wherein the global summary data structure stores information summarizing deduplicated segments referenced by all of the file system namespaces.
    Type: Grant
    Filed: February 18, 2014
    Date of Patent: October 20, 2020
    Assignee: EMC IP HOLDING COMPANY LLC
    Inventors: Srikant Varadan, Dheer Moghe, Sazzala Reddy
  • Publication number: 20190324865
    Abstract: Techniques for scheduling replication events may be based upon establishing a plurality of policy groups. Each policy group has a replication schedule that defines when to initiate replication events and a membership selection pattern used to determine which virtual machines belong to which policy group. The policy groups may contain a first policy group and a second policy group, where each policy group has a unique replication schedule and a unique selection pattern. The system may assign a first set of virtual machines to the first policy group based upon the first selection pattern. A second set of virtual machines may be assigned to a second policy group based upon the second selection pattern. Each of the virtual machines in the first policy group may be assigned a first replication schedule and each of the virtual machines in the second policy group may be assigned a second replication schedule.
    Type: Application
    Filed: April 24, 2018
    Publication date: October 24, 2019
    Inventors: Boris Weissman, Sazzala Reddy, R. Hugo Patterson, III
  • Publication number: 20190324785
    Abstract: Techniques for replicating virtual machine data is provided. A plurality of compute nodes running on a primary cluster determine the amount of virtual machine data cached within each compute node. Based on the amount of virtual machine data for a particular virtual machine, a particular compute node is assigned to replicate the data to a secondary cluster. The amount of particular virtual machine data copied to the secondary cluster is based on updated virtual machine data that belongs to a particular state of the virtual machine. The destination of the particular virtual machine data is based on available cache space and prior replication statistics for target compute nodes on the secondary cluster.
    Type: Application
    Filed: April 18, 2018
    Publication date: October 24, 2019
    Inventors: Boris Weissman, Sazzala Reddy
  • Publication number: 20190250818
    Abstract: Data in a storage system is deduplicated after receiving from at least one writing entity requests for a plurality of write operations for a corresponding plurality of data blocks in a storage object. The received blocks are buffered and sorted in order and a sequence of clumps is created from the buffered blocks, where each clump comprises a grouping of at least one of the sorted, buffered blocks. A boundary is determined between at least one pair of clumps based at least in part on the content of at least one of the buffered blocks, and it is then determined whether at least one of the clumps is a duplicate of a previously stored clump.
    Type: Application
    Filed: March 18, 2019
    Publication date: August 15, 2019
    Inventors: R. Hugo Patterson, III, Sazzala Reddy, Vijayan Prabhakaran, Garrett Smith, Lakshmi Narayanan Bairavasundaram, Ganesh Venkitachalam
  • Publication number: 20190138504
    Abstract: A data storage system includes a plurality of hosts, each of which includes at least one processor and communicates over a network with a plurality of storage nodes, at least one of which has at least one storage device, at least one storage controller, and at least one non-volatile memory. At least one process within a host issues data storage read/write requests. At least one of the hosts has a cache for caching data stored in at least one of the plurality of storage nodes. The host writes data corresponding to a write request to at least one remote non-volatile memory and carries out at least one storage processing function; data in the written-to node may then be made available for subsequent reading by a different one of the hosts. Examples of the storage processing function include compression, ECC computation, deduplicating, garbage collection, write logging, reconstruction, rebalancing, and scrubbing.
    Type: Application
    Filed: January 7, 2019
    Publication date: May 9, 2019
    Inventors: R. Hugo PATTERSON, III, Brian BILES, Boris WEISSMAN, Sazzala REDDY, Ganesh VENKITACHALAM
  • Patent number: 10235044
    Abstract: Data in a storage system is deduplicated after receiving from at least one writing entity requests for a plurality of write operations for a corresponding plurality of data blocks in a storage object. The received blocks are buffered and sorted in order and a sequence of clumps is created from the buffered blocks, where each clump comprises a grouping of at least one of the sorted, buffered blocks. A boundary is determined between at least one pair of clumps based at least in part on the content of at least one of the buffered blocks, and it is then determined whether at least one of the clumps is a duplicate of a previously stored clump.
    Type: Grant
    Filed: June 9, 2016
    Date of Patent: March 19, 2019
    Assignee: Datrium, Inc.
    Inventors: R. Hugo Patterson, III, Sazzala Reddy, Vijayan Prabhakaran, Garrett Smith, Lakshmi Narayanan Bairavasundaram, Ganesh Venkitachalam
  • Patent number: 10180948
    Abstract: A data storage system includes a plurality of hosts, each of which includes at least one processor and communicates over a network with a plurality of storage nodes, at least one of which has at least one storage device, at least one storage controller, and at least one non-volatile memory. At least one process within a host issues data storage read/write requests. At least one of the hosts has a cache for caching data stored in at least one of the storage nodes. The host writes data corresponding to a write request to at least one remote non-volatile memory and carries out at least one storage processing function; data in the written-to node may then be made available for subsequent reading by a different one of the hosts. Examples of the storage processing function include compression, ECC computation, deduplicating, garbage collection, write logging, reconstruction, rebalancing, and scrubbing.
    Type: Grant
    Filed: May 12, 2015
    Date of Patent: January 15, 2019
    Assignee: DATRIUM, INC.
    Inventors: R. Hugo Patterson, III, Brian Biles, Boris Weissman, Sazzala Reddy, Ganesh Venkitachalam
  • Patent number: 10140136
    Abstract: Embodiments of a distributed virtual array data storage system and method are disclosed. Storage nodes made up of relatively unsophisticated disks with associated processors are scalable to store very large amounts of data. The storage nodes communicate with servers directly over a network through, for example, an Ethernet connection. Control of the storage nodes and access to the storage nodes is handled entirely on the server side of the system by distributed virtual array (DVA) software running on the server side and employing a particular protocol over the standard network connection. In an embodiment, server-side virtual machine (VM) hosts host application VMs that are associated with vDisks. The DVA software distributes data for the vDisk over the storage nodes. In the case of failure of one or more of the storage nodes, the DVA software reconstructs the data, for example by reading redundant data from surviving storage nodes.
    Type: Grant
    Filed: November 7, 2013
    Date of Patent: November 27, 2018
    Assignee: Datrium, linc.
    Inventors: R. Hugo Patterson, Brian Biles, Boris Weissman, Ganesh Venkitachalam, Sazzala Reddy
  • Patent number: 9965203
    Abstract: A distributed storage system that dispatches an input/output request is described. In an exemplary embodiment, a storage controller client receives the input/output request, wherein the distributed storage system includes the storage controller client, a plurality of storage controller servers, a plurality of virtual nodes distributed among a plurality of physical nodes, and each of the plurality of physical nodes is hosted on one of the plurality of storage controller servers. The storage controller client further computes a target virtual node for the input/output request, where the target virtual node is one of the plurality of virtual nodes. Using the computed target virtual node, the storage controller client determines a target physical node that corresponds to the target virtual node, where the target physical node is one of the plurality of physical nodes.
    Type: Grant
    Filed: May 31, 2016
    Date of Patent: May 8, 2018
    Inventors: Sandip Agarwala, Abhishek Chaturvedi, Shravan Gaonkar, Mallikarjunan Mahalingam, Sazzala Reddy, Smit Shah, Faraz Shaikh, Praveen Vegulla, Krishna Yadappanavar, Jeffrey A. Zabarsky
  • Publication number: 20170031994
    Abstract: Data in a storage system is deduplicated after receiving from at least one writing entity requests for a plurality of write operations for a corresponding plurality of data blocks in a storage object. The received blocks are buffered and sorted in order and a sequence of clumps is created from the buffered blocks, where each clump comprises a grouping of at least one of the sorted, buffered blocks. A boundary is determined between at least one pair of clumps based at least in part on the content of at least one of the buffered blocks, and it is then determined whether at least one of the clumps is a duplicate of a previously stored clump.
    Type: Application
    Filed: June 9, 2016
    Publication date: February 2, 2017
    Applicant: Datrium, Inc.
    Inventors: R. Hugo PATTERSON, III, Sazzala REDDY, Vijayan PRABHAKARAN, Garrett SMITH, Lakshmi Narayanan BAIRAVASUNDARAM, Ganesh VENKITACHALAM
  • Patent number: 9521198
    Abstract: A distributed storage system that dispatches an input/output request is described. In an exemplary embodiment, a storage controller client receives the input/output request, wherein the distributed storage system includes the storage controller client, a plurality of storage controller servers, a plurality of virtual nodes distributed among a plurality of physical nodes, and each of the plurality of physical nodes is hosted on one of the plurality of storage controller servers. The storage controller client further computes a target virtual node for the input/output request, where the target virtual node is one of the plurality of virtual nodes. Using the computed target virtual node, the storage controller client determines a target physical node that corresponds to the target virtual node, where the target physical node is one of the plurality of physical nodes.
    Type: Grant
    Filed: December 19, 2013
    Date of Patent: December 13, 2016
    Assignee: Springpath, Inc.
    Inventors: Sandip Agarwala, Abhishek Chaturvedi, Shravan Gaonkar, Mallikarjunan Mahalingam, Sazzala Reddy, Smit Shah, Faraz Shaikh, Praveen Vegulla, Krishna Yadappanavar, Jeffrey A. Zabarsky
  • Patent number: 9183216
    Abstract: Cluster storage is disclosed. A data stream or a data block is received. The data stream or the data block is broken into segments. For each segment, a cluster node is selected, and a portion of the segment smaller than the segment is identified that is a duplicate of a portion of a segment already managed by the cluster node.
    Type: Grant
    Filed: February 25, 2014
    Date of Patent: November 10, 2015
    Assignee: EMC Corporation
    Inventors: Sazzala Reddy, Umesh Maheshwari, Edward K. Lee, R. Hugo Patterson
  • Publication number: 20150248402
    Abstract: A data storage system includes a plurality of hosts, each of which includes at least one processor and communicates over a network with a plurality of storage nodes, at least one of which has at least one storage device, at least one storage controller, and at least one non-volatile memory. At least one process within a host issues data storage read/write requests. At least one of the hosts has a cache for caching data stored in at least one of the storage nodes. The host writes data corresponding to a write request to at least one remote non-volatile memory and carries out at least one storage processing function; data in the written-to node may then be made available for subsequent reading by a different one of the hosts. Examples of the storage processing function include compression, ECC computation, deduplicating, garbage collection, write logging, reconstruction, rebalancing, and scrubbing.
    Type: Application
    Filed: May 12, 2015
    Publication date: September 3, 2015
    Applicant: DATRIUM, INC.
    Inventors: R. Hugo PATTERSON, III, Brian BILES, Boris WEISSMAN, Sazzala REDDY, Ganesh VENKITACHALAM
  • Publication number: 20140244691
    Abstract: Cluster storage is disclosed. A data stream or a data block is received. The data stream or the data block is broken into segments. For each segment, a cluster node is selected, and a portion of the segment smaller than the segment is identified that is a duplicate of a portion of a segment already managed by the cluster node.
    Type: Application
    Filed: February 25, 2014
    Publication date: August 28, 2014
    Applicant: EMC Corporation
    Inventors: Sazzala Reddy, Umesh Maheshwari, Edward K. Lee, R. Hugo Patterson
  • Patent number: 8700578
    Abstract: Exemplary methods, apparatuses, and systems maintain a plurality of summary data structures corresponding to a plurality of logical file system namespaces representing a plurality of hierarchies of one or more directories having one or more files, each file being stored in the storage system as a plurality of segments in a deduplicated manner. In response to a request to estimate a storage usage by a first of the file system namespace, identify a first of the summary data structures corresponding to the first file system namespace, wherein the first summary data structure stores information summarizing deduplicated segments referenced by one or more files of the first file system namespace. Estimate the storage usage of the first file system namespace based on the first summary data structure and a global summary data structure, wherein the global summary data structure stores information summarizing deduplicated segments referenced by all of the file system namespaces.
    Type: Grant
    Filed: September 27, 2012
    Date of Patent: April 15, 2014
    Assignee: EMC Corporation
    Inventors: Srikant Varadan, Dheer Moghe, Sazzala Reddy
  • Patent number: 8694554
    Abstract: Cluster storage is disclosed. A data stream or a data block is received. The data stream or the data block is broken into segments. For each segment, a cluster node is selected, and a portion of the segment smaller than the segment is identified that is a duplicate of a portion of a segment already managed by the cluster node.
    Type: Grant
    Filed: July 8, 2011
    Date of Patent: April 8, 2014
    Assignee: EMC Corporation
    Inventors: Sazzala Reddy, Umesh Maheshwari, Edward K. Lee, R. Hugo Patterson