Data storage system optimizations in a multi-tiered environment
AssigneeEMC Corporation
InventorsMarik Marshak, Alexandr Veprinsky, Dan Aharoni, Stephen F. Modica
Life of this patent
Estimating the term…
Abstract
Described are techniques for processing I/O (input/output) operations. A first observed value of a first performance metric denoting any of a current workload or performance for a first physical device is determined. A target time delay for the first physical device is identified based on the first observed value of the first performance metric. The target time delay specifies a minimum time delay between consecutive host I/Os directed to the first physical device. The target time delay is enforced with respect to consecutive host I/Os directed to the first physical device.
Claims18
A method of processing I/O (input/output) operations comprising:
- determining a first value of a first performance metric denoting any of a current workload or performance for a first physical device having data stored thereon that is any of read and written in servicing I/O operations, wherein said first value for the first performance metric for the first physical device is determined by performing first processing comprising:
- determining an observed response time for servicing I/O operations directed to the first physical device;
- selecting one of a plurality of performance curves in accordance with a physical drive type and workload characteristics of the first physical device, each of said plurality of performance curves denoting modeled performance characteristics of a particular type of physical drive for particular workload characteristics;
- and
- determining a utilization of the first physical device, wherein said utilization is a modeled or estimated utilization of the first physical device determined using the selected one of the plurality of performance curves and the observed response time, said utilization being used as the first value of the first performance metric for the first physical device;
- identifying a target time delay for the first physical device based on the first value of the first performance metric, said target time delay specifying a minimum time delay between consecutive host I/Os directed to the first physical device;
- and
- enforcing the target time delay with respect to consecutive host I/Os directed to the first physical device.
A data storage system comprising:
- a disk adapter that accesses one or more physical devices for performing I/O (input/output) operations to the one or more physical devices, said disk adapter including a first non-transitory computer readable medium comprising code stored thereon that, when executed, performs a method comprising:
- determining first information including a first value of a first performance metric denoting any of a current workload or performance for a first of the one or more physical devices serviced by the disk adapter and having data stored thereon that is any of read and written in servicing I/O operations, said first information also identifying, for said first physical device, one or more logical device address portions having data stored on said first physical device, wherein said first value for the first performance metric for the first physical device is determined by performing first processing comprising:
- determining an observed response time for servicing I/O operations directed to the first physical device;
- selecting one of a plurality of performance curves in accordance with a physical drive type and workload characteristics of the first physical device, each of said plurality of performance curves denoting modeled performance characteristics of a particular type of physical drive for particular workload characteristics;
- and
- determining a utilization of the first physical device, wherein said utilization is a modeled or estimated utilization of the first physical device determined using the selected one of the plurality of performance curves and the observed response time, said utilization being the first value of the first performance metric for the first physical device;
- and
- storing the first information in a global memory;
- a front end component that receives host I/O operations, said front end component including a second non-transitory computer readable medium comprising code stored thereon that, when executed, performs a method comprising:
- reading the first information from the global memory;
- identifying a target time delay for the first physical storage device based on the first value of the first performance metric for the first physical device, said target time delay specifying a minimum time delay between consecutive host I/Os directed to the first physical device;
- and
- enforcing the target time delay with respect to consecutive host I/Os directed to the first physical device.
A non-transitory computer readable medium comprising executable code stored thereon for processing I/O (input/output) operations, the non-transitory computer readable medium comprising code stored thereon that, when executed, performs a method comprising:
- determining a first value of a first performance metric denoting any of a current workload or performance for a first physical device having data stored thereon that is any of read and written in servicing I/O operations, wherein said first value for the first performance metric for the first physical device is determined by performing first processing comprising:
- determining an observed response time for servicing I/O operations directed to the first physical device;
- selecting one of a plurality of performance curves in accordance with a physical drive type and workload characteristics of the first physical device, each of said plurality of performance curves denoting modeled performance characteristics of a particular type of physical drive for particular workload characteristics;
- and
- determining a utilization of the first physical device, wherein said utilization is a modeled or estimated utilization of the first physical device determined using the selected one of the plurality of performance curves and the observed response time, said utilization being used as the first value of the first performance metric for the first physical device;
- identifying a target time delay for the first physical device based on the first value of the first performance metric, said target time delay specifying a minimum time delay between consecutive host I/Os directed to the first physical device;
- and
- enforcing the target time delay with respect to consecutive host I/Os directed to the first physical device.
Dependencies are inferred from the claim text.