Patents by Inventor Narayan Venkat
Narayan Venkat 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: 10637923Abstract: Congestion aware load balancing for distributed storage may be provided. First, a read request for data may be received. The data may have redundancy through coding or through copying. Then it may be determined which K of M possible storage nodes to direct the received read request. K and M may be integers and M may be greater than K. In response to determining which K of M possible storage nodes to direct the received read request, the received read request may be copied into K read requests respectively corresponding to the determined K of M possible storage nodes. The copied K read requests may then be transmitted to the determined respective K storage nodes. And, in response to transmitting the copied K read requests, a client may receive data replies from each of the determined respective K storage nodes.Type: GrantFiled: May 25, 2016Date of Patent: April 28, 2020Assignee: Cisco Technology, Inc.Inventors: Joshua Gahm, Narayan Venkat, David R. Oran
-
Patent number: 10140172Abstract: In an example, there is disclosed a computing apparatus, having one or more logic elements, including at least one hardware logic element, comprising a network-aware data repair engine to compute a feasible repair log for n fragments of an original data structure, comprising: receiving a predictive failure scenario; identifying at least one repair ?i for the failure scenario; determining that ?i is feasible; and logging ?i to a feasible repair log. When a node failure occurs, a network cost may be computed for each repair in the feasible repair log, and an optimal repair may be selected.Type: GrantFiled: August 31, 2016Date of Patent: November 27, 2018Assignee: CISCO TECHNOLOGY, INC.Inventors: Marton Akos Sipos, Joshua Gahm, Narayan Venkat
-
Patent number: 10031806Abstract: A controller device is configured to communicate with storage nodes of a distributed storage system (DSS) in which erasure codes are used to encode source data onto the storage nodes and ranks of matrices containing coding coefficients associated with the erasure codes indicate whether repairs of failed storage nodes of the DSS are feasible. A decomposition structure is generated to be used as a guide for transforming the matrices to upper triangle form (UTF) for use in computing the ranks of the matrices. While the DSS is operating to perform repairs of the failed storage nodes, as part of determining feasible repair strategies that will preserve subsequent repairs of failed storage nodes, the ranks of the matrices are computed by transforming the matrices to UTF using operations on the submatrices according to the decomposition structure.Type: GrantFiled: November 1, 2016Date of Patent: July 24, 2018Assignee: Cisco Technology, Inc.Inventors: Márton Ákos Sipos, Narayan Venkat, Joshua Bernard Gahm, John George Apostolopoulos
-
Publication number: 20180121286Abstract: A controller device is configured to communicate with storage nodes of a distributed storage system (DSS) in which erasure codes are used to encode source data onto the storage nodes and ranks of matrices containing coding coefficients associated with the erasure codes indicate whether repairs of failed storage nodes of the DSS are feasible. A decomposition structure is generated to be used as a guide for transforming the matrices to upper triangle form (UTF) for use in computing the ranks of the matrices. While the DSS is operating to perform repairs of the failed storage nodes, as part of determining feasible repair strategies that will preserve subsequent repairs of failed storage nodes, the ranks of the matrices are computed by transforming the matrices to UTF using operations on the submatrices according to the decomposition structure.Type: ApplicationFiled: November 1, 2016Publication date: May 3, 2018Inventors: Márton Ákos Sipos, Narayan Venkat, Joshua Bernard Gahm, John George Apostolopoulos
-
Publication number: 20170346897Abstract: Congestion aware load balancing for distributed storage may be provided. First, a read request for data may be received. The data may have redundancy through coding or through copying. Then it may be determined which K of M possible storage nodes to direct the received read request. K and M may be integers and M may be greater than K. In response to determining which K of M possible storage nodes to direct the received read request, the received read request may be copied into K read requests respectively corresponding to the determined K of M possible storage nodes. The copied K read requests may then be transmitted to the determined respective K storage nodes. And, in response to transmitting the copied K read requests, a client may receive data replies from each of the determined respective K storage nodes.Type: ApplicationFiled: May 25, 2016Publication date: November 30, 2017Inventors: Joshua Gahm, Narayan Venkat, David R. Oran
-
Publication number: 20170337097Abstract: In an example, there is disclosed a computing apparatus, having one or more logic elements, including at least one hardware logic element, comprising a network-aware data repair engine to compute a feasible repair log for n fragments of an original data structure, comprising: receiving a predictive failure scenario; identifying at least one repair ?i for the failure scenario; determining that ?i is feasible; and logging ?i to a feasible repair log. When a node failure occurs, a network cost may be computed for each repair in the feasible repair log, and an optimal repair may be selected.Type: ApplicationFiled: August 31, 2016Publication date: November 23, 2017Applicant: CISCO TECHNOLOGY, INC.Inventors: Marton Akos Sipos, Joshua Gahm, Narayan Venkat
-
Patent number: 9729660Abstract: Method and system for detecting migration of a virtual machine are provided. The method detects that a first identifier for identifying a virtual machine and a second identifier identifying a source computing system hosting the virtual machine that accesses a storage space via a logical object have changed, when the virtual machine is migrated from the source computing system to a destination computing system. Thereafter, a storage device at the destination computing system is initialized to operate as a caching device for the migrated virtual machine.Type: GrantFiled: July 24, 2013Date of Patent: August 8, 2017Assignee: NetApp, Inc.Inventors: Vivek Venkatesan, Narayan Venkat, Frederick Knight, Kenny Speer
-
Patent number: 9514054Abstract: A method and system of persistent cache invalidation ensures cache durability. A storage filter driver of a storage input/output (I/O) stack of a server may be used to capture (i.e., track) write requests made to storage devices prior to the persistent cache becoming operational. Entries in the cache having overlapping address ranges with the tracked write requests may be invalidated before the cache is deemed operational. In this manner, the cache remains consistent with the backing store across the administrative actions or failure event (albeit with less valid entries). Notably, the filter driver tracks (i.e., captures) metadata of the write request (i.e., address range and size of the request) to support invalidation of matching cache entries. As such, the filter driver need not store (record) data associated with the write request.Type: GrantFiled: July 8, 2014Date of Patent: December 6, 2016Assignee: NetApp, Inc.Inventors: Kenny Speer, Narayan Venkat, David Lively
-
Patent number: 9313271Abstract: Described herein is a system and method for maintaining cache coherency. The system and method may maintain coherency for a cache memory that is coupled to a plurality of primary storage devices. The system and method may write data to the cache memory and associate the data with a cache generation identification (ID). A different cache generation ID may be associated with each new set of data that is written to the cache memory. The cache generation ID may be written to the primary storage devices. A backup restore operation may be performed on one of the primary storage devices and a backup restore notification may be received. In response to the notification, the system and method may compare the cache generation ID with the generation ID stored on the restored primary storage device and invalidate data stored on the cache memory for the restored primary storage device.Type: GrantFiled: May 5, 2015Date of Patent: April 12, 2016Assignee: NetApp, Inc.Inventors: Narayan Venkat, David Lively, Kenny Speer
-
Publication number: 20160011984Abstract: A method and system of persistent cache invalidation ensures cache durability. A storage filter driver of a storage input/output (I/O) stack of a server may be used to capture (i.e., track) write requests made to storage devices prior to the persistent cache becoming operational. Entries in the cache having overlapping address ranges with the tracked write requests may be invalidated before the cache is deemed operational. In this manner, the cache remains consistent with the backing store across the administrative actions or failure event (albeit with less valid entries). Notably, the filter driver tracks (i.e., captures) metadata of the write request (i.e., address range and size of the request) to support invalidation of matching cache entries. As such, the filter driver need not store (record) data associated with the write request.Type: ApplicationFiled: July 8, 2014Publication date: January 14, 2016Inventors: Kenny Speer, Narayan Venkat, David Lively
-
Patent number: 9152447Abstract: A system and method of emulating a shared storage device includes determining a storage unit identifier (SUID) associated with a first local storage device in a first node of a distributed computing system, updating a first path handler to intercept storage requests including the SUID and being made on the first node and forwarding the storage requests to drivers for an emulated shared storage device, associating a second local storage device in a second node of the distributed computing system with the SUID, updating a second path handler to intercept storage requests including the SUID and being made on the second node and forwarding the storage requests to the drivers for the emulated shared storage device, and intercepting storage requests including the SUID and being made on the second node and forwarding the storage requests to the drivers for the emulated shared storage device.Type: GrantFiled: July 23, 2013Date of Patent: October 6, 2015Assignee: NetApp, Inc.Inventors: Narayan Venkat, Vivek Venkatesan
-
Publication number: 20150237135Abstract: Described herein is a system and method for maintaining cache coherency. The system and method may maintain coherency for a cache memory that is coupled to a plurality of primary storage devices. The system and method may write data to the cache memory and associate the data with a cache generation identification (ID). A different cache generation ID may be associated with each new set of data that is written to the cache memory. The cache generation ID may be written to the primary storage devices. A backup restore operation may be performed on one of the primary storage devices and a backup restore notification may be received. In response to the notification, the system and method may compare the cache generation ID with the generation ID stored on the restored primary storage device and invalidate data stored on the cache memory for the restored primary storage device.Type: ApplicationFiled: May 5, 2015Publication date: August 20, 2015Applicant: NETAPP, INC.Inventors: Narayan Venkat, David Lively, Kenny Speer
-
Patent number: 9026736Abstract: Described herein is a system and method for maintaining cache coherency. The system and method may maintain coherency for a cache memory that is coupled to a plurality of primary storage devices. The system and method may write data to the cache memory and associate the data with a cache generation identification (ID). A different cache generation ID may be associated with each new set of data that is written to the cache memory. The cache generation ID may be written to the primary storage devices. A backup restore operation may be performed on one of the primary storage devices and a backup restore notification may be received. In response to the notification, the system and method may compare the cache generation ID with the generation ID stored on the restored primary storage device and invalidate data stored on the cache memory for the restored primary storage device.Type: GrantFiled: August 6, 2012Date of Patent: May 5, 2015Assignee: NetApp, Inc.Inventors: Narayan Venkat, David Franklin Lively, Kenny W. Speer
-
Publication number: 20150033220Abstract: A system and method of emulating a shared storage device includes determining a storage unit identifier (SUID) associated with a first local storage device in a first node of a distributed computing system, updating a first path handler to intercept storage requests including the SUID and being made on the first node and forwarding the storage requests to drivers for an emulated shared storage device, associating a second local storage device in a second node of the distributed computing system with the SUID, updating a second path handler to intercept storage requests including the SUID and being made on the second node and forwarding the storage requests to the drivers for the emulated shared storage device, and intercepting storage requests including the SUID and being made on the second node and forwarding the storage requests to the drivers for the emulated shared storage device.Type: ApplicationFiled: July 23, 2013Publication date: January 29, 2015Applicant: NetApp, Inc.Inventors: Narayan Venkat, Vivek Venkatesan
-
Publication number: 20150032836Abstract: Method and system for detecting migration of a virtual machine are provided. The method detects that a first identifier for identifying a virtual machine and a second identifier identifying a source computing system hosting the virtual machine that accesses a storage space via a logical object have changed, when the virtual machine is migrated from the source computing system to a destination computing system. Thereafter, a storage device at the destination computing system is initialized to operate as a caching device for the migrated virtual machine.Type: ApplicationFiled: July 24, 2013Publication date: January 29, 2015Applicant: NETAPP, INC.Inventors: Vivek Venkatesan, Narayan Venkat, Frederick Knight, Kenny Speer