发明名称 Performance-based grouping of storage devices in a storage system
摘要 A computer determines an intrinsic read speed and an intrinsic write speed associated with a first disk and a second disk. The computer receives a request to read a portion of data, wherein the portion of data is stored redundantly on both the first and second disk. The computer identifies a first latency associated with reading the portion of data from the first disk, where the first latency is based on at least the intrinsic read speed and the intrinsic write speed associated with the first disk. The computer identifies a second latency associated with reading the portion of data form the second disk, wherein the second latency is based on at least the intrinsic read speed and the intrinsic write speed associated with the second disk. The computer determines that the first latency exceeds the second latency. The computer selects the second disk to read the portion of data.
申请公布号 US9612747(B2) 申请公布日期 2017.04.04
申请号 US201615188207 申请日期 2016.06.21
申请人 International Business Machines Corporation 发明人 Fluman Mudi M.;Frank Yaacov;Shiran Yehuda;Vatelmacher Ronny
分类号 G06F13/00;G06F3/06;G06F11/14;G06F13/16 主分类号 G06F13/00
代理机构 代理人 Rudberg Walter L.;Wixted, III Edward J.
主权项 1. A computer program product for selecting a disk in a multi-disk storage system to perform an operation, the computer program product comprising: one or more computer readable storage media and program instructions stored on the one or more computer readable storage media, the program instructions comprising: program instructions to receive a request to write a portion of data, redundantly, to at least two disks; program instructions to select a first disk to write the portion of data, wherein the first disk is included within a first set of disks, wherein program instructions to select the first disk comprise program instructions to select, randomly, the first disk; program instructions to select a second disk to write the portion of data, wherein the second disk is included within a second set of disks, wherein intrinsic read speeds and intrinsic write speeds associated with each disk of the first set of disks are slower than intrinsic read speeds and intrinsic write speeds associated with each disk of the second set of disks, and wherein program instructions to select the second disk comprise program instructions to select the second disk sequentially from the second set of disks based on disks of the second set of disks which are not performing a read or write operation at a time of selection of the second disk; program instructions to write the portion of data to both the first disk and the second disk; program instructions to determine an intrinsic read speed and an intrinsic write speed associated with the first disk and the second disk, wherein program instructions to determine the intrinsic read speed and the intrinsic write speed associated with the first disk comprise program instructions to test a read speed and a write speed of the first disk while no other operations are being executed by the first disk; program instructions to receive a request to read the portion of data, wherein the portion of data is stored redundantly on both the first disk and the second disk; program instructions to identify a first latency associated with reading the portion of data from the first disk, wherein the first latency is based on at least the intrinsic read speed and the intrinsic write speed associated with the first disk, wherein the first latency comprises a first expected amount of time required to complete one or more operations currently in a first queue for execution on the first disk based wherein the first queue comprises a write operations queue and a read operations queue, wherein the first latency comprises a first expected amount of time required to complete one or more operations currently in a first queue for execution on the first disk based, at least in part, on the operations currently in the first queue for the first disk and the intrinsic speed at which the first disk performs read and write operations, and wherein program instructions to identify the first latency comprise: program instructions to compute a read latency for the first disk by dividing a total amount of data included in the read operations queue, present in the first queue for the first disk, by the intrinsic read speed associated with the first disk;program instructions to compute a write latency for the first disk by dividing a total amount of data included in the write operations queue, present in the first queue for the first disk, by the intrinsic write speed associated with the first disk; andprogram instructions to compute the first latency, wherein program instructions to compute the first latency comprise program instructions to add the read latency for the first disk and the write latency for the first disk; program instructions to identify a second latency associated with reading the portion of data from the second disk, wherein the second latency is based on at least the intrinsic read speed and the intrinsic write speed associated with the second disk, and wherein the second latency comprises a second expected amount of time required to complete one or more operations currently in a second queue for execution on the second disk based, at least in part, on the operations currently in the second queue for the second disk and the intrinsic speed at which the second disk performs read and write operations; program instructions to determine that the first latency exceeds the second latency; and program instructions to select the second disk to read the portion of data.
地址 Armonk NY US