Patents by Inventor John K. Edwards

John K. Edwards 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).

  • Publication number: 20140372832
    Abstract: A network storage server includes a tool for detecting and fixing errors while the network storage server remains online (available for servicing client requests), which includes enabling a user to approve or disapprove remedial changes before the changes are committed. The technique bypasses the usual consistency point process for new or modified data blocks representing potential remedial changes. At a consistency point, dirty data blocks representing the potential remedial changes are written to a change log file residing outside the volume. The modified data blocks are written in sequential order to logical blocks of the change log file. In response to a user input indicating that a potential change should be committed, the corresponding modified data blocks are read from the change log file in the order in which they were written to the change log file, and they are written to persistent storage in that order.
    Type: Application
    Filed: June 17, 2014
    Publication date: December 18, 2014
    Inventors: Yong Cho, Maya Palem, Vignesh Sukumar, John K. Edwards, David Grunwald, Andy Kahn
  • Patent number: 8903830
    Abstract: A plurality of storage devices is organized into a physical volume called an aggregate, and the aggregate is organized into a global storage space, and a data block is resident on one of the storage devices of the plurality of storage devices. A plurality of virtual volumes is organized within the aggregate and the data block is allocated to a virtual volume. A physical volume block number (pvbn) is selected for the data block from a pvbn space of the aggregate, and virtual volume block number (vvbn) for the data block is selected from a vvbn space of the selected vvol. Both the selected pvbn and the selected vvbn are inserted in a parent block as block pointers to point to the allocated data block on the storage device.
    Type: Grant
    Filed: September 10, 2013
    Date of Patent: December 2, 2014
    Assignee: NetApp, Inc.
    Inventor: John K. Edwards
  • Publication number: 20140281350
    Abstract: A storage administrator may maintain location information in separate layers. A data storage system may identify the location of particular data by identifying the virtual location of data, such as the logical extent to which the data belongs. Object stores may maintain mappings of virtual locations to physical locations, such as mappings of extent identifiers to virtual storage objects and mappings of virtual storage objects to storage unit locations. When particular data is relocated to a new location, a storage administrator may update mappings used to translate virtual locations to physical locations, such as an extent-object mapping or an object-storage unit mapping. References to the virtual locations, such as references to logical extent identifiers, may not be updated in response to the relocation of data.
    Type: Application
    Filed: March 12, 2014
    Publication date: September 18, 2014
    Applicant: BRACKET COMPUTING, INC.
    Inventors: JASON A. LANGO, JOHN K. EDWARDS, NITIN MUPPALANENI
  • Publication number: 20140282824
    Abstract: A computer-implemented process receives a request to utilize one or more virtual data center (VDC) resources at a virtual data center and determines a particular service level applicable to request. Based on the particular service level and mapping information that indicates associations between VDC resource utilization policies and service levels, the process determines a particular VDC resource utilization policy corresponding to the request and causes completion of the request according to the particular VDC resource utilization policy. Another process determines that a resource utilization performance is incompatible with a requested service level and selects a new resource utilization based in part on the resource utilization performance information and mapping information. The process causes data distributed according to a prior resource utilization policy to be distributed according to the new resource utilization policy in one or more resources at a virtual data center.
    Type: Application
    Filed: March 15, 2013
    Publication date: September 18, 2014
    Inventors: Jason A. LANGO, John K. Edwards, Nitin Muppalaneni
  • Patent number: 8825963
    Abstract: A storage system provides highly flexible data layouts that can be tailored to various different applications and use cases. The system dynamically balances performance with block sharing, based on service level objectives (SLOs). The system defines several types of data containers, including “regions”, “logical extents” and “slabs”. Each region includes one or more logical extents. Allocated to each logical extent is at least part of one or more slabs allocated to the region that includes the extent. Each slab is a set of blocks of storage from one or more physical storage devices. The slabs can be defined from a heterogeneous pool of physical storage. The system also maintains multiple “volumes” above the region layer. Each volume includes one or more logical extents from one or more regions. Layouts of the extents within the regions are not visible to any of the volumes.
    Type: Grant
    Filed: April 15, 2013
    Date of Patent: September 2, 2014
    Assignee: NetApp, Inc.
    Inventors: John K. Edwards, Keith A. Smith, Jiri Schindler, Steven R. Kleiman
  • Patent number: 8793223
    Abstract: A network storage server includes a tool for detecting and fixing errors while the network storage server remains online (available for servicing client requests), which includes enabling a user to approve or disapprove remedial changes before the changes are committed. The technique bypasses the usual consistency point process for new or modified data blocks representing potential remedial changes. At a consistency point, dirty data blocks representing the potential remedial changes are written to a change log file residing outside the volume. The modified data blocks are written in sequential order to logical blocks of the change log file. In response to a user input indicating that a potential change should be committed, the corresponding modified data blocks are read from the change log file in the order in which they were written to the change log file, and they are written to persistent storage in that order.
    Type: Grant
    Filed: February 9, 2009
    Date of Patent: July 29, 2014
    Assignee: NetApp, Inc.
    Inventors: Yong Cho, Maya Palem, Vignesh Sukumar, John K. Edwards, David Grunwald, Andy Kahn
  • Publication number: 20140082281
    Abstract: A file system layout apportions an underlying physical volume into one or more virtual volumes (vvols) of a storage system. The underlying physical volume is an aggregate comprising one or more groups of disks, such as RAID groups, of the storage system. The aggregate has its own physical volume block number (pvbn) space and maintains metadata, such as block allocation structures, within that pvbn space. Each vvol has its own virtual volume block number (vvbn) space and maintains metadata, such as block allocation structures, within that vvbn space. Notably, the block allocation structures of a vvol are sized to the vvol, and not to the underlying aggregate, to thereby allow operations that manage data served by the storage system (e.g., snapshot operations) to efficiently work over the vvols. The file system layout extends the file system layout of a conventional write anywhere file layout system implementation, yet maintains performance properties of the conventional implementation.
    Type: Application
    Filed: November 12, 2013
    Publication date: March 20, 2014
    Applicant: NetApp, Inc.
    Inventors: John K. Edwards, Blake H. Lewis, Robert M. English, Eric Hamilton, Peter F. Corbett
  • Publication number: 20140068184
    Abstract: A storage system provides highly flexible data layouts that can be tailored to various different applications and use cases. The system defines several types of data containers, including “regions”, “logical extents” and “slabs”. Each region includes one or more logical extents. Allocated to each logical extent is at least part of one or more slabs allocated to the region that includes the extent. Each slab is a set of blocks of storage from one or more physical storage devices. The slabs can be defined from a heterogeneous pool of physical storage. The system also maintains multiple “volumes” above the region layer. Each volume includes one or more logical extents from one or more regions. A foreign LUN can be assimilated into the system by defining slabs as separate portions of the foreign LUN. Layouts of the extents within the regions are not visible to any of the volumes.
    Type: Application
    Filed: September 6, 2013
    Publication date: March 6, 2014
    Applicant: NETAPP, INC.
    Inventors: John K. Edwards, Steven R. Kleiman
  • Publication number: 20140019704
    Abstract: A plurality of storage devices is organized into a physical volume called an aggregate, and the aggregate is organized into a global storage space, and a data block is resident on one of the storage devices of the plurality of storage devices. A plurality of virtual volumes is organized within the aggregate and the data block is allocated to a virtual volume. A physical volume block number (pvbn) is selected for the data block from a pvbn space of the aggregate, and virtual volume block number (vvbn) for the data block is selected from a vvbn space of the selected vvol. Both the selected pvbn and the selected vvbn are inserted in a parent block as block pointers to point to the allocated data block on the storage device.
    Type: Application
    Filed: September 10, 2013
    Publication date: January 16, 2014
    Applicant: NetApp, Inc.
    Inventor: John K. Edwards
  • Patent number: 8583892
    Abstract: A file system layout apportions an underlying physical volume into one or more virtual volumes (vvols) of a storage system. The underlying physical volume is an aggregate comprising one or more groups of disks, such as RAID groups, of the storage system. The aggregate has its own physical volume block number (pvbn) space and maintains metadata, such as block allocation structures, within that pvbn space. Each vvol has its own virtual volume block number (vvbn) space and maintains metadata, such as block allocation structures, within that vvbn space. Notably, the block allocation structures of a vvol are sized to the vvol, and not to the underlying aggregate, to thereby allow operations that manage data served by the storage system (e.g., snapshot operations) to efficiently work over the vvols.
    Type: Grant
    Filed: January 16, 2012
    Date of Patent: November 12, 2013
    Assignee: NetApp, Inc.
    Inventors: John K. Edwards, Blake H. Lewis, Robert M. English, Eric Hamilton, Peter F. Corbett
  • Patent number: 8555022
    Abstract: A storage system provides highly flexible data layouts that can be tailored to various different applications and use cases. The system defines several types of data containers, including “regions”, “logical extents” and “slabs”. Each region includes one or more logical extents. Allocated to each logical extent is at least part of one or more slabs allocated to the region that includes the extent. Each slab is a set of blocks of storage from one or more physical storage devices. The slabs can be defined from a heterogeneous pool of physical storage. The system also maintains multiple “volumes” above the region layer. Each volume includes one or more logical extents from one or more regions. A foreign LUN can be assimilated into the system by defining slabs as separate portions of the foreign LUN. Layouts of the extents within the regions are not visible to any of the volumes.
    Type: Grant
    Filed: January 6, 2010
    Date of Patent: October 8, 2013
    Assignee: NetApp, Inc.
    Inventors: John K. Edwards, Steven R. Kleiman
  • Patent number: 8533201
    Abstract: A plurality of storage devices is organized into a physical volume called an aggregate, and the aggregate is organized into a global storage space, and a data block is resident on one of the storage devices of the plurality of storage devices. A plurality of virtual volumes is organized within the aggregate and he data block is allocated to a virtual volume. A physical volume block number (pvbn) is selected for the data block from a pvbn space of the aggregate, and virtual volume block number (vvbn) for the data block is selected from a vvbn space of the selected vvol. Both the selected pvbn and the selected vvbn are inserted in a parent block as block pointers to point to the allocated data block on the storage device.
    Type: Grant
    Filed: May 25, 2011
    Date of Patent: September 10, 2013
    Assignee: NetApp, Inc.
    Inventor: John K. Edwards
  • Patent number: 8443153
    Abstract: A storage system provides highly flexible data layouts that can be tailored to various different applications and use cases. The system dynamically balances performance with block sharing, based on service level objectives (SLOs). The system defines several types of data containers, including “regions”, “logical extents” and “slabs”. Each region includes one or more logical extents. Allocated to each logical extent is at least part of one or more slabs allocated to the region that includes the extent. Each slab is a set of blocks of storage from one or more physical storage devices. The slabs can be defined from a heterogeneous pool of physical storage. The system also maintains multiple “volumes” above the region layer. Each volume includes one or more logical extents from one or more regions. Layouts of the extents within the regions are not visible to any of the volumes.
    Type: Grant
    Filed: January 6, 2010
    Date of Patent: May 14, 2013
    Assignee: NetApp, Inc.
    Inventors: John K. Edwards, Keith A. Smith, Jiri Schindler, Steven R. Kleiman
  • Publication number: 20130073519
    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: Application
    Filed: September 20, 2011
    Publication date: March 21, 2013
    Applicant: NetApp, Inc.
    Inventors: Blake Lewis, John K. Edwards, Vijay Deshmukh, Kapil Kumar, Rajesh Desai
  • Patent number: 8301673
    Abstract: A system and method for performing a distributed consistency check of a clustered file system. File system functions for loading an inode and/or buffer tree are modified so that in response to either of these functions being invoked, a consistency check is performed. The consistency check verifies both local consistency on a node of the clustered file and a distributed check across the nodes of the storage system.
    Type: Grant
    Filed: December 28, 2007
    Date of Patent: October 30, 2012
    Assignee: NetApp, Inc.
    Inventors: Robert Wyckoff Hyer, Jr., Todd Derr, John K. Edwards
  • Publication number: 20120179891
    Abstract: A file system layout apportions an underlying physical volume into one or more virtual volumes (vvols) of a storage system. The underlying physical volume is an aggregate comprising one or more groups of disks, such as RAID groups, of the storage system. The aggregate has its own physical volume block number (pvbn) space and maintains metadata, such as block allocation structures, within that pvbn space. Each vvol has its own virtual volume block number (vvbn) space and maintains metadata, such as block allocation structures, within that vvbn space. Notably, the block allocation structures of a vvol are sized to the vvol, and not to the underlying aggregate, to thereby allow operations that manage data served by the storage system (e.g., snapshot operations) to efficiently work over the vvols.
    Type: Application
    Filed: January 16, 2012
    Publication date: July 12, 2012
    Inventors: John K. Edwards, Blake H. Lewis, Robert M. English, Eric Hamilton, Peter F. Corbett
  • Publication number: 20120150807
    Abstract: An on-disk storage arrangement increases the number of persistent consistency point images (PCPIs) that may be maintained for a volume of a storage system. The on-disk storage arrangement comprises a novel volume information (volinfo) block representing a root of the volume; the volinfo block is stored at predefined locations on disk and comprises various system wide configuration data. The volinfo block further comprises a data structure configured to provide a level of indirection that increases the number of PCPIs maintainable by a file system executing on the storage system. To that end, the data structure may be organized as an array of pointers, wherein each pointer references a block containing a snapshot root, thereby enabling efficient access to each PCPI maintained by the file system.
    Type: Application
    Filed: February 21, 2012
    Publication date: June 14, 2012
    Inventors: Emily Eng, Andy C. Kahn, John K. Edwards
  • Patent number: 8126935
    Abstract: A plurality of types of volumes are maintained, a volume being a logical arrangement of storage space on one or more data storage devices. A volume type field is used to designate the type of a particular volume, and a flexible volume paradigm is selected by the volume type field for interpreting data within a data structure written to a data storage device of the one or more data storage devices. A physical volume block number to virtual volume block number mapping pair (pvbn/vvbn pair) is designated by the volume type field, the pvbn/vvbn pair is used to translate a physical volume block number to a virtual volume block number. A request to write a data to a first block of the particular volume is received, a pvbn/vvbn pair is determined. The data is written to the physical block designated by the pvbn/vvbn pair.
    Type: Grant
    Filed: August 4, 2009
    Date of Patent: February 28, 2012
    Assignee: NetApp, Inc.
    Inventors: David Hitz, John K. Edwards
  • Patent number: 8122286
    Abstract: An on-disk storage arrangement increases the number of persistent consistency point images (PCPIs) that may be maintained for a volume of a storage system. The on-disk storage arrangement comprises a novel volume information (volinfo) block representing a root of the volume; the volinfo block is stored at predefined locations on disk and comprises various system wide configuration data. The volinfo block further comprises a data structure configured to provide a level of indirection that increases the number of PCPIs maintainable by a file system executing on the storage system. To that end, the data structure may be organized as an array of pointers, wherein each pointer references a block containing a snapshot root, thereby enabling efficient access to each PCPI maintained by the file system.
    Type: Grant
    Filed: January 17, 2006
    Date of Patent: February 21, 2012
    Assignee: NetApp, Inc.
    Inventors: Emily Eng, Andy C. Kahn, John K. Edwards
  • Patent number: 8099576
    Abstract: An underlying physical volume of a storage system is an aggregate having a plurality of storage devices. The aggregate has its own physical volume block number (pvbn) space. A file system layout apportions the underlying physical volume into a plurality of virtual volumes of the storage system each having a virtual volume identification (vvid). Each virtual volume has its own virtual volume block number (vvbn) space. The block allocation structures of a virtual volume are sized to the virtual volume, and not to the underlying aggregate, to thereby allow operations that manage data served by the storage system (e.g., snapshot operations) to efficiently work over the virtual volumes. Each storage block in a virtual volume is identified by the triplet: pvbn, vvid, and vvbn.
    Type: Grant
    Filed: August 4, 2008
    Date of Patent: January 17, 2012
    Assignee: NetApp, Inc.
    Inventors: John K. Edwards, Blake H. Lewis, Robert M. English, Eric Hamilton, Peter F. Corbett