Patents Assigned to NetApp
  • Patent number: 9563654
    Abstract: The embodiments described herein are directed to an organization of metadata managed by a volume layer of a storage input/output (I/O) stack executing on one or more nodes of a cluster. The metadata managed by the volume layer, i.e., the volume metadata, is illustratively embodied as mappings from addresses, i.e., logical block addresses (LBAs), of a logical unit (LUN) accessible by a host to durable extent keys maintained by an extent store layer of the storage I/O stack. In an embodiment, the volume layer organizes the volume metadata as a mapping data structure, i.e., a dense tree metadata structure, which represents successive points in time to enable efficient access to the metadata.
    Type: Grant
    Filed: December 22, 2015
    Date of Patent: February 7, 2017
    Assignee: NetApp, Inc.
    Inventors: Ling Zheng, Blake H. Lewis, Kayuri H. Patel
  • Patent number: 9565243
    Abstract: A system and method of managing event tracking includes a tracking registry. The tracking registry includes a memory for storing tracking entries, a tracking entry hierarchy, and a registry interface configured to receive requests from a plurality of modules. The tracking registry opens a tracking entry based on a registry request received from a first module of the plurality of modules, and being associated with a first operation being handled by the first module and including a parent identifier of a parent tracking entry of the tracking entry, updates the tracking entry hierarchy based on the parent identifier, stores the first tracking entry in the memory, and closes the tracking entry based on an entry closing request received from a second module of the plurality of modules and being associated with completion of a second operation being handled by the second module. The second operation performs processing associated with completion of the first operation.
    Type: Grant
    Filed: July 18, 2013
    Date of Patent: February 7, 2017
    Assignee: NETAPP, INC.
    Inventor: Srikumar Natarajan
  • Patent number: 9563469
    Abstract: Described herein are systems and methods for storage and deployment of VMs in a virtual server environment. A VM deployment module executing on a server may produce VM container objects representing VMs, a VM container object comprising VM data describing a VM and vdisk configuration data. The VM deployment module may also later produce VMs on a server using the VM container objects. The VM deployment module may do so by producing a vdisk from a VM container object, the vdisk comprising the VM and vdisk configuration data. Rather than configuring the vdisk as typically done to make the vdisk useable to the server, the vdisk configuration data is used to make the vdisk useable and the VM data on the vdisk immediately accessible to the server. As such, the VM data may be immediately read to produce a VM on the server, thus providing rapid deployment of VMs.
    Type: Grant
    Filed: January 26, 2015
    Date of Patent: February 7, 2017
    Assignee: NETAPP, INC.
    Inventors: Arthur F. Lent, Peter M. Morrissette, Timothy J. Clayton-Luce
  • Publication number: 20170034269
    Abstract: Exemplary embodiments provide methods, mediums, and systems for efficiently moving data between cluster nodes. Upon receiving a request to read or write data at a first cluster node that is in communication with a client, the first node effects the transfer to or from a second cluster node. The transfer is carried out using a combination of remote data memory access (“RDMA”), or a similar technique that bypasses a part of the network stack, and transport control protocol (“TCP”), or a similar technique that does not bypass a part of the network stack. The data is transferred using RDMA, while certain control messages are sent using TCP. By combining RDMA content transfers and TCP control messages, data transfers can be carried out faster, more efficiently, and with less processing overhead. Other embodiments are described and claimed.
    Type: Application
    Filed: August 31, 2015
    Publication date: February 2, 2017
    Applicant: NETAPP, INC.
    Inventors: Balajee Nagasubramaniam, Subin Govind, Vijay Singh, Jeff Prem
  • Publication number: 20170034270
    Abstract: Exemplary embodiments provide methods, mediums, and systems for efficiently moving data between cluster nodes. Upon receiving a request to read or write data at a first cluster node that is in communication with a client, the first node effects the transfer to or from a second cluster node. The transfer is carried out using a combination of remote data memory access (“RDMA”), or a similar technique that bypasses a part of the network stack, and transport control protocol (“TCP”), or a similar technique that does not bypass a part of the network stack. The data is transferred using RDMA, while certain control messages are sent using TCP. By combining RDMA content transfers and TCP control messages, data transfers can be carried out faster, more efficiently, and with less processing overhead. Other embodiments are described and claimed.
    Type: Application
    Filed: December 21, 2015
    Publication date: February 2, 2017
    Applicant: NETAPP, INC.
    Inventors: Balajee Nagasubramaniam, Subin Govind, Vijay Singh, Jeff Prem
  • Publication number: 20170031940
    Abstract: A file system layout apportions an underlying physical volume into one or more virtual volumes of a storage system. The virtual volumes having a file system and one or more files organized as buffer trees, the buffer trees utilizing indirect blocks to point to the data blocks. The indirect block at the level above the data blocks are grouped into compression groups that point to a set of physical volume block number (pvbn) block pointers.
    Type: Application
    Filed: July 31, 2015
    Publication date: February 2, 2017
    Applicant: NETAPP, INC.
    Inventors: Ananthan SUBRAMANIAN, Sandeep YADAV, Manish KATIYAR
  • Publication number: 20170034293
    Abstract: Various embodiments are generally directed to techniques for dynamically enrolling storage system administrators into one or more news feeds based on aspects of operation of the one or more storage systems that each storage system administrator oversees. An apparatus includes a processor component of an enrollment server; a selection component of the enrollment server to analyze an aspect of the storage of client data by at least one storage device of a storage system to determine a topic of interest to the operation of the storage system, and to enroll an administration device of the storage system as a recipient of a news feed based on the topic of interest; and a triggering component of the enrollment server to trigger a distribution server to transmit a document associated with the news feed to the administration device in response to the enrollment of the administration device.
    Type: Application
    Filed: August 31, 2015
    Publication date: February 2, 2017
    Applicant: NETAPP, INC.
    Inventors: Jared Hocutt, Marty Turner
  • Patent number: 9558374
    Abstract: Methods and systems for securing information are provided. The method includes generating a hash key by an input/output (I/O) processing module interfacing with a processor executable application to encrypt a block of data of a data container to secure and store the data container; generating cipher text for the block of data encrypted with the hash key; using an encryption key to encrypt the hash key for the block of data; providing the cipher text and the encrypted hash key by the I/O processing module to a storage system for storage; where the I/O processing module segregates the encrypted hash key from the cipher text and maintains the encrypted hash key as part of metadata for the cipher text; and storing the cipher text with the encrypted hash key as the metadata for the cipher text for the block of data.
    Type: Grant
    Filed: February 25, 2015
    Date of Patent: January 31, 2017
    Assignee: NETAPP, INC.
    Inventors: Peter D. Shah, Won So
  • Patent number: 9560134
    Abstract: Systems and methods are described herein that provide storage array side write locking. In embodiments, data is on storage arrays that are shared by a plurality of clients, and the storage array prevents write contentions on the shared data by employing a storage array side write locking strategy that uses a write lock table to determine whether requested data is currently being serviced by one of the plurality of clients. For example, upon receiving a request for data, the storage array checks a lock table to determine whether any of the requested data is currently write locked (which indications current use of the data). If the grains are not write locked, then the data request may be allowed. If the grains are write locked, then the data request may be denied. In embodiments, the storage array takes steps to determine whether write locks have become stale and should be removed.
    Type: Grant
    Filed: June 27, 2012
    Date of Patent: January 31, 2017
    Assignee: NETAPP, INC.
    Inventor: Hubbert Smith
  • Patent number: 9557937
    Abstract: Systems, methods, and computer program products implementing hybrid file structures for data storage are provided. One embodiment of a method performed in a computer-based storage system includes writing a file as data blocks in an array of storage devices. The method includes associating the data blocks with metadata related to at least one location in the array of storage devices for later access to the data blocks. The file is represented as a hierarchical data structure having a plurality of nodes. A first portion of nodes has a first span type, and a second portion of nodes has a second span type. The data structure includes a buftree. The first span type includes a fixed-span type. The second span type includes a variable-span type.
    Type: Grant
    Filed: August 21, 2013
    Date of Patent: January 31, 2017
    Assignee: NETAPP, INC.
    Inventors: Mohit Gupta, Subramaniam Periyagaram, Vania N. Fang, Robert English, Ram Kesavan
  • Patent number: 9557938
    Abstract: In at least one embodiment, a method of operating a multiple-data-storage-devices enclosure is disclosed. The method includes: receiving a first read request from a first requester device for a first requested data fragment; identifying a first target data storage device storing the first requested data fragment based at least partly on the first read request; activating, independently of receiving the first read request, only a subset of data storage devices in the enclosure, wherein the subset includes the first target data storage device; retrieving, based at least partly on the first read request and in response to activating the subset, the first requested data fragment from the first target data storage device; and transmitting the first requested data fragment to the first requester device.
    Type: Grant
    Filed: May 13, 2014
    Date of Patent: January 31, 2017
    Assignee: NetApp, Inc.
    Inventor: David Slik
  • Patent number: 9558115
    Abstract: A method includes receiving an atomic operation for execution, wherein the execution of the atomic operation is to access a data container stored in more than one data store device of a plurality of data store devices in a distributed storage system. The method includes executing, in response to receiving the atomic operation, a write-back cache operation for the data container to preclude access of the data container by a different operation prior to completion of the atomic operation. The method also includes executing the atomic operation, wherein executing the atomic operation comprises accessing the data container stored in the more than one data store device of the distributed storage system.
    Type: Grant
    Filed: April 22, 2014
    Date of Patent: January 31, 2017
    Assignee: NETAPP, INC.
    Inventor: Richard Parvin Jernigan, IV
  • Patent number: 9558073
    Abstract: Disclosed are systems, computer-readable mediums, and methods for incremental block level backup. An initial backup of a volume is created at a backup server, where creating the initial backup includes retrieving an original metadata file from a metadata server, and retrieving a copy of all data of the volume based on the original metadata file. A first incremental backup of the volume is then created at the backup server, where creating the first incremental backup includes retrieving a first metadata file, where the first metadata file was created separately from the original metadata file. A block identifier of the first metadata file is compared to a corresponding block identifier of the original metadata file to determine a difference between the first and original block identifiers, and a copy of a changed data block of the volume is retrieved based on the comparison of the first and original block identifiers.
    Type: Grant
    Filed: April 13, 2015
    Date of Patent: January 31, 2017
    Assignee: NETAPP, INC.
    Inventors: Jared Cantwell, Matt Holiday
  • Publication number: 20170024161
    Abstract: Methods and systems for a storage server are provided. One method includes storing data at a first storage tier by a processor executable storage operating system; tracking the data stored at the first storage tier for moving the data to a second storage tier; transferring the data from the first storage tier to the second storage tier; and updating a data structure that tracks a transfer block number of a block that stores the data, where the transfer block number is based on a virtual identifier, a generation count and an offset value of a storage chunk that is a portion of a physical volume block number address space.
    Type: Application
    Filed: July 23, 2015
    Publication date: January 26, 2017
    Applicant: NETAPP, INC.
    Inventors: Manish Katiyar, Ravikanth Dronamraju, Sunitha Sunil Sankar
  • Publication number: 20170026312
    Abstract: Methods and systems for a networked storage system are provided. One method includes receiving a resource identifier identifying a resource of a network storage environment as an input to a processor executable application programming interface (API); and predicting available performance capacity of the resource by using an optimum utilization of the resource, a current utilization and a predicted utilization based on impact of a workload change at the resource, where the optimum utilization is an indicator of resource utilization beyond which throughput gains for a workload is smaller than increase in latency in processing the workload.
    Type: Application
    Filed: July 22, 2015
    Publication date: January 26, 2017
    Applicant: NETAPP, INC.
    Inventors: Curtis Hrischuk, Jeffrey Scott MacFarland, Alma Dimnaku
  • Publication number: 20170024144
    Abstract: Methods and systems for managing resources in a networked storage environment are provided. One method includes generating a relationship between latency and utilization of a resource in a networked storage environment using observation based, current and historical latency and utilization data, where latency is an indicator of delay at the resource for processing any request and utilization of the resource is an indicator of an extent the resource is being used at any given time; and selecting an optimal point for the generated relationship between latency and utilization, where the optimal point is an indicator of resource utilization beyond which throughput gains for a workload is smaller than increase in latency.
    Type: Application
    Filed: July 22, 2015
    Publication date: January 26, 2017
    Applicant: NETAPP, INC.
    Inventors: Curtis Hrischuk, Alma Dimnaku, Leon Fairbanks, Steven B. Boswell
  • Publication number: 20170026265
    Abstract: Methods and systems for a networked storage system are provided. One method includes filtering performance data associated with a resource used in a networked storage environment for reading and writing data at a storage device; and determining available performance capacity of the resource using the filtered performance data. The available performance capacity is based on optimum utilization of the resource and actual utilization of the resource, where utilization of the resource is an indicator of an extent the resource is being used at any given time, the optimum utilization is an indicator of resource utilization beyond which throughput gains for a workload is smaller than increase in latency and latency is an indicator of delay at the resource in processing the workload.
    Type: Application
    Filed: July 22, 2015
    Publication date: January 26, 2017
    Applicant: NETAPP, INC.
    Inventors: Curtis Hrischuk, Alma Dimnaku, Leon Fairbanks, Oguz Semerci
  • Patent number: 9548946
    Abstract: A server application is executed on an active device within the SAS domain, the active device connected to a remote client via an Ethernet connection. At least one command is received from the remote client via the Ethernet connection. An Ethernet frame of the at least one command is converted to at least one SAS frame. The at least one SAS frame is routed via a SAS data path to a SAS target device connected to the active device, the SAS target device corresponding to a field of the command.
    Type: Grant
    Filed: May 30, 2014
    Date of Patent: January 17, 2017
    Assignee: NetApp, Inc.
    Inventors: Mandar Dattatraya Joshi, Kaushalender Aggarwal, Saurabh Balkrishna Khanvilkar
  • Patent number: 9547552
    Abstract: A system and method for maintaining operation of a storage array with one or more failed storage devices and for quickly recovering when failing devices are replaced are provided. In some embodiments, the method includes receiving a data transaction directed to a volume and determining that a storage device associated with the volume is inoperable. In response to determining that the storage device is inoperable, a data extent is recorded in a change log in a storage controller cache. The data extent is associated with the data transaction and allocated to the storage device that is inoperable. The data transaction is performed using at least one other storage device associated with the volume, and data allocated to the storage device is subsequently reconstructed using the recorded data extent.
    Type: Grant
    Filed: December 11, 2014
    Date of Patent: January 17, 2017
    Assignee: NetApp, Inc.
    Inventors: Theresa L. Segura, Wei Sun, Martin Parrish, Donald R. Humlicek
  • Patent number: 9547652
    Abstract: Examples described herein provide for determining when individual file system operations are quiesced at a destination before validating a state of the file system object after migration. In one implementation, a metadata parameter is modified for individual file system objects after a set of mutable operations for each file system object is completed. The metadata parameter is recorded and subsequently used to determine when each of the individual file system objects are quiesced at the destination filer. The file system objects that are quiesced can be validated for migration and for implementation of any mutable file system operations that were completed at the source during the migration.
    Type: Grant
    Filed: May 29, 2014
    Date of Patent: January 17, 2017
    Assignee: NETAPP, INC.
    Inventor: James McKinion