US 12,067,280 B2
Systems and methods of forecasting temperatures of storage objects using machine learning
Shaul Dar, Petach Tikva (IL); Ramakanth Kanagovi, Karnataka (IN); Vamsi K. Vankamamidi, Hopkinton, MA (US); Guhesh Swaminathan, Tamil Nadu (IN); and Swati Smita Sitha, Bengaluru (IN)
Assigned to Dell Products L.P., Round Rock, TX (US)
Filed by Dell Products L.P., Round Rock, TX (US)
Filed on Jun. 23, 2022, as Appl. No. 17/847,449.
Prior Publication US 2023/0418505 A1, Dec. 28, 2023
Int. Cl. G06F 12/00 (2006.01); G06F 3/06 (2006.01); G06N 20/00 (2019.01)
CPC G06F 3/0653 (2013.01) [G06F 3/0604 (2013.01); G06F 3/0679 (2013.01); G06N 20/00 (2019.01)] 20 Claims
OG exemplary drawing
 
1. A method comprising:
forecasting at least one temperature of a storage object using at least one machine learning (ML) model;
modifying storage of the storage object based on the at least one forecasted temperature of the storage object;
having modified storage of the storage object, obtaining at least one performance metric associated with the storage object; and
based on the at least one performance metric, performing one or more of varying a frequency of forecasting the at least one temperature of the storage object, retraining the at least one ML model used in forecasting the at least one temperature, and adjusting at least one operational parameter of the storage system,
wherein forecasting at least one temperature of a storage object includes processing, using the at least one ML model, a plurality of features relevant to the at least one temperature of the storage object, the plurality of features including two or more of:
an average difference between start logical block addresses (“average delta LBA”) of successive input/output (IO) operations performed on the storage object;
an average delta LBA of successive read IO operations performed on the storage object;
an average delta LBA of successive write IO operations performed on the storage object;
a percentage of successive pairs of IO operations performed on the storage object that include two read IO operations;
a percentage of successive pairs of IO operations performed on the storage object that include a read IO operation followed by a write IO operation;
a percentage of successive pairs of IO operations performed on the storage object that include a write IO operation followed by a read IO operation;
a percentage of successive pairs of IO operations performed on the storage object that include two write IO operations;
a percentage of successive pairs of read IO operations performed on the storage object in which a start LBA of a second read IO operation immediately follows an end LBA of a first read IO operation; and
a percentage of successive pairs of write IO operations performed on the storage object in which a start LBA of a second write IO operation immediately follows an end LBA of a first write IO operation.