Patents Assigned to NetApp, Inc.
  • Patent number: 11188500
    Abstract: With a forever incremental snapshot configuration and a typical caching policy (e.g., least recently used), a storage appliance may evict stable data blocks of an older snapshot, perhaps unchanged data blocks of the snapshot baseline. If stable data blocks have been evicted, restore of a recent snapshot will suffer the time penalty of downloading the stable blocks for restoring the recent snapshot. Creating synthetic baseline snapshots and refreshing eviction data of stable data blocks can avoid eviction of stable data blocks and reduce the risk of violating a recovery time objective.
    Type: Grant
    Filed: June 10, 2019
    Date of Patent: November 30, 2021
    Assignee: NetApp Inc.
    Inventors: Ajay Pratap Singh Kushwah, Ling Zheng, Sharad Jain
  • Patent number: 11188520
    Abstract: Techniques are provided for storage tier verification checks. A determination is made that a mount operation of an aggregate of a set of volumes stored within a multi-tier storage environment has completed. A first metafile and a second metafile are maintained to track information related to the storage of objects of a volume of the aggregate within a remote object store that is a tier of the multi-tier storage environment. A distributed verification is performed between the first metafile and the second metafile to identify an inconsistency. Accordingly, the first metafile and the second metafile are reconciled to address the inconsistency so that storage information within the first metafile and the second metafile are consistent.
    Type: Grant
    Filed: March 2, 2020
    Date of Patent: November 30, 2021
    Assignee: NetApp Inc.
    Inventors: Kayuri Hasmukh Patel, Qinghua Zheng, Sumith Makam, Kevin Daniel Varghese, Yuvraj Ajaykumar Patel, Sateesh Kumar Pola, Sharmi Suresh Kumar Nair, Mihir Gorecha
  • Patent number: 11188413
    Abstract: Methods and systems for networked systems are provided. A reinforcement learning (RL) agent is deployed during runtime of a networked system having at least a first component and a second component. The RL agent detects a first degradation signal in response to an error associated with the first component and a second degradation signal from the second component, the second degradation signal generated in response to the error. The RL agent identifies from a learned data structure an action for fixing degradation, at both the first component and the second component; and continues to update the learned data structure, upon successful and unsuccessful attempts to fix degradation associated with the first component and the second component.
    Type: Grant
    Filed: September 3, 2020
    Date of Patent: November 30, 2021
    Assignee: NetApp, Inc.
    Inventor: Kausik Ghatak
  • Patent number: 11188266
    Abstract: Techniques are provided for implementing write ordering for persistent memory. A set of actions are identified for commitment to persistent memory of a node for executing an operation upon the persistent memory. An episode is created to comprise a first subset of actions of the set of actions that can be committed to the persistent memory in any order with respect to one another such that a consistent state of the persistent memory can be reconstructed in the event of a crash of the node during execution of the operation. The first subset of actions within the episode are committed to the persistent memory and further execution of the operation is blocked until the episode completes.
    Type: Grant
    Filed: April 20, 2020
    Date of Patent: November 30, 2021
    Assignee: NetApp Inc.
    Inventors: Ram Kesavan, Matthew Fontaine Curtis-Maury, Abdul Basit, Vinay Devadas, Ananthan Subramanian
  • Patent number: 11188246
    Abstract: Techniques are provided for providing a storage abstraction layer for a composite aggregate architecture. A storage abstraction layer is utilized as an indirection layer between a file system and a storage environment. The storage abstraction layer obtains characteristic of a plurality of storage providers that provide access to heterogeneous types of storage of the storage environment (e.g., solid state storage, high availability storage, object storage, hard disk drive storage, etc.). The storage abstraction layer generates storage bins to manage storage of each storage provider. The storage abstraction layer generates a storage aggregate from the heterogeneous types of storage as a single storage container. The storage aggregate is exposed to the file system as the single storage container that abstracts away from the file system the management and physical storage details of data of the storage aggregate.
    Type: Grant
    Filed: November 21, 2019
    Date of Patent: November 30, 2021
    Assignee: NetApp Inc.
    Inventors: Ananthan Subramanian, Sriram Venketaraman, Ravikanth Dronamraju, Mohit Gupta
  • Patent number: 11182202
    Abstract: Methods, non-transitory machine-readable media, and computing devices for transitioning tasks and interrupt service routines are provided. An example method includes processing, by a plurality of processor cores of a storage controller, tasks and interrupt service routines. A performance statistic is determined corresponding to the plurality of processor cores. Based on detecting that the performance statistic passes a threshold, a number of the plurality of processor cores that are assigned to the tasks and the interrupt service routines are reduced.
    Type: Grant
    Filed: October 15, 2019
    Date of Patent: November 23, 2021
    Assignee: NETAPP, INC.
    Inventors: Kent Prosch, Matthew Weber, Arindam Banerjee, Ben McDavitt
  • Patent number: 11175831
    Abstract: A system shares I/O load between controllers in a high availability system. For writes, a controller determines based on one or more factors which controller will flush batches of data from write-back cache to better distribute the I/O burden. The determination occurs after the local storage controller caches the data, mirrors it, and confirms write complete to the host. Once it is determined which storage controller will flush the cache, the flush occurs and the corresponding metadata at a second layer of indirection is updated by that determined storage controller (whether or not it is identified as the owner of the corresponding volume to the host, while the volume owner updates metadata at a first layer of indirection). For a host read, the controller that owns the volume accesses the metadata from whichever controller(s) flushed the data previously and reads the data, regardless of which controller had performed the flush.
    Type: Grant
    Filed: April 25, 2017
    Date of Patent: November 16, 2021
    Assignee: NETAPP, INC.
    Inventors: Randolph Sterns, Charles Binford, Joseph Blount, Joseph Moore, William P. Delaney
  • Patent number: 11175941
    Abstract: One or more techniques and/or systems are disclosed for redeploying a baseline VM (BVM) to one or more child VMs (CVMs) by merely cloning virtual drives of the BVM, instead of the entirety of the parent BVM. A temporary directory is created in a datastore that has the target CVMs that are targeted for virtual drive replacement (e.g., are to be “re-baselined”). One or more replacement virtual drives (RVDs) are created in the temporary directory, where the RVDs comprise a clone of a virtual drive of the source BVM. The one or more RVDs are moved from the temporary directory to a directory of the target CVMs, replacing existing virtual drives of the target CVMs so that the target CVMs are thus re-baselined to the state of the parent BVM.
    Type: Grant
    Filed: July 22, 2019
    Date of Patent: November 16, 2021
    Assignee: NetApp Inc.
    Inventors: George Costea, Eric Forgette
  • Patent number: 11175989
    Abstract: A technique provides efficient data protection, such as erasure coding, for data blocks of volumes served by storage nodes of a cluster. Data blocks associated with write requests of unpredictable client workload patterns may be compressed. A set of the compressed data blocks may be selected to form a write group and an erasure code may be applied to the group to algorithmically generate one or more encoded blocks in addition to the data blocks. Due to the unpredictability of the data workload patterns, the compressed data blocks may have varying sizes. A pool of the various-sized compressed data blocks may be established and maintained from which the data blocks of the write group are selected. Establishment and maintenance of the pool enables selection of compressed data blocks that are substantially close to the same size and, thus, that require minimal padding.
    Type: Grant
    Filed: April 24, 2020
    Date of Patent: November 16, 2021
    Assignee: NetApp, Inc.
    Inventors: Sneheet Kumar Mishra, Daniel David McCarthy, Christopher Clark Corey, Austino Nicholas Longo, Christopher Cason
  • Patent number: 11169707
    Abstract: A system and method for improving storage system performance by reducing or avoiding load spike amplification when performing garbage collection is disclosed. A storage controller in a storage system tracks system load including write load and read load, as well as available free segments. The storage controller uses these tracked values as inputs and, with these inputs, generates a garbage collection rate. Where read load is included, a scaled portion of the read load is taken into consideration so that, as the number of free segments nears the minimum amount desired and to prevent garbage collecting too slowly, the read load is gradually excluded from the garbage collection rate determination. The garbage collection rate is therefore responsive to system load so that, in times of high system load, the rate reduces as much as is safe so that the write load takes priority with computing resources of the storage controller.
    Type: Grant
    Filed: January 22, 2016
    Date of Patent: November 9, 2021
    Assignee: NETAPP, INC.
    Inventor: Joseph Blount
  • Patent number: 11169884
    Abstract: Recovery support techniques for storage virtualization environments are described. In one embodiment, for example, a method may be performed that comprises defining, by processing circuitry, a storage container comprising one or more logical storage volumes of a logical storage array of a storage system, associating the storage container with a virtual volume (vvol) datastore, identifying metadata for a vvol of the vvol datastore, and writing the metadata for the vvol to the storage system. Other embodiments are described and claimed.
    Type: Grant
    Filed: May 5, 2020
    Date of Patent: November 9, 2021
    Assignee: NetApp Inc.
    Inventors: Deepak Thomas, Dan Sarisky, Nagender Somavarapu, Santosh Lolayekar
  • Patent number: 11169972
    Abstract: A technique to name data is disclosed to allow preservation of storage efficiency over a link between a source and a destination in a replication relationship as well as in storage at the destination. The technique allows the source to send named data to the destination once and refer to it by name multiple times in the future, without having to resend the data. The technique also allows the transmission of data extents to be decoupled from the logical containers that refer to the data extents. Additionally, the technique allows a replication system to accommodate different extent sizes between replication source and destination while preserving storage efficiency.
    Type: Grant
    Filed: January 23, 2019
    Date of Patent: November 9, 2021
    Assignee: NetApp Inc.
    Inventors: Blake Lewis, John K. Edwards, Vijay Deshmukh, Kapil Kumar, Rajesh Desai
  • Patent number: 11169967
    Abstract: Methods and apparatuses for performing selective deduplication in a storage system are introduced here. Techniques are provided for determining a probability of deduplication for a data object based on a characteristic of the data object and performing a deduplication operation on the data object in the storage system prior to the data object being stored in persistent storage of the storage system if the probability of deduplication for the data object has a specified relationship to a specified threshold.
    Type: Grant
    Filed: December 17, 2019
    Date of Patent: November 9, 2021
    Assignee: NetApp Inc.
    Inventors: Damarugendra Mallaiah, Jayanta Basak
  • Patent number: 11163655
    Abstract: Systems and methods which provide for managing multiple mirror resources in a storage distribution network are provided. In some embodiments, a system provides for both high availability and disaster recovery functionality at different mirroring locations. Other embodiments may provide for multiple high availability and/or multiple disaster recovery mirror resources. These mirror resources are operated in a heterogeneous manner in the sense that each have its own transport, protocol, and the like, but are configured function cooperatively or as a single mirror with respect to mirroring a primary node. Embodiments may provide for the mirroring and resynchronization of mirrored resources in the event of a communication loss with a particular resource without ceasing the mirroring operations to other resources.
    Type: Grant
    Filed: November 6, 2017
    Date of Patent: November 2, 2021
    Assignee: NetApp Inc.
    Inventors: Harihara Kadayam, Vaiapuri Ramasubramaniam, Rishabh Mittal, Hrishikesh Keremane
  • Patent number: 11163690
    Abstract: In addition to caching I/O operations at a host, at least some data management can migrate to the host. With host side caching, data sharing or deduplication can be implemented with the cached writes before those writes are supplied to front end storage elements. When a host cache flush to distributed storage trigger is detected, the host deduplicates the cached writes. The host aggregates data based on the deduplication into a “change set file” (i.e., a file that includes the aggregation of unique data from the cached writes). The host supplies the change set file to the distributed storage system. The host then sends commands to the distributed storage system. Each of the commands identifies a part of the change set file to be used for a target of the cached writes.
    Type: Grant
    Filed: November 11, 2019
    Date of Patent: November 2, 2021
    Assignee: NetApp Inc.
    Inventors: Girish Kumar BK, Gaurav Makkar
  • Patent number: 11163653
    Abstract: Direct monitoring of a plurality of storage nodes in a primary cluster is performed based on connectivity with the storage nodes. Indirect monitoring of a first storage node is performed, in response to direct monitoring of the first storage node indicating failure of the connectivity with the first storage node, wherein a second storage node of the plurality of nodes is a backup node for the first storage node. The indirect monitor of the first storage node indicates failure of the first storage node in response to performance of storage access operations by the second storage node that were previously performed by the first storage node. A cluster-switch operation is initiated to switch to from the primary cluster to a backup cluster based on an occurrence of at least one cluster-failure condition that comprises the indirect monitor of the first storage node indicating failure of the first storage node.
    Type: Grant
    Filed: November 11, 2019
    Date of Patent: November 2, 2021
    Assignee: NetApp Inc.
    Inventors: Amarnath Jolad, Kazunobu Nishime, Iswarya Ayyappan, Ankit Batra
  • Patent number: 11163729
    Abstract: One or more techniques and/or computing devices are provided for replicating virtual machine disk clones. For example, a first storage controller, hosting first storage, may have a synchronous replication relationship with a second storage controller hosting second storage. A virtual machine, within the first storage, may be specified as having synchronous replication protection. Accordingly, virtual machine disk clones of a virtual machine disk of the virtual machine may be replicated from the first storage to the second storage. For example, virtual machine disk clones may be synchronous replicated, replicated by a resync process invoked by a hypervisor agent, and/or stored and replicated from a clone backup directory.
    Type: Grant
    Filed: June 28, 2019
    Date of Patent: November 2, 2021
    Assignee: NetApp Inc.
    Inventors: Rithin Kumar Shetty, Akhil Kaushik, Nagender Somavarapu, Yuedong Mu, Pranab Patnaik
  • Publication number: 20210334182
    Abstract: Failover methods and systems for a networked storage environment are provided. A metadata data structure is generated, before starting a replay of entries at a log stored in a non-volatile memory of a second storage node, during a failover operation initiated in response to a failure at a first storage node. The second storage node operates as a partner node of the first storage node, and the metadata structure stores a metadata attribute of each log entry. Furthermore, the metadata attribute of each log entry is persistently stored. The persistently stored metadata attribute is used to respond to a read request received during the replay by the second storage node, while a write request metadata attribute of a write request is used for executing the write request received by the second storage node during the replay.
    Type: Application
    Filed: April 22, 2020
    Publication date: October 28, 2021
    Applicant: NETAPP, INC.
    Inventors: Szu-Wen Kuo, Parag Sarfare, Ananthan Subramanian, Asif Imtiyaz Pathan, Santhosh Selvaraj, Nikhil Mattankot
  • Publication number: 20210334179
    Abstract: Failover methods and systems for a networked storage environment are provided. A filtering data structure and a metadata data structure are generated before starting a replay of a log stored in a non-volatile memory of a second storage node, during a failover operation initiated in response to a failure at a first storage node. The second storage node operates as a partner node of the first storage node to mirror at the log one or more write requests received by the first storage node prior to the failure, and data associated with the one or more write requests. The filtering data structure identifies each log entry and the metadata structure stores a metadata attribute of each log entry. The filtering data structure and the metadata structure are used for providing access to a logical storage object during the log replay from the second storage node.
    Type: Application
    Filed: April 22, 2020
    Publication date: October 28, 2021
    Applicant: NETAPP, INC.
    Inventors: Parag Sarfare, Ananthan Subramanian, Szu-Wen Kuo, Asif Imtiyaz Pathan, Santhosh Selvaraj, Nikhil Mattankot, Manan Patel, Travis Ryan Grusecki
  • Publication number: 20210334180
    Abstract: Failover methods and systems for a networked storage environment are provided. In one aspect, a read request associated with a first storage object is received, during a replay of entries of a log stored in a non-volatile memory of a second storage node for a failover operation initiated in response to a failure at a first storage node. The second storage node operates as a partner node of the first storage node. The read request is processed using a filtering data structure that is generated from the log prior to the replay and identifies each log entry. The read request is processed when the log does not have an entry associated with the read request, and when the filtering data structure includes an entry associated with the read request, the requested data is located at the non-volatile memory.
    Type: Application
    Filed: April 22, 2020
    Publication date: October 28, 2021
    Applicant: NETAPP, INC.
    Inventors: Asif Imtiyaz Pathan, Parag Sarfare, Ananthan Subramanian, Szu-Wen Kuo, Santhosh Selvaraj, Nikhil Mattankot