Patents by Inventor Daniel McCarthy
Daniel McCarthy 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: 12591552Abstract: A distributed storage management system comprising nodes that form a cluster, a distributed block layer that spans the nodes in the cluster, and file system instances deployed on the nodes. Each file system instance comprises a data management subsystem and a storage management subsystem disaggregated from the data management subsystem. The storage management subsystem comprises a node block store that forms a portion of the distributed block layer and a storage manager that manages a key-value store and virtualized storage supporting the node block store. A file system volume hosted by the data management subsystem maps to a logical block device hosted by the virtualized storage in the storage management subsystem. The key-value store includes, for a data block of the logical block device, a key that comprises a block identifier for the logical block device and a value that comprises the data block.Type: GrantFiled: July 22, 2024Date of Patent: March 31, 2026Assignee: NetApp, Inc.Inventors: Ravikanth Dronamraju, Ananthan Subramanian, Daniel McCarthy, Christopher Cason, Arindam Banerjee
-
Patent number: 12585670Abstract: Systems and methods for scaling application and/or storage system functions of a distributed storage system based on a heterogeneous resource pool are provided. According to one embodiment, the distributed storage system has a composable, service-based architecture that provides scalability, resiliency, and load balancing. The distributed storage system includes a cluster of nodes each potentially having differing capabilities in terms of processing, memory, and/or storage. The distributed storage system takes advantage of different types of nodes by selectively instating appropriate services (e.g., file and volume services and/or block and storage management services) on the nodes based on their respective capabilities. Furthermore, disaggregation of these services, facilitated by interposing a frictionless layer (e.g.Type: GrantFiled: August 30, 2024Date of Patent: March 24, 2026Assignee: NetApp, Inc.Inventors: Arindam Banerjee, Daniel McCarthy, Christopher Cason, Ananthan Subramanian
-
Publication number: 20250362814Abstract: Techniques are provided for repairing a primary slice file, affected by a storage device error, by using one or more dead replica slice files. The primary slice file is used by a node of a distributed storage architecture as an indirection layer between storage containers (e.g., a volume or LUN) and physical storage where data is physically stored. To improve resiliency of the distributed storage architecture, changes to the primary slice file are replicated to replica slice files hosted by other nodes. If a replica slice file falls out of sync with the primary slice file, then the replica slice file is considered dead (out of sync) and could potentially comprise stale data. If a storage device error affects blocks storing data of the primary slice file, then the techniques provided herein can repair the primary slice file using non-stale data from one or more dead replica slice files.Type: ApplicationFiled: August 11, 2025Publication date: November 27, 2025Inventors: Bharadwaj Vellore Ramesh, Daniel McCarthy, Christopher Lee Cason, Ananthan Subramanian
-
Patent number: 12416478Abstract: Exemplary embodiments of apparatus and methods for remotely and explosively cutting the casing of a UXO and separating the fuzing components from the main charge in the UXO. A remote explosive separation tool creates a Linear Explosively Formed Projectile (LEFP) charge to separate fuzing components from live explosive threats in UXO, for example only, a 155 mm artillery round. The tool functions by explosively deforming a copper liner into a linear projectile or penetrator which then impacts the UXO casing. The speed of impact enables the fuzing elements of the UXO to be removed from the main charge of the UXO either by directly cutting the fuze elements off or by imparting the fuze elements with enough momentum such that they break off. The process of dismembering the fuze elements occurs without detonating the main charge of the UXO. The tool may be remotely placed by an unmanned vehicle.Type: GrantFiled: October 31, 2024Date of Patent: September 16, 2025Assignee: The United States of America as represented by the Secretary of the NavyInventors: Michael Shattuck, Daniel Mccarthy, Lee Foltz, Adam Pegouske
-
Patent number: 12386525Abstract: Techniques are provided for repairing a primary slice file, affected by a storage device error, by using one or more dead replica slice files. The primary slice file is used by a node of a distributed storage architecture as an indirection layer between storage containers (e.g., a volume or LUN) and physical storage where data is physically stored. To improve resiliency of the distributed storage architecture, changes to the primary slice file are replicated to replica slice files hosted by other nodes. If a replica slice file falls out of sync with the primary slice file, then the replica slice file is considered dead (out of sync) and could potentially comprise stale data. If a storage device error affects blocks storing data of the primary slice file, then the techniques provided herein can repair the primary slice file using non-stale data from one or more dead replica slice files.Type: GrantFiled: June 17, 2024Date of Patent: August 12, 2025Assignee: NetApp, Inc.Inventors: Bharadwaj Vellore Ramesh, Daniel McCarthy, Christopher Lee Cason, Ananthan Subramanian
-
Patent number: 12367184Abstract: In various examples, data storage is managed using a distributed storage management system that is resilient. Data blocks of a logical block device may be distributed across multiple nodes in a cluster. The logical block device may correspond to a file system volume associated with a file system instance deployed on a selected node within a distributed block layer of a distributed file system. Each data block may have a location in the cluster identified by a block identifier associated with each data block. Each data block may be replicated on at least one other node in the cluster. A metadata object corresponding to a logical block device that maps to the file system volume may be replicated on at least another node in the cluster. Each data block and the metadata object may be hosted on virtualized storage that is protected using redundant array independent disks (RAID).Type: GrantFiled: July 15, 2024Date of Patent: July 22, 2025Assignee: NetApp, Inc.Inventors: Ravikanth Dronamraju, Ananthan Subramanian, Daniel McCarthy, Christopher Cason, Arindam Banerjee
-
Publication number: 20250086075Abstract: Techniques are provided for failing over an aggregate from one file system instance to a different file system instance of a distributed scale-out storage system. The aggregate may be stored within distributed storage that is accessible to a plurality of file system instances of the distributed scale-out storage system. When the aggregate is failed over from a first file system instance to a second file system instance, the first file system instance may still have a valid read lease that allows the first file system instance to serve client I/O, directed to the aggregate, using a cache. In order to prevent the first file system instance from serving stale data from the cache before the read lease expires, state machines and a set of control data are used to ensure that the second file system instance attaches to the aggregate only after the read lease has expired.Type: ApplicationFiled: November 25, 2024Publication date: March 13, 2025Inventors: Yash Hetal Trivedi, Daniel McCarthy, Ananthan Subramanian, William Arthur Gutknecht, Kevin Daniel Varghese, Swaroop Vikram Choudhari, Abdul Basit, Christopher Clark Corey, Chad Edmund Schneider
-
Publication number: 20250068600Abstract: A method for reducing write latency in a distributed file system. A write request that includes a volume identifier is received at a data management subsystem deployed on a node within a distributed storage system. The data management subsystem maps the volume identifier to a file system volume and maps the file system volume to a set of logical block addresses in a logical block device in a storage management subsystem deployed on the node. The storage management subsystem maps the logical block device to a metadata object for the logical block device on the node that is used to process the write request. The mapping of the file system volume to the set of logical block addresses in the logical block device enables co-locating the metadata object with the file system volume on the node, which reduces the write latency associated with processing the write request.Type: ApplicationFiled: November 8, 2024Publication date: February 27, 2025Applicant: NetApp, Inc.Inventors: Ananthan Subramanian, Daniel McCarthy, Arindam Banerjee
-
Publication number: 20250060881Abstract: Techniques are provided for dynamically implementing quality of service policies for a distributed storage system based upon resources saturation. A quality of service policy is defined for throttling I/O operations received by a node of the distributed storage system based upon whether resources of the node have become saturated. The quality of service policy is dynamically implemented based upon ever changing resource utilization and saturation. Dynamically implementing the quality of service policy improves the ability to efficiently utilize resources of the node compared to conventional static polices that cannot adequately react to such changing considerations and resource utilization/saturation. With conventional static policies, an administrator manually defines a minimum amount of guaranteed resources and/or a maximum resource usage cap that could be set to values that result in inefficient operation and resource starvation.Type: ApplicationFiled: November 4, 2024Publication date: February 20, 2025Inventors: Abdul Basit, Daniel McCarthy, Christopher Lee Cason, Jian Hu
-
Publication number: 20250047575Abstract: Techniques are provided for dynamically implementing quality of service policies using a configurable quality of service provider pipeline. A quality of service policy is defined for throttling I/O operations received by a node based upon whether resources of the node have become over utilized. The quality of service policy is used to dynamically construct a quality of service provider pipeline with select quality of service providers that improve the ability to efficiently utilize resources compared to conventional static polices that cannot adequately react to changing considerations and resource utilization/saturation. With conventional static policies, an administrator manually defines a minimum amount of guaranteed resources and/or a maximum resource usage cap that could be set to values that result in inefficient operation and resource starvation. Dynamically constructing and utilizing the quality of service provider pipeline results in more efficient operation and mitigates resource starvation.Type: ApplicationFiled: October 21, 2024Publication date: February 6, 2025Inventors: Abdul Basit, Daniel McCarthy, Christopher Lee Cason, Jian Hu
-
Publication number: 20250013614Abstract: A distributed storage management system comprising nodes that form a cluster, a distributed block layer that spans the nodes in the cluster, and file system instances deployed on the nodes. Each file system instance comprises a data management subsystem and a storage management subsystem disaggregated from the data management subsystem. The storage management subsystem comprises a node block store that forms a portion of the distributed block layer and a storage manager that manages a key-value store and virtualized storage supporting the node block store. A file system volume hosted by the data management subsystem maps to a logical block device hosted by the virtualized storage in the storage management subsystem. The key-value store includes, for a data block of the logical block device, a key that comprises a block identifier for the logical block device and a value that comprises the data block.Type: ApplicationFiled: July 22, 2024Publication date: January 9, 2025Applicant: NetApp, Inc.Inventors: Ravikanth Dronamraju, Ananthan Subramanian, Daniel McCarthy, Christopher Cason, Arindam Banerjee
-
Publication number: 20250013544Abstract: The disclosed technology enables quicker initialization of a new master node for a cluster when a previous master node fails by tracking node state in the cluster prior to being designated the new master node. In a particular example, a method includes, in a first node, designated as a current master node for the cluster, managing the cluster based on states of the nodes determined by the first node. While the first node is designated the master node, the method includes each of the nodes collecting, and storing locally, the states of the nodes. In response to a failure of the first node, the method includes selecting a second node of the nodes a new master node. Upon being designated the new master node, the method includes the second node managing the cluster of nodes based on the states of the nodes that the second node collected and stored locally.Type: ApplicationFiled: August 19, 2024Publication date: January 9, 2025Inventors: Daniel McCarthy, Lisa Week
-
Publication number: 20240427799Abstract: Systems and methods for scaling application and/or storage system functions of a distributed storage system based on a heterogeneous resource pool are provided. According to one embodiment, the distributed storage system has a composable, service-based architecture that provides scalability, resiliency, and load balancing. The distributed storage system includes a cluster of nodes each potentially having differing capabilities in terms of processing, memory, and/or storage. The distributed storage system takes advantage of different types of nodes by selectively instating appropriate services (e.g., file and volume services and/or block and storage management services) on the nodes based on their respective capabilities. Furthermore, disaggregation of these services, facilitated by interposing a frictionless layer (e.g.Type: ApplicationFiled: August 30, 2024Publication date: December 26, 2024Applicant: NetApp, Inc.Inventors: Arindam Banerjee, Daniel McCarthy, Christopher Cason, Ananthan Subramanian
-
Patent number: 12153504Abstract: Techniques are provided for failing over an aggregate from one file system instance to a different file system instance of a distributed scale-out storage system. The aggregate may be stored within distributed storage that is accessible to a plurality of file system instances of the distributed scale-out storage system. When the aggregate is failed over from a first file system instance to a second file system instance, the first file system instance may still have a valid read lease that allows the first file system instance to serve client I/O, directed to the aggregate, using a cache. In order to prevent the first file system instance from serving stale data from the cache before the read lease expires, state machines and a set of control data are used to ensure that the second file system instance attaches to the aggregate only after the read lease has expired.Type: GrantFiled: December 27, 2022Date of Patent: November 26, 2024Assignee: NetApp, Inc.Inventors: Yash Hetal Trivedi, Daniel McCarthy, Ananthan Subramanian, William Arthur Gutknecht, Kevin Daniel Varghese, Swaroop Vikram Choudhari, Abdul Basit, Christopher Clark Corey, Chad Edmund Schneider
-
Patent number: 12141104Abstract: A method for reducing write latency in a distributed file system. A write request that includes a volume identifier is received at a data management subsystem deployed on a node within a distributed storage system. The data management subsystem maps the volume identifier to a file system volume and maps the file system volume to a set of logical block addresses in a logical block device in a storage management subsystem deployed on the node. The storage management subsystem maps the logical block device to a metadata object for the logical block device on the node that is used to process the write request. The mapping of the file system volume to the set of logical block addresses in the logical block device enables co-locating the metadata object with the file system volume on the node, which reduces the write latency associated with processing the write request.Type: GrantFiled: October 1, 2021Date of Patent: November 12, 2024Assignee: NetApp, Inc.Inventors: Ananthan Subramanian, Daniel McCarthy, Arindam Banerjee
-
Publication number: 20240370410Abstract: In various examples, data storage is managed using a distributed storage management system that is resilient. Data blocks of a logical block device may be distributed across multiple nodes in a cluster. The logical block device may correspond to a file system volume associated with a file system instance deployed on a selected node within a distributed block layer of a distributed file system. Each data block may have a location in the cluster identified by a block identifier associated with each data block. Each data block may be replicated on at least one other node in the cluster. A metadata object corresponding to a logical block device that maps to the file system volume may be replicated on at least another node in the cluster. Each data block and the metadata object may be hosted on virtualized storage that is protected using redundant array independent disks (RAID).Type: ApplicationFiled: July 15, 2024Publication date: November 7, 2024Applicant: NetApp, Inc.Inventors: Ravikanth Dronamraju, Ananthan Subramanian, Daniel McCarthy, Christopher Cason, Arindam Banerjee
-
Patent number: 12135880Abstract: Techniques are provided for dynamically implementing quality of service policies for a distributed storage system based upon resources saturation. A quality of service policy is defined for throttling I/O operations received by a node of the distributed storage system based upon whether resources of the node have become saturated. The quality of service policy is dynamically implemented based upon ever changing resource utilization and saturation. Dynamically implementing the quality of service policy improves the ability to efficiently utilize resources of the node compared to conventional static polices that cannot adequately react to such changing considerations and resource utilization/saturation. With conventional static policies, an administrator manually defines a minimum amount of guaranteed resources and/or a maximum resource usage cap that could be set to values that result in inefficient operation and resource starvation.Type: GrantFiled: April 26, 2023Date of Patent: November 5, 2024Assignee: NetApp, Inc.Inventors: Abdul Basit, Daniel McCarthy, Christopher Lee Cason, Jian Hu
-
Publication number: 20240361912Abstract: Techniques are provided for dynamically implementing quality of service policies for a distributed storage system based upon resources saturation. A quality of service policy is defined for throttling I/O operations received by a node of the distributed storage system based upon whether resources of the node have become saturated. The quality of service policy is dynamically implemented based upon ever changing resource utilization and saturation. Dynamically implementing the quality of service policy improves the ability to efficiently utilize resources of the node compared to conventional static polices that cannot adequately react to such changing considerations and resource utilization/saturation. With conventional static policies, an administrator manually defines a minimum amount of guaranteed resources and/or a maximum resource usage cap that could be set to values that result in inefficient operation and resource starvation.Type: ApplicationFiled: April 26, 2023Publication date: October 31, 2024Inventors: Abdul Basit, Daniel McCarthy, Christopher Lee Cason, Jian Hu
-
Patent number: D1115838Type: GrantFiled: June 28, 2024Date of Patent: March 3, 2026Assignee: AGILENT TECHNOLOGIES, INC.Inventors: Melanie Thoma, Chase Peterson, Daniel Mccarthy, Simon Knipper, Peter Nill, Helen Anders
-
Patent number: D1126228Type: GrantFiled: June 28, 2024Date of Patent: May 12, 2026Assignee: AGILENT TECHNOLOGIES, INC.Inventors: Melanie Thoma, Chase Peterson, Daniel Mccarthy, Simon Knipper, Peter Nill, Helen Anders