Patents by Inventor Byron Rakitzis
Byron Rakitzis 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: 10203986Abstract: Embodiments are directed towards managing the distribution of tasks in a storage system. An execution path for tasks may be generated based on the type of the task and characteristics of the storage system such that the execution path includes storage computers in a storage system. The tasks may be provided to each storage computer in the execution path. A working set of intermediate results may be generated on the storage computer in the execution path. If there is more than one storage computer in the execution path, working sets may be iteratively communicated to a next storage computer in the execution path such that the next storage computer employs a previously generated working set to generate a next working set until each storage computer in the execution path has been employed to generate a working set. The results may be stored on the storage computers.Type: GrantFiled: November 30, 2015Date of Patent: February 12, 2019Assignee: Igneous Systems, Inc.Inventors: Triantaphyllos Byron Rakitzis, Eric Michael Lemar, Jeffrey Douglas Hughes, Kiran V. Bhageshpur, Anu Engineer
-
Patent number: 10013311Abstract: Embodiments described herein are directed to a file system driven RAID rebuild technique. A layered file system may organize storage of data as segments spanning one or more sets of storage devices, such as solid state drives (SSDs), of a storage array, wherein each set of SSDs may form a RAID group configured to provide data redundancy for a segment. The file system may then drive (i.e., initiate) rebuild of a RAID configuration of the SSDs on a segment-by-segment basis in response to cleaning of the segment (i.e., segment cleaning). Each segment may include one or more RAID stripes that provide a level of data redundancy (e.g., single parity RAID 5 or double parity RAID 6) as well as RAID organization (i.e., distribution of data and parity) for the segment. Notably, the level of data redundancy and RAID organization may differ among the segments of the array.Type: GrantFiled: May 27, 2016Date of Patent: July 3, 2018Assignee: NetApp, Inc.Inventors: Rajesh Sundaram, Bharat Baddepudi, Jeffrey S. Kimmel, T. Byron Rakitzis
-
Publication number: 20180101310Abstract: Embodiments are directed to storing data in a storage system. Data portions may be provided from blocks of write data provided by client computers. A storage location identifier may be associated with each data portion based on the content of the each data portion. Data portions may be stored in a memory buffer that may correspond to the storage location identifiers. If an amount of data stored in the memory buffer exceeds a threshold value, or if a maximum latency time expires, the data portions are stored on a storage location that corresponds to the memory buffer, such that, the maximum latency time is selected to prevent a collision caused by simultaneously storing of data portions in the same storage location. A write acknowledgement message may be provided to the client computers indicating that the blocks of write data are stored to stable storage.Type: ApplicationFiled: October 11, 2016Publication date: April 12, 2018Inventors: Eric Michael Lemar, Jeffrey Douglas Hughes, Triantaphyllos Byron Rakitzis, Kiran V. Bhageshpur
-
Patent number: 9940035Abstract: Embodiments are directed to storing data in a storage system. Data portions may be provided from blocks of write data provided by client computers. A storage location identifier may be associated with each data portion based on the content of the each data portion. Data portions may be stored in a memory buffer that may correspond to the storage location identifiers. If an amount of data stored in the memory buffer exceeds a threshold value, or if a maximum latency time expires, the data portions are stored on a storage location that corresponds to the memory buffer, such that, the maximum latency time is selected to prevent a collision caused by simultaneously storing of data portions in the same storage location. A write acknowledgement message may be provided to the client computers indicating that the blocks of write data are stored to stable storage.Type: GrantFiled: October 11, 2016Date of Patent: April 10, 2018Assignee: Igeneous Systems, Inc.Inventors: Eric Michael Lemar, Jeffrey Douglas Hughes, Triantaphyllos Byron Rakitzis, Kiran V. Bhageshpur
-
Patent number: 9639278Abstract: The embodiments described herein are directed to the use of hashing in a file system metadata arrangement that reduces an amount of metadata stored in a memory of a node in a cluster and that reduces the amount of metadata needed to process an input/output (I/O) request at the node. Illustratively, the embodiments are directed to cuckoo hashing and, in particular, to a manner in which cuckoo hashing may be modified and applied to construct the file system metadata arrangement. In an embodiment, the file system metadata arrangement may be illustratively include a hash collision technique that employs a hash collision computation to determine a unique candidate extent key (having a candidate hash table index) in the event of a collision, i.e., a hash table index collides with a slot of a hash table matching a key found in the slot.Type: GrantFiled: October 29, 2015Date of Patent: May 2, 2017Assignee: NetApp, Inc.Inventors: Jeffrey S. Kimmel, T. Byron Rakitzis
-
Patent number: 9454434Abstract: In one embodiment, one or more storage arrays of solid state drives (SSDs) that include a plurality of segments are organized as one or more redundant array of independent disks (RAID) groups, where the RAID groups provides data redundancy for the segments. A node executing a layered file system of a storage input/output (I/O) stack performs segment cleaning to clean the segments. It further initiates rebuild of a RAID configuration of the SSDs on a segment-by-segment basis in response to the segment cleaning. In such a configuration, each segment includes one or more RAID stripes that provide a level of data redundancy as well as RAID organization for the segment.Type: GrantFiled: January 17, 2014Date of Patent: September 27, 2016Assignee: NetApp, Inc.Inventors: Rajesh Sundaram, Bharat Baddepudi, Jeffrey S. Kimmel, T. Byron Rakitzis
-
Publication number: 20160274973Abstract: Embodiments described herein are directed to a file system driven RAID rebuild technique. A layered file system may organize storage of data as segments spanning one or more sets of storage devices, such as solid state drives (SSDs), of a storage array, wherein each set of SSDs may form a RAID group configured to provide data redundancy for a segment. The file system may then drive (i.e., initiate) rebuild of a RAID configuration of the SSDs on a segment-by-segment basis in response to cleaning of the segment (i.e., segment cleaning). Each segment may include one or more RAID stripes that provide a level of data redundancy (e.g., single parity RAID 5 or double parity RAID 6) as well as RAID organization (i.e., distribution of data and parity) for the segment. Notably, the level of data redundancy and RAID organization may differ among the segments of the array.Type: ApplicationFiled: May 27, 2016Publication date: September 22, 2016Inventors: Rajesh Sundaram, Bharat Baddepudi, Jeffrey S. Kimmel, T. Byron Rakitzis
-
Patent number: 9400607Abstract: Embodiments are directed towards storing data in a storage system. A data controller may obtain a write request and write data from a client computer. A write message may be generated and provided to a data coordinator computer. The data coordinator may communicate the write message to a plurality of L-node computers. The data coordinator may obtain write confirmation messages from the L-node computers that indicate that the write data is stored. If enough write confirmation messages are obtained to indicate that a quorum is reached, the data coordinator may communicate a save confirmation message to the data controller. The data controller may generate a write acknowledgement message based on the save confirmation message provided by the data coordinator. The data controller may provide the write acknowledgement message to the client computer that made the original write request.Type: GrantFiled: July 28, 2015Date of Patent: July 26, 2016Assignee: Igneous Systems, Inc.Inventors: Asif Arif Daud, Andrew Martin Pilloud, Eric Michael Lemar, Triantaphyllos Byron Rakitzis
-
Patent number: 9389958Abstract: In one embodiment, a file system driven RAID rebuild technique is provided. A layered file system may organize storage of data as segments spanning one or more sets of storage devices, such as solid state drives (SSDs), of a storage array, wherein each set of SSDs may form a RAID group configured to provide data redundancy for a segment. The file system may then drive (i.e., initiate) rebuild of a RAID configuration of the SSDs on a segment-by-segment basis in response to cleaning of the segment (i.e., segment cleaning). Each segment may include one or more RAID stripes that provide a level of data redundancy (e.g., single parity RAID 5 or double parity RAID 6) as well as RAID organization (i.e., distribution of data and parity) for the segment. Notably, the level of data redundancy and RAID organization may differ among the segments of the array.Type: GrantFiled: January 22, 2014Date of Patent: July 12, 2016Assignee: NetApp, Inc.Inventors: Rajesh Sundaram, Bharat Baddepudi, Jeffrey S. Kimmel, T. Byron Rakitzis
-
Publication number: 20160132396Abstract: In one embodiment, an extent store layer of a storage input/output (I/O) stack executing on one or more nodes of a cluster manages efficient logging and checkpointing of metadata. The metadata managed by the extent store layer, i.e., the extent store metadata, resides in a memory (in-core) of each node and is illustratively organized as a key-value extent store embodied as one or more data structures, e.g., a set of hash tables. Changes to the set of hash tables are recorded as a continuous stream of changes to SSD embodied as an extent store layer log. A separate log stream structure (e.g., an in-core buffer) may be associated respectively with each hash table such that changed (i.e., dirtied) slots of the hash table are recorded as entries in the log stream structure. The hash tables are written to SSD using a fuzzy checkpointing technique.Type: ApplicationFiled: January 20, 2016Publication date: May 12, 2016Inventors: Jeffrey S. Kimmel, T. Byron Rakitzis
-
Patent number: 9305666Abstract: Embodiments are directed towards managing data storage that may experience a data failure. If a repair event is associated with a data storage failure, a new repair task may be generated and added to a task list. A priority value for each repair task in the task list may be determined based in part on the mean-time-to-data-loss (MTTDL) value associated with each repair task in the task list such that a lower MTTDL may indicate a higher priority value over a lower MTTDL. One or more repair tasks may be promoted to become active repair tasks based on the priority value the repair tasks such that the promoted repair tasks have a higher priority that than other repair tasks in the task list, if any. Each active repair task may be executed to repair one or more associated the storage failures.Type: GrantFiled: July 6, 2015Date of Patent: April 5, 2016Assignee: Igneous Systems, Inc.Inventors: Triantaphyllos Byron Rakitzis, Eric Michael Lemar, Jeffrey Douglas Hughes, Kiran V. Bhageshpur
-
Publication number: 20160085588Abstract: Embodiments are directed towards managing the distribution of tasks in a storage system. An execution path for tasks may be generated based on the type of the task and characteristics of the storage system such that the execution path includes storage computers in a storage system. The tasks may be provided to each storage computer in the execution path. A working set of intermediate results may be generated on the storage computer in the execution path. If there is more than one storage computer in the execution path, working sets may be iteratively communicated to a next storage computer in the execution path such that the next storage computer employs a previously generated working set to generate a next working set until each storage computer in the execution path has been employed to generate a working set. The results may be stored on the storage computers.Type: ApplicationFiled: November 30, 2015Publication date: March 24, 2016Inventors: Triantaphyllos Byron Rakitzis, Eric Michael Lemar, Jeffrey Douglas Hughes, Kiran V. Bhageshpur, Anu Engineer
-
Patent number: 9268653Abstract: In one embodiment, a cluster uses an extent store layer and a set of hash tables having a plurality of slots embodying extent metadata that describe write data of one or more write requests organized into one or more extents. One or more non-volatile logs (NVLogs) are maintained in the cluster. The one or more NVLogs include an extent store layer log maintained by the extent store layer. The extent store layer log records changes to the set of hash tables as a plurality of log stream structures, where each log stream structure is associated with a hash table. One or more storage devices of the cluster are organized as a plurality of log streams, where each log stream is associated with a corresponding log stream structure of the extent store layer log.Type: GrantFiled: January 17, 2014Date of Patent: February 23, 2016Assignee: NetApp, Inc.Inventors: Jeffrey S. Kimmel, T. Byron Rakitzis
-
Publication number: 20160048332Abstract: The embodiments described herein are directed to the use of hashing in a file system metadata arrangement that reduces an amount of metadata stored in a memory of a node in a cluster and that reduces the amount of metadata needed to process an input/output (I/O) request at the node. Illustratively, the embodiments are directed to cuckoo hashing and, in particular, to a manner in which cuckoo hashing may be modified and applied to construct the file system metadata arrangement. In an embodiment, the file system metadata arrangement may be illustratively include a hash collision technique that employs a hash collision computation to determine a unique candidate extent key (having a candidate hash table index) in the event of a collision, i.e., a hash table index collides with a slot of a hash table matching a key found in the slot.Type: ApplicationFiled: October 29, 2015Publication date: February 18, 2016Inventors: Jeffrey S. Kimmel, T. Byron Rakitzis
-
Patent number: 9256549Abstract: In one embodiment, an extent key reconstruction technique is provided for use with a set of hash tables embodying metadata. The metadata includes an extent key associated with a storage location on storage devices for write data of one or more write requests organized into an extent. Each hash table has a plurality of entries, and each entry includes a plurality of slots. A first field of the extent key is recreated implicitly from an entry in a first address space portion of a hash table. A second field of the extent key is stored in the slot. A third field of the extent key is stored in the slot. A fourth field of the extent key is recreated implicitly from the hash table of the set of hash tables.Type: GrantFiled: January 17, 2014Date of Patent: February 9, 2016Assignee: NetApp, Inc.Inventors: Jeffrey S. Kimmel, T. Byron Rakitzis
-
Patent number: 9201735Abstract: Embodiments are directed towards managing the distribution of tasks in a storage system. An execution path for tasks may be generated based on the type of the task and characteristics of the storage system such that the execution path includes storage computers in a storage system. The tasks may be provided to each storage computer in the execution path. A working set of intermediate results may be generated on the storage computer in the execution path. If there is more than one storage computer in the execution path, working sets may be iteratively communicated to a next storage computer in the execution path such that the next storage computer employs a previously generated working set to generate a next working set until each storage computer in the execution path has been employed to generate a working set. The results may be stored on the storage computers.Type: GrantFiled: June 25, 2014Date of Patent: December 1, 2015Assignee: Igneous Systems, Inc.Inventors: Triantaphyllos Byron Rakitzis, Eric Michael Lemar, Jeffrey Douglas Hughes, Kiran V. Bhageshpur, Anu Engineer
-
Publication number: 20150325315Abstract: Embodiments are directed towards managing data storage that may experience a data failure. If a repair event is associated with a data storage failure, a new repair task may be generated and added to a task list. A priority value for each repair task in the task list may be determined based in part on the mean-time-to-data-loss (MTTDL) value associated with each repair task in the task list such that a lower MTTDL may indicate a higher priority value over a lower MTTDL. One or more repair tasks may be promoted to become active repair tasks based on the priority value the repair tasks such that the promoted repair tasks have a higher priority that than other repair tasks in the task list, if any. Each active repair task may be executed to repair one or more associated the storage failures.Type: ApplicationFiled: July 6, 2015Publication date: November 12, 2015Inventors: Triantaphyllos Byron Rakitzis, Eric Michael Lemar, Jeffrey Douglas Hughes, Kiran V. Bhageshpur
-
Patent number: 9116833Abstract: Embodiments are directed towards efficient erasure coding for storage systems. A smallest integer in a set may be determined based on a number of storage devices in the storage system such that the determined integer is greater or equal to the number of storage devices. The smallest integer in the set may be determined from the set {2N?1} where N is an integer based on the number of storage devices. A matrix may be generated based on a number of columns equal to the determined integer and a number of rows equal to the number of columns plus a number of global repair symbol devices and plus a number of virtual repair symbol devices. Each virtual repair symbol device enables an additional of level of protection against failures in the storage system.Type: GrantFiled: December 18, 2014Date of Patent: August 25, 2015Assignee: Igneous Systems, Inc.Inventors: Triantaphyllos Byron Rakitzis, Jeffrey Douglas Hughes
-
Patent number: 9098451Abstract: Embodiments are directed towards writing data to a shingle of storage devices enabling storage devices not in the shingle to be turned off. A shingle may be a sub-group of more than one storage devices selected from a larger group of storage devices. A plurality of data repair sets may be written to various subsets of the storage devices in the shingle. Each data repair set may include data block(s) and repair block(s)—with each block being stored on a different storage device in the shingle. When a condition is satisfied, the shingle may be modified to either remove at least one storage device from the shingle, add at least one other storage device to the shingle, or both. In various embodiments, the at least one other storage device may be a storage device in the group of storage devices that is not currently included in the shingle.Type: GrantFiled: November 21, 2014Date of Patent: August 4, 2015Assignee: Igneous Systems, Inc.Inventors: Triantaphyllos Byron Rakitzis, Jeffrey Douglas Hughes, Kiran V. Bhageshpur
-
Patent number: RE48835Abstract: Embodiments are directed towards a controller that provides individual network accessibility to a storage drive. The controller may include a first connector operative to couple with a storage-drive connector, a second connector operative to couple with a backplane connector of a multi-storage-drive chassis, memory, and processor. The controller may convert communication received through the first connector into an Ethernet protocol for output through the second connector, and convert communication received through the second connector into a storage-drive protocol for output through the first connector. A physical shape of the controller may fit adjacent to the storage-drive connector and occupy less space than is bounded by peripheral edges of an end of a separate housing of a storage drive coupled to the storage-drive connector. The controller may manage power provided to the storage drive and may coordinate with other controllers to manage power-up sequences of multiple storage drives.Type: GrantFiled: July 14, 2017Date of Patent: November 30, 2021Assignee: Rubrik, Inc.Inventors: Timothy Rex Martin, Jeffrey Douglas Hughes, Triantaphyllos Byron Rakitzis, Kiran V. Bhageshpur