Patents by Inventor Douglas Joseph Santry

Douglas Joseph Santry 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).

  • Patent number: 11709957
    Abstract: The present technology relates to identifying an artificial intelligence model based on a received first key value to write a received first block of data associated with a file. The received first key value is applied to the identified artificial intelligence model which is trained to output one of a plurality of actual index values where the identified artificial intelligence model and the plurality of data blocks are stored as a neural tree. The one of the actual index values is compared to a range within the actual index values to determine when the one of the actual index value points to a first data block of the plurality of data. The received first block of data associated with the file is written into the determined first data block.
    Type: Grant
    Filed: May 4, 2020
    Date of Patent: July 25, 2023
    Assignee: NETAPP, INC.
    Inventor: Douglas Joseph Santry
  • Publication number: 20220284055
    Abstract: The present technology relates to identifying one of a plurality of artificial intelligence models based on a received key value. The received key value is applied to the identified one of the artificial intelligence models which is trained to output one of a plurality of actual index values. The one of the actual index values is compared to a range within the actual index values to determine when the one of the actual index value points to the data block. A received input-output operation is performed on the data block when the one of the actual index values is determined to point to the data block.
    Type: Application
    Filed: May 23, 2022
    Publication date: September 8, 2022
    Inventor: Douglas Joseph Santry
  • Patent number: 11372918
    Abstract: The present technology relates to identifying one of a plurality of artificial intelligence models based on a received key value. The received key value is applied to the identified one of the artificial intelligence models which is trained to output one of a plurality of actual index values. The one of the actual index values is compared to a range within the actual index values to determine when the one of the actual index value points to the data block. A received input-output operation is performed on the data block when the one of the actual index values is determined to point to the data block.
    Type: Grant
    Filed: January 24, 2020
    Date of Patent: June 28, 2022
    Assignee: NETAPP, INC.
    Inventor: Douglas Joseph Santry
  • Patent number: 11218391
    Abstract: Methods, non-transitory machine readable media, and computing devices that manage data storage fabric health are disclosed. With this technology, a network model is applied to network data determined from monitored network traffic exchanged between storage nodes and via network connections over a cluster fabric to generate a health score for the cluster fabric. A cause of health degradation in the cluster fabric is determined based on an analysis of the network data, when the health score indicates that health of the cluster fabric is degrading. A corrective action is automatically initiated based on the cause of health degradation in the cluster fabric. With this technology, cluster fabrics in data storage networks are more effectively monitored for health degradation and, advantageously, corrective actions can be preemptively initiated to improve performance.
    Type: Grant
    Filed: October 18, 2019
    Date of Patent: January 4, 2022
    Assignee: NETAPP, INC.
    Inventors: Vijay Singh, Abhishek Mishra, Douglas Joseph Santry, Niranjan Desai, Anusha Sivananainthaperumal
  • Publication number: 20210342674
    Abstract: The present technology relates to identifying an artificial intelligence model based on a received first key value to write a received first block of data associated with a file. The received first key value is applied to the identified artificial intelligence model which is trained to output one of a plurality of actual index values where the identified artificial intelligence model and the plurality of data blocks are stored as a neural tree. The one of the actual index values is compared to a range within the actual index values to determine when the one of the actual index value points to a first data block of the plurality of data. The received first block of data associated with the file is written into the determined first data block.
    Type: Application
    Filed: May 4, 2020
    Publication date: November 4, 2021
    Inventor: Douglas Joseph Santry
  • Publication number: 20210232626
    Abstract: The present technology relates to identifying one of a plurality of artificial intelligence models based on a received key value. The received key value is applied to the identified one of the artificial intelligence models which is trained to output one of a plurality of actual index values. The one of the actual index values is compared to a range within the actual index values to determine when the one of the actual index value points to the data block. A received input-output operation is performed on the data block when the one of the actual index values is determined to point to the data block.
    Type: Application
    Filed: January 24, 2020
    Publication date: July 29, 2021
    Inventor: Douglas Joseph Santry
  • Publication number: 20200177482
    Abstract: Methods, non-transitory machine readable media, and computing devices that manage data storage fabric health are disclosed. With this technology, a network model is applied to network data determined from monitored network traffic exchanged between storage nodes and via network connections over a cluster fabric to generate a health score for the cluster fabric. A cause of health degradation in the cluster fabric is determined based on an analysis of the network data, when the health score indicates that health of the cluster fabric is degrading. A corrective action is automatically initiated based on the cause of health degradation in the cluster fabric. With this technology, cluster fabrics in data storage networks are more effectively monitored for health degradation and, advantageously, corrective actions can be preemptively initiated to improve performance.
    Type: Application
    Filed: October 18, 2019
    Publication date: June 4, 2020
    Inventors: Vijay Singh, Abhishek Mishra, Douglas Joseph Santry, Niranjan Desai, Anusha Sivananainthaperumal
  • Publication number: 20190199794
    Abstract: A system and method for efficiently replicating data stored in a byte-addressable, persistent memory of a host computer. A user-level library of the host computer may configure the persistent memory as a software transactional memory (STM) system defined by operations, such as a STM commit operation, that ensure safe and consistent storage of the data within a region of the persistent memory. The library may then cooperate with an application executing on the host computer to control access to the data, e.g., to change the data, as a transaction using the STM commit operation. Within a context of the transaction, the library may precisely determine which bytes of the data have changed within the region, as well as how and when the data bytes have changed. Armed with precise knowledge of the context of the transaction, the library may efficiently replicate the changed data at the byte-addressable granularity.
    Type: Application
    Filed: December 18, 2018
    Publication date: June 27, 2019
    Inventor: Douglas Joseph Santry
  • Patent number: 10158710
    Abstract: A system and method for efficiently replicating data stored in a byte-addressable, persistent memory of a host computer. A user-level library of the host computer may configure the persistent memory as a software transactional memory (STM) system defined by operations, such as a STM commit operation, that ensure safe and consistent storage of the data within a region of the persistent memory. The library may then cooperate with an application executing on the host computer to control access to the data, e.g., to change the data, as a transaction using the STM commit operation. Within a context of the transaction, the library may precisely determine which bytes of the data have changed within the region, as well as how and when the data bytes have changed. Armed with precise knowledge of the context of the transaction, the library may efficiently replicate the changed data at the byte-addressable granularity.
    Type: Grant
    Filed: October 30, 2015
    Date of Patent: December 18, 2018
    Assignee: NetApp, Inc.
    Inventor: Douglas Joseph Santry
  • Patent number: 9934008
    Abstract: A method, non-transitory computer readable medium, and application host computing device that parses assembly language code to identify a transaction block including an assignment to a memory location, the assembly language code associated with an application and output by a compiler. The assembly language code is modified to insert an invocation of a plurality of functions collectively configured to facilitate persistent storage of one or more data updates associated with the assignment at run-time. The assembly language code is assembled to generate object code and the object code is linked with at least a run-time library including a definition for each of the plurality of inserted functions to generate an executable file for the application.
    Type: Grant
    Filed: June 18, 2014
    Date of Patent: April 3, 2018
    Assignee: NetApp, Inc.
    Inventor: Douglas Joseph Santry
  • Patent number: 9411533
    Abstract: A system and method enables efficient implementation of snapshots of data organized as arbitrary data structures on a byte-addressable persistent memory of a host computer. A user-level library of the host computer may configure the persistent memory as a software transactional memory (STM) system defined by operations, such as a STM commit operation, that ensure safe and consistent storage of the data (i.e., the data structures) within a region of the persistent memory. The library may then cooperate with an application executing on the host computer to control access to a data structure, e.g., to change a datum, stored in the region of the persistent memory as a transaction using the STM commit operation. Within a context of the transaction, the library may precisely determine which byte or bytes of the datum have changed within the region, as well as how and when the bytes have changed. Armed with precise knowledge of the context of the transaction, the library may efficiently implement a snapshot (i.e.
    Type: Grant
    Filed: May 23, 2013
    Date of Patent: August 9, 2016
    Assignee: NetApp, Inc.
    Inventor: Douglas Joseph Santry
  • Patent number: 9307024
    Abstract: The embodiments described herein provide a system and method for efficiently storing small, random modifications or changes to data on one or more storage devices, such as disks, of storage servers coupled to a host computer in a network environment. Illustratively, the data is stored in a region of a byte-addressable, persistent memory of the host computer and is replicated (i.e., copied) as changed data of the region on the disks at the granularity at which it was modified, e.g., at the byte-addressable granularity. To that end, each storage server employs a data structure (e.g., a Fibonacci array) that is configured to efficiently accumulate the small, random data changes into one or more large blocks of changed data for storage on the disks in a manner that realizes the streaming bandwidth of the disk.
    Type: Grant
    Filed: October 30, 2015
    Date of Patent: April 5, 2016
    Assignee: NetApp, Inc.
    Inventor: Douglas Joseph Santry
  • Publication number: 20160050275
    Abstract: A system and method for efficiently replicating data stored in a byte-addressable, persistent memory of a host computer. A user-level library of the host computer may configure the persistent memory as a software transactional memory (STM) system defined by operations, such as a STM commit operation, that ensure safe and consistent storage of the data within a region of the persistent memory. The library may then cooperate with an application executing on the host computer to control access to the data, e.g., to change the data, as a transaction using the STM commit operation. Within a context of the transaction, the library may precisely determine which bytes of the data have changed within the region, as well as how and when the data bytes have changed. Armed with precise knowledge of the context of the transaction, the library may efficiently replicate the changed data at the byte-addressable granularity.
    Type: Application
    Filed: October 30, 2015
    Publication date: February 18, 2016
    Inventor: Douglas Joseph Santry
  • Publication number: 20160050276
    Abstract: The embodiments described herein provide a system and method for efficiently storing small, random modifications or changes to data on one or more storage devices, such as disks, of storage servers coupled to a host computer in a network environment. Illustratively, the data is stored in a region of a byte-addressable, persistent memory of the host computer and is replicated (i.e., copied) as changed data of the region on the disks at the granularity at which it was modified, e.g., at the byte-addressable granularity. To that end, each storage server employs a data structure (e.g., a Fibonacci array) that is configured to efficiently accumulate the small, random data changes into one or more large blocks of changed data for storage on the disks in a manner that realizes the streaming bandwidth of the disk.
    Type: Application
    Filed: October 30, 2015
    Publication date: February 18, 2016
    Inventor: Douglas Joseph Santry
  • Publication number: 20150370544
    Abstract: A method, non-transitory computer readable medium, and application host computing device that parses assembly language code to identify a transaction block including an assignment to a memory location, the assembly language code associated with an application and output by a compiler. The assembly language code is modified to insert an invocation of a plurality of functions collectively configured to facilitate persistent storage of one or more data updates associated with the assignment at run-time. The assembly language code is assembled to generate object code and the object code is linked with at least a run-time library including a definition for each of the plurality of inserted functions to generate an executable file for the application.
    Type: Application
    Filed: June 18, 2014
    Publication date: December 24, 2015
    Inventor: Douglas Joseph Santry
  • Patent number: 9213501
    Abstract: The embodiments described herein provide a system and method for efficiently storing small, random modifications or changes to data on one or more storage devices, such as disks, of storage servers coupled to a host computer in a network environment. Illustratively, the data is stored in a region of a byte-addressable, persistent memory of the host computer and is replicated (i.e., copied) as changed data of the region on the disks at the granularity at which it was modified, e.g., at the byte-addressable granularity. To that end, each storage server employs a data structure (e.g., a Fibonacci array) that is configured to efficiently accumulate the small, random data changes into one or more large blocks of changed data for storage on the disks in a manner that realizes the streaming bandwidth of the disk.
    Type: Grant
    Filed: May 23, 2013
    Date of Patent: December 15, 2015
    Assignee: NetApp, Inc.
    Inventor: Douglas Joseph Santry
  • Patent number: 9201609
    Abstract: A system and method for efficiently replicating data stored in a byte-addressable, persistent memory of a host computer. A user-level library of the host computer may configure the persistent memory as a software transactional memory (STM) system defined by operations, such as a STM commit operation, that ensure safe and consistent storage of the data within a region of the persistent memory. The library may then cooperate with an application executing on the host computer to control access to the data, e.g., to change the data, as a transaction using the STM commit operation. Within a context of the transaction, the library may precisely determine which bytes of the data have changed within the region, as well as how and when the data bytes have changed. Armed with precise knowledge of the context of the transaction, the library may efficiently replicate the changed data at the byte-addressable granularity.
    Type: Grant
    Filed: May 23, 2013
    Date of Patent: December 1, 2015
    Assignee: NetApp, Inc.
    Inventor: Douglas Joseph Santry
  • Publication number: 20140351536
    Abstract: A system and method for efficiently replicating data stored in a byte-addressable, persistent memory of a host computer. A user-level library of the host computer may configure the persistent memory as a software transactional memory (STM) system defined by operations, such as a STM commit operation, that ensure safe and consistent storage of the data within a region of the persistent memory. The library may then cooperate with an application executing on the host computer to control access to the data, e.g., to change the data, as a transaction using the STM commit operation. Within a context of the transaction, the library may precisely determine which bytes of the data have changed within the region, as well as how and when the data bytes have changed. Armed with precise knowledge of the context of the transaction, the library may efficiently replicate the changed data at the byte-addressable granularity.
    Type: Application
    Filed: May 23, 2013
    Publication date: November 27, 2014
    Applicant: NetApp, Inc.
    Inventor: Douglas Joseph Santry
  • Publication number: 20140351506
    Abstract: The embodiments described herein provide a system and method for efficiently storing small, random modifications or changes to data on one or more storage devices, such as disks, of storage servers coupled to a host computer in a network environment. Illustratively, the data is stored in a region of a byte-addressable, persistent memory of the host computer and is replicated (i.e., copied) as changed data of the region on the disks at the granularity at which it was modified, e.g., at the byte-addressable granularity. To that end, each storage server employs a data structure (e.g., a Fibonacci array) that is configured to efficiently accumulate the small, random data changes into one or more large blocks of changed data for storage on the disks in a manner that realizes the streaming bandwidth of the disk.
    Type: Application
    Filed: May 23, 2013
    Publication date: November 27, 2014
    Applicant: NetApp, Inc.
    Inventor: Douglas Joseph Santry
  • Publication number: 20140351535
    Abstract: A system and method enables efficient implementation of snapshots of data organized as arbitrary data structures on a byte-addressable persistent memory of a host computer. A user-level library of the host computer may configure the persistent memory as a software transactional memory (STM) system defined by operations, such as a STM commit operation, that ensure safe and consistent storage of the data (i.e., the data structures) within a region of the persistent memory. The library may then cooperate with an application executing on the host computer to control access to a data structure, e.g., to change a datum, stored in the region of the persistent memory as a transaction using the STM commit operation. Within a context of the transaction, the library may precisely determine which byte or bytes of the datum have changed within the region, as well as how and when the bytes have changed. Armed with precise knowledge of the context of the transaction, the library may efficiently implement a snapshot (i.e.
    Type: Application
    Filed: May 23, 2013
    Publication date: November 27, 2014
    Applicant: NetApp, Inc.
    Inventor: Douglas Joseph Santry