Patents Assigned to NetApp
-
Patent number: 9563654Abstract: 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: GrantFiled: December 22, 2015Date of Patent: February 7, 2017Assignee: NetApp, Inc.Inventors: Ling Zheng, Blake H. Lewis, Kayuri H. Patel
-
Patent number: 9565243Abstract: 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: GrantFiled: July 18, 2013Date of Patent: February 7, 2017Assignee: NETAPP, INC.Inventor: Srikumar Natarajan
-
Patent number: 9563469Abstract: 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: GrantFiled: January 26, 2015Date of Patent: February 7, 2017Assignee: NETAPP, INC.Inventors: Arthur F. Lent, Peter M. Morrissette, Timothy J. Clayton-Luce
-
Publication number: 20170034269Abstract: 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: ApplicationFiled: August 31, 2015Publication date: February 2, 2017Applicant: NETAPP, INC.Inventors: Balajee Nagasubramaniam, Subin Govind, Vijay Singh, Jeff Prem
-
Publication number: 20170034270Abstract: 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: ApplicationFiled: December 21, 2015Publication date: February 2, 2017Applicant: NETAPP, INC.Inventors: Balajee Nagasubramaniam, Subin Govind, Vijay Singh, Jeff Prem
-
Publication number: 20170031940Abstract: 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: ApplicationFiled: July 31, 2015Publication date: February 2, 2017Applicant: NETAPP, INC.Inventors: Ananthan SUBRAMANIAN, Sandeep YADAV, Manish KATIYAR
-
Publication number: 20170034293Abstract: 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: ApplicationFiled: August 31, 2015Publication date: February 2, 2017Applicant: NETAPP, INC.Inventors: Jared Hocutt, Marty Turner
-
Patent number: 9558374Abstract: 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: GrantFiled: February 25, 2015Date of Patent: January 31, 2017Assignee: NETAPP, INC.Inventors: Peter D. Shah, Won So
-
Patent number: 9560134Abstract: 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: GrantFiled: June 27, 2012Date of Patent: January 31, 2017Assignee: NETAPP, INC.Inventor: Hubbert Smith
-
Systems, methods, and computer program products implementing hybrid file structures for data storage
Patent number: 9557937Abstract: 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: GrantFiled: August 21, 2013Date of Patent: January 31, 2017Assignee: NETAPP, INC.Inventors: Mohit Gupta, Subramaniam Periyagaram, Vania N. Fang, Robert English, Ram Kesavan -
Patent number: 9557938Abstract: 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: GrantFiled: May 13, 2014Date of Patent: January 31, 2017Assignee: NetApp, Inc.Inventor: David Slik
-
Patent number: 9558115Abstract: 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: GrantFiled: April 22, 2014Date of Patent: January 31, 2017Assignee: NETAPP, INC.Inventor: Richard Parvin Jernigan, IV
-
Patent number: 9558073Abstract: 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: GrantFiled: April 13, 2015Date of Patent: January 31, 2017Assignee: NETAPP, INC.Inventors: Jared Cantwell, Matt Holiday
-
Publication number: 20170024161Abstract: 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: ApplicationFiled: July 23, 2015Publication date: January 26, 2017Applicant: NETAPP, INC.Inventors: Manish Katiyar, Ravikanth Dronamraju, Sunitha Sunil Sankar
-
Publication number: 20170026312Abstract: 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: ApplicationFiled: July 22, 2015Publication date: January 26, 2017Applicant: NETAPP, INC.Inventors: Curtis Hrischuk, Jeffrey Scott MacFarland, Alma Dimnaku
-
Publication number: 20170024144Abstract: 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: ApplicationFiled: July 22, 2015Publication date: January 26, 2017Applicant: NETAPP, INC.Inventors: Curtis Hrischuk, Alma Dimnaku, Leon Fairbanks, Steven B. Boswell
-
Publication number: 20170026265Abstract: 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: ApplicationFiled: July 22, 2015Publication date: January 26, 2017Applicant: NETAPP, INC.Inventors: Curtis Hrischuk, Alma Dimnaku, Leon Fairbanks, Oguz Semerci
-
Patent number: 9548946Abstract: 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: GrantFiled: May 30, 2014Date of Patent: January 17, 2017Assignee: NetApp, Inc.Inventors: Mandar Dattatraya Joshi, Kaushalender Aggarwal, Saurabh Balkrishna Khanvilkar
-
Patent number: 9547552Abstract: 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: GrantFiled: December 11, 2014Date of Patent: January 17, 2017Assignee: NetApp, Inc.Inventors: Theresa L. Segura, Wei Sun, Martin Parrish, Donald R. Humlicek
-
Patent number: 9547652Abstract: 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: GrantFiled: May 29, 2014Date of Patent: January 17, 2017Assignee: NETAPP, INC.Inventor: James McKinion