Patents by Inventor Krishna Yadappanavar

Krishna Yadappanavar 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: 10956365
    Abstract: Presented herein are methodologies for implementing erasure coding in a distributed log structured storage system. A method includes receiving a write request for first data from a file system, selecting a physical sector on a selected storage device in an array of storage devices on which to store the first data, assigning a key to the physical sector, storing the key and an indication of the physical sector in a key-to-physical medium map, erasure coding the data, including generating parity data associated with the first data, writing the first data and the parity data as a data stripe to each storage device in the array of storage devices and, in response to receiving the write request, sending the key to the file system. Read, update, and delete procedures in the context of a log structured framework are also described.
    Type: Grant
    Filed: July 9, 2018
    Date of Patent: March 23, 2021
    Assignee: CISCO TECHNOLOGY, INC.
    Inventors: Faraz Ahmed Shaikh, Mayuresh Vartak, Jyothir Ramanan, Ashwin Pednekar, Mallikarjunan Mahalingam, Swapnil Pimpale, Krishna Yadappanavar
  • Patent number: 10642689
    Abstract: Presented herein are methodologies for implementing erasure coding in a distributed log structured storage system. A method includes receiving a write request for first data from a file system, selecting a physical sector on a selected storage device in an array of storage devices on which to store the first data, assigning a key to the physical sector, storing the key and an indication of the physical sector in a key-to-physical medium map, erasure coding the data, including generating parity data associated with the first data, writing the first data and the parity data as a data stripe to each storage device in the array of storage devices and, in response to receiving the write request, sending the key to the file system. Read, update, and delete procedures in the context of a log structured framework are also described.
    Type: Grant
    Filed: July 9, 2018
    Date of Patent: May 5, 2020
    Assignee: Cisco Technology, Inc.
    Inventors: Faraz Ahmed Shaikh, Swapnil Pimpale, Jyothir Ramanan, Ashwin Pednekar, Mayuresh Vartak, Mallikarjunan Mahalingam, Krishna Yadappanavar
  • Publication number: 20200012729
    Abstract: Presented herein are methodologies for implementing erasure coding in a distributed log structured storage system. A method includes receiving a write request for first data from a file system, selecting a physical sector on a selected storage device in an array of storage devices on which to store the first data, assigning a key to the physical sector, storing the key and an indication of the physical sector in a key-to-physical medium map, erasure coding the data, including generating parity data associated with the first data, writing the first data and the parity data as a data stripe to each storage device in the array of storage devices and, in response to receiving the write request, sending the key to the file system. Read, update, and delete procedures in the context of a log structured framework are also described.
    Type: Application
    Filed: July 9, 2018
    Publication date: January 9, 2020
    Inventors: Faraz Ahmed Shaikh, Mayuresh Vartak, Jyothir Ramanan, Ashwin Pednekar, Mallikarjunan Mahalingam, Swapnil Pimpale, Krishna Yadappanavar
  • Publication number: 20200012564
    Abstract: Presented herein are methodologies for implementing erasure coding in a distributed log structured storage system. A method includes receiving a write request for first data from a file system, selecting a physical sector on a selected storage device in an array of storage devices on which to store the first data, assigning a key to the physical sector, storing the key and an indication of the physical sector in a key-to-physical medium map, erasure coding the data, including generating parity data associated with the first data, writing the first data and the parity data as a data stripe to each storage device in the array of storage devices and, in response to receiving the write request, sending the key to the file system. Read, update, and delete procedures in the context of a log structured framework are also described.
    Type: Application
    Filed: July 9, 2018
    Publication date: January 9, 2020
    Inventors: Faraz Ahmed Shaikh, Swapnil Pimpale, Jyothir Ramanan, Ashwin Pednekar, Mayuresh Vartak, Mallikarjunan Mahalingam, Krishna Yadappanavar
  • Patent number: 10169169
    Abstract: Creating and using highly available transaction logs in a distributed storage system is described, where the storage controller functions of the distributed storage system are separated from that of distributed storage system storage media. In an exemplary embodiment, a storage controller server receives a transaction entry at a first storage pool of the distributed storage system. The storage controller server further looks up a transaction log to store the transaction entry, where the transaction log is associated with a second storage pool. The storage controller server routes the transaction entry to the second storage pool, wherein the second storage pool stores the transaction entry.
    Type: Grant
    Filed: May 8, 2014
    Date of Patent: January 1, 2019
    Assignee: Cisco Technology, Inc.
    Inventors: Faraz Shaikh, Sandip Agarwala, Abhishek Chaturvedi, Shravan Gaonkar, Mallikarjunan Mahalingam, Smit Shah, Mayuresh Vartak, Praveen Vegulla, Krishna Yadappanavar
  • Patent number: 10019459
    Abstract: A distributed storage system called StorFS that performs distributed data deduplication is described. In an exemplary embodiment, a storage controller server determines if there is duplicative data in a distributed storage system. In this embodiment, the storage controller server determines if an entity is duplicated in the distributed storage system in line with an incoming input/output operation. The storage controller server determines if the entity is duplicated in the distributed storage system by receiving the entity and looking up the entity in a data deduplication table. If the entity exists in the data deduplication table, the storage controller server updates the metadata for the entity to point to the duplicate entity.
    Type: Grant
    Filed: December 19, 2013
    Date of Patent: July 10, 2018
    Inventors: Sandip Agarwala, Shravan Gaonkar, Mallikarjunan Mahalingam, Smit Shah, Faraz Shaikh, Praveen Vegulla, Krishna Yadappanavar
  • 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
  • Patent number: 9747298
    Abstract: Exemplary methods, apparatuses, and systems receive a command to overwrite or delete data stored within an allocated portion of a file system. In response to the command, an entry is added to a first data structure. A write command is received. The portion of the file system added to the first data structure is formatted for reallocation. In performance of the write command, the portion of the file system is reallocated. Portions of the file system are allocated from a second data structure when the second data structure includes a sufficient amount of space to satisfy the write command and from the first data structure when the second data structure does not include a sufficient amount of space. The second data structure includes free portions of the file system that have been formatted for allocation. The first data structure includes free portions that have yet to be formatted.
    Type: Grant
    Filed: May 2, 2014
    Date of Patent: August 29, 2017
    Assignee: VMware, Inc.
    Inventors: Sambasiva Rao Bandarupalli, Krishna Yadappanavar, Anjaneya Prasad Gondi, Kiran Kumar Thota
  • Patent number: 9720619
    Abstract: A distributed snapshot in a distributed storage system is described, where the storage controller functions of the distributed storage system are separated from that of distributed storage system storage media. In an exemplary embodiment, a storage controller server receives a request to create the snapshot in the distributed storage system, where the distributed storage system includes a plurality of virtual nodes and a plurality of physical nodes, and the source object includes a plurality of stripes. The storage controller server further determines a set of virtual nodes from the plurality of virtual nodes, where each of the set of virtual nodes owns one of the plurality of stripes of the source object. For each of the set of virtual nodes, the storage controller server sends a clone request to that virtual node, where the request is to create a snapshot for the stripe hosted by that virtual node.
    Type: Grant
    Filed: December 19, 2013
    Date of Patent: August 1, 2017
    Inventors: Smit Shah, Sandip Agarwala, Mallikarjunan Mahalingam, Faraz Shaikh, Praveen Vegulla, Krishna Yadappanavar
  • Patent number: 9582421
    Abstract: A distributed multi-layer cache in a distributed storage system is described, where the storage controller functions of the distributed storage system are separated from that of distributed storage system storage media. In an exemplary embodiment, a storage controller server determines if an object is in a cache that stores a plurality of objects. In addition, the distributed storage system includes the cache and a distributed object layer for persistently storing the plurality of objects. The cache further includes a de-duplicated cache layer. The storage controller server accesses the object from the cache if the object is in the cache and accesses the object from the distributed object layer if the object is not in the cache.
    Type: Grant
    Filed: December 19, 2013
    Date of Patent: February 28, 2017
    Assignee: Springpath, Inc.
    Inventors: Sandip Agarwala, Shravan Gaonkar, Mallikarjunan Mahalingam, Smit Shah, Faraz Shaikh, Praveen Vegulla, Krishna Yadappanavar
  • 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: 9448927
    Abstract: A distributed garbage collection in a distributed storage system is described, where the storage controller functions of the distributed storage system are separated from that of distributed storage system storage media. In an exemplary embodiment, a storage controller server generates a live object map of live objects stored on the distributed storage system in a plurality of block segments distributed across a plurality of storage controller servers. The storage controller server further scans the plurality of block segments to generate segment summary statistics, where the segment summary statistics indicates the number of live objects stored in the plurality of block segments. In addition, the storage controller server compacts each of the plurality of block segments that have a low utilization based on the segment summary statistics. Furthermore, the live object map is a probabilistic data structure storing a list of valid objects.
    Type: Grant
    Filed: December 19, 2013
    Date of Patent: September 20, 2016
    Assignee: Springpath, Inc.
    Inventors: Sandip Agarwala, Shravan Gaonkar, Mallikarjunan Mahalingam, Smit Shah, Faraz Shaikh, Praveen Vegulla, Krishna Yadappanavar
  • Patent number: 9411623
    Abstract: A method for coalescing IO requests includes maintaining a queue in a layer of an IO stack of a hypervisor, wherein (i) the queue holds IO requests received from an upper layer of the IO stack without forwarding the IO requests down the IO stack, and (ii) the layer of the IO stack resides above a file system layer of the IO stack. The method further includes receiving, at the layer, an IO request from the upper layer or a notification of a completion of certain IO requests previously transmitted by the layer down the IO stack. The method further includes determining whether any IO requests currently held in the queue should be transmitted down the IO stack based upon a condition; and combining any IO requests in the queue into at least one combined IO request to transmit down the IO stack if the condition is satisfied.
    Type: Grant
    Filed: March 22, 2013
    Date of Patent: August 9, 2016
    Assignee: VMware, Inc.
    Inventors: Nicholas Michael Ryan, Krishna Yadappanavar, Prasanna Aithal, Sunil Satnur
  • Patent number: 9378067
    Abstract: A distributed storage system that performs automated load balancing is described. In an exemplary embodiment, a storage controller server determines if there is duplicative data in a distributed storage system. In this embodiment, the storage controller server detects a load balancing event in the distributed storage system, where the distributed storage system includes a plurality of virtual nodes distributed across a plurality of physical nodes. In response to detecting the load balancing event, the storage controller server determines that a current virtual node is to move from a source physical node to a destination physical node. In addition, the current virtual node is one of the plurality of virtual nodes and the source and destination physical nodes are in the plurality of physical nodes. The storage controller server further moves the current virtual node from the source physical node to the destination physical node.
    Type: Grant
    Filed: May 8, 2014
    Date of Patent: June 28, 2016
    Assignee: Springpath, Inc.
    Inventors: Sandip Agarwala, Abhishek Chaturvedi, Shravan Gaonkar, Mallikarjunan Mahalingam, Bhavesh Mehta, Jyothir Ramanan, Smit Shah, Faraz Shaikh, Praveen Vegulla, Krishna Yadappanavar
  • Publication number: 20150317326
    Abstract: Exemplary methods, apparatuses, and systems receive a command to overwrite or delete data stored within an allocated portion of a file system. In response to the command, an entry is added to a first data structure. A write command is received. The portion of the file system added to the first data structure is formatted for reallocation. In performance of the write command, the portion of the file system is reallocated. Portions of the file system are allocated from a second data structure when the second data structure includes a sufficient amount of space to satisfy the write command and from the first data structure when the second data structure does not include a sufficient amount of space. The second data structure includes free portions of the file system that have been formatted for allocation. The first data structure includes free portions that have yet to be formatted.
    Type: Application
    Filed: May 2, 2014
    Publication date: November 5, 2015
    Applicant: VMware, Inc.
    Inventors: Sambasiva Rao Bandarupalli, Krishna Yadappanavar, Anjaneya Prasad Gondi, Kiran Kumar Thota
  • Patent number: 9116726
    Abstract: A virtualized computer system employs a virtual disk. Multiple snapshots of the virtual disk can be created. After a snapshot is created, writes to the virtual disk are captured in delta disks. Two snapshots are consolidated by updating block references in snapshot meta data. Block reference update takes advantage of the fact that blocks for the two snapshot are managed within the same storage container and, therefore, can be moved in the snapshot logical space without incurring data copy operations. Consolidation of delta disks also gracefully handles failures during the consolidation operation and can be restarted anew after the system has recovered from failure.
    Type: Grant
    Filed: September 28, 2012
    Date of Patent: August 25, 2015
    Assignee: VMware, Inc.
    Inventors: Faraz Shaikh, Krishna Yadappanavar, Murali Vilayannur
  • Patent number: 9052937
    Abstract: Input/output operations (IOs) are issued to a storage system using request queues that are each maintained for a resource targeted by the IOs. When an IO is requested, the target resource for the IO is first identified. If a request queue is maintained for the target resource, the IO is added to the request queue and the IO is issued to the storage system as the target resource becomes available. The availability of the target resource may be determined through periodic checks or by monitoring completions of IOs issued out of the request queue.
    Type: Grant
    Filed: February 27, 2013
    Date of Patent: June 9, 2015
    Assignee: VMware, Inc.
    Inventors: Krishna Yadappanavar, Murali Vilayannur, Faraz Shaikh
  • Patent number: 9038066
    Abstract: A virtualized computer system employs a virtual disk with a space efficient (SE) format to store data for virtual machines running therein. Data within a virtual disk with a SE format is stored in a grain, where multiple grains are included in a storage block. Writes to a grain within shared storage block in a virtual disk with an SE format are serviced by allocating a new grain and storing the write data to the new grain. Metadata associated with the client that transmitted the write request to the virtual disk is then updated to point to the new grain instead of the grain within the shared storage block.
    Type: Grant
    Filed: September 28, 2012
    Date of Patent: May 19, 2015
    Assignee: VMware, Inc.
    Inventors: Krishna Yadappanavar, Faraz Shaikh, Murali Vilayannur
  • Patent number: 8954665
    Abstract: Systems and methods for tracking changes and performing backups to a storage device are provided. For virtual disks of a virtual machine, changes are tracked from outside the virtual machine in the kernel of a virtualization layer. The changes can be tracked in a lightweight fashion with a bitmap, with a finer granularity stored and tracked at intermittent intervals in persistent storage. Multiple backup applications can be allowed to accurately and efficiently backup a storage device. Each backup application can determine which block of the storage device has been updated since the last backup of a respective application. This change log is efficiently stored as a counter value for each block, where the counter is incremented when a backup is performed. The change log can be maintained with little impact on I/O by using a coarse bitmap to update the finer grained change log.
    Type: Grant
    Filed: May 14, 2013
    Date of Patent: February 10, 2015
    Assignee: VMware, Inc.
    Inventors: Christian Czezatke, Krishna Yadappanavar, Andrew Tucker
  • Patent number: 8874859
    Abstract: A virtualized computer system employs a virtual disk with a space efficient (SE) format to store data for virtual machines running therein. The SE format allows for defragmentation at a fine-grained level, where unused, stale, and zero blocks are moved to the end of the virtual disk so that the virtual disk may be truncated and space reclaimed by the underlying storage system as part of a special defragmentation process.
    Type: Grant
    Filed: December 22, 2010
    Date of Patent: October 28, 2014
    Assignee: VMware, Inc.
    Inventors: Murali Vilayannur, Krishna Yadappanavar, Faraz Shaikh, Manjunath Rajashekhar, Satyam B. Vaghani