Patents Assigned to NetApp
  • Patent number: 10929043
    Abstract: Techniques are described for reserving space on a destination node or volume for increasing the likelihood of a successful data transfer in a distributed storage environment. A reservation may be retried at one or more destinations if the reservation fails at a first destination. In some embodiments, the data-transfer process can be paused or terminated prior to data being transferred to one or more destinations if a reservation fails. Reserving space on a destination node or volume can increase the likelihood of a successful data transfer, which can increase the likelihood of efficient resources usage in a storage system.
    Type: Grant
    Filed: July 8, 2019
    Date of Patent: February 23, 2021
    Assignee: NETAPP, INC.
    Inventors: Tymoteusz Altman, Yi Zhang, Dheeraj Raghavender Sangamkar, Emalayan Vairavanathan
  • Patent number: 10915246
    Abstract: A method, non-transitory computer readable medium, and device that assists with managing cloud storage includes identifying a portion of data in a data unit identified for deletion in the metadata. The identified portion of the data identified for delete is compare to a threshold amount. Deletion of the data unit from a first storage object is deferred when the determined portion of data identified for deletion is less than the threshold amount. A second storage object with a portion of data unmarked for deletion in the data unit is generated when the determined portion of data marked for deletion is equal to the threshold amount, wherein the second storage object has a same identifier as the first storage object.
    Type: Grant
    Filed: May 14, 2019
    Date of Patent: February 9, 2021
    Assignee: NETAPP, INC.
    Inventors: Benjamin Bradford Andken, Sumeeth Channaveerappa Kyathanahalli, Sharad Jain
  • Patent number: 10915405
    Abstract: Methods, non-transitory computer readable media, and computing devices that determine when a storage element of a data storage device has failed. Address(es) mapped to the failed storage element are identified, when the determining indicates that the storage element has failed. Data corresponding to the address(es) is regenerated according to a data loss protection and recovery scheme (e.g., a RAID scheme). The regenerated data is written to other storage element(s) of the data storage device in order to remap the address(es) to the other storage element(s). This technology allows a data storage device (e.g., an SSD) to be repaired in-place following a failure of storage element(s) (e.g., a die) of the data storage device. Advantageously, entire data storage devices do not have to be failed with this technology as a result of a failure of an individual storage element, thereby reducing data storage device failure rates and associated overhead.
    Type: Grant
    Filed: May 26, 2017
    Date of Patent: February 9, 2021
    Assignee: NETAPP, INC.
    Inventors: Tim K. Emami, Charles Binford, Ratnesh Gupta
  • Patent number: 10911328
    Abstract: A storage system monitors system performance metrics and client performance metrics related to input/output (I/O) operations. The storage system, generates a performance adjustment value for each client using a proportional-integral-derivative (PID) controller to match the corresponding respective target performance value within a time period based on feedback of the respective monitored client performance metric and the system performance metric. The storage system, throttles I/O operations for each client during the time period such that the respective client performance moves toward the corresponding respective target performance value.
    Type: Grant
    Filed: September 30, 2019
    Date of Patent: February 2, 2021
    Assignee: NetApp, Inc.
    Inventors: David D. Wright, Michael Xu
  • Patent number: 10904339
    Abstract: Various embodiments are generally directed to techniques for reducing the time required for a node to take over for a failed node or to boot. An apparatus includes an access component to retrieve a metadata from a storage device coupled to a first D-module of a first node during boot, the metadata generated from a first mutable metadata portion and an immutable metadata portion, and the first metadata specifying a first address of a second D-module of a second node; a replication component to contact the second data storage module at the first address; and a generation component to, in response to failure of the contact, request a second mutable metadata portion from a N-module of the first node and generate a second metadata from the second mutable metadata portion and the immutable metadata portion, the second mutable metadata portion specifying a second address of the second D-module.
    Type: Grant
    Filed: January 24, 2020
    Date of Patent: January 26, 2021
    Assignee: NetApp Inc.
    Inventors: Paul Yuedong Mu, Manoj Sundararajan, Paul Ngan
  • Patent number: 10901958
    Abstract: Methods and systems for a distributed database cluster storing a plurality of replicas of a databases are provided. One method includes locating by a processor, a timestamp of a last stored record in a backup copy of the database from a plurality of logical partitions for a point in time restore operation; identifying by the processor, an operation log for each logical partition with the last stored record, the operation log providing transaction details associated with the database; splitting by the processor, the operation log for each logical partition by ignoring transactions that occurred prior to the timestamp of the last stored record; and using by the processor, the split operation log for restoring the database to the point in time.
    Type: Grant
    Filed: April 27, 2018
    Date of Patent: January 26, 2021
    Assignee: NETAPP, INC.
    Inventors: Amarnath Rachapudi, Atish Kathpal, Vineeth Karinta, Karthikeyan Nagalingam, Santosh Ananth Rao
  • Patent number: 10901844
    Abstract: A distributed storage system can use a high rate MSR erasure code to repair multiple nodes when multiple node failures occur. An encoder constructs m r-ary trees to determine the symbol arrays for the parity nodes. These symbol arrays are used to generate the parity data according to parity definitions or parity equations. The m r-ary trees are also used to identify a set of recovery rows across helper nodes for repairing a systematic node. When failed systematic nodes correspond to different ones of the m r-ary trees, a decoder may select additional recovery rows. The decoder selects additional recovery rows when the parity definitions do not provide a sufficient number of independent linear equations to solve the unknown symbols of the failed nodes. The decoder can select recovery rows contiguous to the already identified recovery rows for access efficiency.
    Type: Grant
    Filed: October 11, 2019
    Date of Patent: January 26, 2021
    Assignee: NETAPP, INC.
    Inventors: Syed Abid Hussain, Srinivasan Narayanamurthy
  • Publication number: 20210019053
    Abstract: A first plurality of block identifiers is sorted based, at least in part, on a measure of spatial locality. A second plurality of block identifiers is sorted based, at least in part, on the measure of spatial locality. At least the first plurality of block identifiers and the second plurality of block identifiers are incrementally merged into a third plurality of block identifiers based, at least in part, on the measure of spatial locality. A block of data corresponding to metadata associated with a plurality of block identifiers of the third plurality of block identifiers is updated.
    Type: Application
    Filed: October 6, 2020
    Publication date: January 21, 2021
    Applicant: NETAPP, INC.
    Inventors: Jayalakshmi Pattabiraman, Nikhil Mattankot, Deekshith Belchapada, Blake H. Lewis, Subramaniam Periyagaram, Satya Suresh Chouta Naga Veera, Rohit Singh, Rajesh Khandelwal, James Robert Morefield
  • Patent number: 10895984
    Abstract: Technology is described for a profile-based lifecycle management for data storage servers. The technology can receive a profile, monitor events emitted by devices of the data storage system, determine based on the monitored events that a device of the storage system matches the indicated condition, and perform the action corresponding to the indicated condition, wherein the action includes managing data stored by the data storage system. The received profile can indicate a condition and an action corresponding to the condition.
    Type: Grant
    Filed: September 20, 2019
    Date of Patent: January 19, 2021
    Assignee: NETAPP, INC.
    Inventors: Craig Chadwell, Ricardo Labiaga, Deepak Kenchammana-hosekote, Swetha Krishnan, Gokul Soundararajan
  • Patent number: 10880377
    Abstract: Methods and systems for a networked storage system are provided. One method includes utilizing a training dataset for prioritizing a plurality of events associated with a networked storage system using a plurality of resources. Each event is associated with a plurality of parameters, each parameter associated with a severity level determination for each event; and each event is provided an initial priority score based on a time when each event is selected for resolution. The plurality of parameters may include an event source. The method further includes using the training dataset to identify a weight of each parameter by executing an iterative prediction algorithm; determining a priority score of a new event based on the weight of each parameter; updating the training dataset with the priority score of the new event; and adjusting a resource impacted by the new event, based on the priority score of the new event.
    Type: Grant
    Filed: April 5, 2019
    Date of Patent: December 29, 2020
    Assignee: NETAPP, INC.
    Inventors: Kausik Ghatak, Sandeep Vasanth Kamath, Manoj
  • Patent number: 10872036
    Abstract: Methods, non-transitory machine readable media, and computing devices that facilitate efficient storage operations using host-managed solid-state disks (SSDs) are disclosed. With this technology, a direct memory access (DMA) transfer is initiated of a data block from a location indicated in an application write request to a write buffer in a device memory of an SSD. A determination is made when write rule(s) are satisfied based on content of the write buffer including at least the data block and other data block(s) previously transferred to the write buffer. A copy request is issued to transfer a portion of the content to flash media of the SSD, when the write rule(s) are satisfied. This technology does not require host memory for write buffering or processor cycles for copying data from application data buffers to a write buffer in host memory, and thereby significantly improves resource utilization of host devices managing SSDs.
    Type: Grant
    Filed: May 31, 2019
    Date of Patent: December 22, 2020
    Assignee: NETAPP, INC.
    Inventor: Abhijeet Gole
  • Patent number: 10866928
    Abstract: Methods, non-transitory machine readable media, and computing devices that compare a hash value to a predefined value for sliding windows in parallel for segments partitioned from an input data stream. A bit array is parsed according to minimum and maximum chunk sizes to identify chunk boundaries for the input data stream. The bit array is populated based on a result of the comparison and portions of the bit array are parsed in parallel. Unique chunks of the input data stream defined by the chunk boundaries are stored in a storage device. Accordingly, this technology utilizes parallel processing in two stages. In a first stage, rolling window based hashing is performed concurrently to identify potential chunk boundaries. In a second stage, actual chunk boundaries are selected based on minimum and maximum chunk size constraints. This technology advantageously facilitates significant deduplication ratio improvement as well as improved parallel chunking performance.
    Type: Grant
    Filed: January 14, 2019
    Date of Patent: December 15, 2020
    Assignee: NETAPP, INC.
    Inventors: Xing Lin, Fan Ni
  • Patent number: 10860529
    Abstract: A migration plan is created that is based at least in part on an operator input. The resources of a destination file system are provisioned based on the migration plan. One or more processes to migrate the source file system for the provisioned resources of the destination file system are then configured based on the migration plan.
    Type: Grant
    Filed: August 11, 2014
    Date of Patent: December 8, 2020
    Assignee: NetApp Inc.
    Inventors: Alfred G. Prinz, III, Fountain L. Ray, III, Douglas Tharon Heath
  • Patent number: 10860542
    Abstract: A method and apparatus for replicating a data container of a source storage server at the logical level in an unordered stream of individual data units are described. In certain embodiments, the replication operations can be performed without regard to the differences in geometry of physical persistent storage of the source and destination storage servers and without regard to the differences in data container format of the source and destination storage servers. An initial replication operation of the source data container is performed by transferring the data objects within the source data container to a replica data container in the destination storage server as an unordered stream of individual data units while preserving data object identifiers of the source data objects. Afterwards, incremental replication operations can be performed to capture modifications to the source data container over time after the initial replication operation.
    Type: Grant
    Filed: May 1, 2017
    Date of Patent: December 8, 2020
    Assignee: NetApp Inc.
    Inventors: Bruce Leverett, Michael Kazar, Alan Stuart Driscoll, Peter Frank Corbett, Devang K. Shah, Srishylam Simharajan, Toby Smith
  • Patent number: 10862966
    Abstract: A storage area network (SAN)-attached storage system architecture is disclosed. The storage system provides strongly consistent distributed storage communication protocol semantics, such as SCSI target semantics. The system includes a mechanism for presenting a single distributed logical unit, comprising one or more logical sub-units, as a single logical unit of storage to a host system by associating each of the logical sub-units that make up the single distributed logical unit with a single host visible identifier that corresponds to the single distributed logical unit. The system further includes mechanisms to maintain consistent context information for each of the logical sub-units such that the logical sub-units are not visible to a host system as separate entities from the single distributed logical unit.
    Type: Grant
    Filed: November 13, 2018
    Date of Patent: December 8, 2020
    Assignee: NetApp Inc.
    Inventors: Santosh Ananth Rao, Geoffrey Stewart Brown, Srikumar Natarajan, Pranab Patnaik, Kai Tan, Peter Frank Corbett, Vivek Venkatesan
  • Publication number: 20200379781
    Abstract: Methods and systems for networked computing systems is provided. One method includes generating by a processor, an application programming interface (API) template in a user preferred programming language to develop a plugin for a target system, the plugin customized for an application executed at the target system for providing a storage service associated with a storage object stored for the application; validating by the processor, an operation that the plugin has to perform for the storage service; uploading the plugin by the processor for deployment at the target system; and testing the deployed plugin by the processor at the target system. The plugin generation, validation, deployment and testing is executed using an integrated management system that provides the storage service.
    Type: Application
    Filed: May 28, 2019
    Publication date: December 3, 2020
    Applicant: NETAPP, INC.
    Inventors: Amarnath Rachapudi, Bharathwaj Govindharajan, Shivakumar Venkatappa, Dennis Christopher Fernandez
  • Patent number: 10853203
    Abstract: One or more techniques and/or systems are provided for controlling restoration of a storage aggregate. For example, a local storage device, located at a first storage site, and a remote storage device, located at a second storage site, may be assigned to a first storage aggregate. Responsive to a disaster of the first storage site, a gate may be created for the local storage device. The gate may block automated reconstruction and/or automated synchronization that may otherwise occur with respect to the local storage device. Until the local storage device is restored, the remote storage device may be used to service I/O requests that were otherwise directed to the local storage device. Responsive to receiving a user restoration command, the gate may be removed from the local storage device. Synchronization between the local storage device and the remote storage device may then be facilitated.
    Type: Grant
    Filed: March 14, 2019
    Date of Patent: December 1, 2020
    Assignee: NetApp Inc.
    Inventors: Chaitanya V. Patel, Laurent Nicolas Lambert, Linda Ann Riedle, Sandeep T. Nirmale
  • Patent number: 10853328
    Abstract: Asynchronous snapshot invalidation techniques are described. According to various such techniques, an enhanced file handle structure may be defined that includes a snapshot generation ID that is to comprise a value that singularly identifies a snapshot performed at a particular point in time. In some embodiments, when a snapshot ID assigned to that snapshot is reused at a subsequent point in time, a different snapshot generation ID may be assigned to that subsequent snapshot. With respect to an in-core cache, the differing snapshot generation IDs may eliminate unacceptable ambiguity regarding respective file information sets corresponding to the initial and subsequent snapshots sharing the same snapshot ID. As a result, obsolete file information sets may be cleared from the in-core cache asynchronously, enabling improved performance. The embodiments are not limited in this context.
    Type: Grant
    Filed: June 22, 2018
    Date of Patent: December 1, 2020
    Assignee: NetApp Inc.
    Inventors: Mardiros Z. Chakalian, Amber Palekar, Szu-Wen Kuo, Stephen Wu
  • Patent number: 10852984
    Abstract: One or more techniques and/or systems are provided for mirror vote synchronization. For example, a first storage device is located at a first storage site, and a second storage device is located at a second storage site. The second storage device is configured according to a data mirroring configuration where data from the first storage device is mirrored to the second storage device. Mirror vote metadata is generated based upon an up-to-date state of the data mirroring configuration. The mirror vote metadata indicates whether the first storage device and/or the second storage device are up-to-date or not. The mirror vote metadata may be replicated between the first storage site and the second storage site. If the first storage site fails, then the second storage site may provide switchover operation using the second storage device based upon the mirror vote metadata.
    Type: Grant
    Filed: January 4, 2019
    Date of Patent: December 1, 2020
    Assignee: NetApp Inc.
    Inventors: Brandon Taylor Long, Linda Ann Riedle, Manali Kulkarni, Sandeep T. Nirmale, Vikram Harakere Krishnamurthy
  • Patent number: 10852976
    Abstract: Techniques are provided for incremental snapshot copy to an object store. A list of deallocated block numbers of primary storage of a computing device are identified. Entries for the list of deallocated block numbers are removed from a mapping metafile. A list of changed block numbers corresponding to changes between a current snapshot of the primary storage and a prior copied snapshot copied from the primary storage to the object store is determined. The mapping metafile is evaluated using the list of changed block numbers to identify a deduplicated set of changed block numbers without entries within the mapping metafile. An object, comprising data of the deduplicated set of changed block numbers, is transmitted to the object store for storage as a new copied snapshot.
    Type: Grant
    Filed: March 8, 2019
    Date of Patent: December 1, 2020
    Assignee: NetApp Inc.
    Inventors: Tijin George, Jagavar Nehra, Roopesh Chuggani, Dnyaneshwar Nagorao Pawar