Data retrieval based on storage device activation schedules
First Claim
1. A method of operating an enclosure comprising:
- based on receiving a first read request for a first data fragment,identifying a first target storage device of a first subset of storage devices as storing the first data fragment based, at least in part, on the first read request;
determining whether the first subset of storage devices is active based, at least in part, on a cyclical activation schedule; and
based on determining that the first subset of storage devices is not active based, at least in part, on the cyclical activation schedule, indicating the first read request in a first read request queue for the first subset of storage devices;
based on indicating the first read request in the first read request queue, determining a number of read requests in the first read request queue and a number of read requests in a second read request queue corresponding to a second subset of storage devices to determine whether the cyclical activation schedule should be modified to prioritize the first subset of storage devices based, at least in part, on the determined numbers of read requests; and
in association with activation of the first subset of storage devices in accordance with the cyclical activation schedule,removing the first read request from the first read request queue; and
retrieving the first data fragment from the first target storage device.
1 Assignment
0 Petitions
Accused Products
Abstract
In at least one embodiment, a method of operating a multiple-data-storage-devices enclosure is disclosed. The method includes: receiving a first read request from a first requester device for a first requested data fragment; identifying a first target data storage device storing the first requested data fragment based at least partly on the first read request; activating, independently of receiving the first read request, only a subset of data storage devices in the enclosure, wherein the subset includes the first target data storage device; retrieving, based at least partly on the first read request and in response to activating the subset, the first requested data fragment from the first target data storage device; and transmitting the first requested data fragment to the first requester device.
37 Citations
14 Claims
-
1. A method of operating an enclosure comprising:
-
based on receiving a first read request for a first data fragment, identifying a first target storage device of a first subset of storage devices as storing the first data fragment based, at least in part, on the first read request; determining whether the first subset of storage devices is active based, at least in part, on a cyclical activation schedule; and based on determining that the first subset of storage devices is not active based, at least in part, on the cyclical activation schedule, indicating the first read request in a first read request queue for the first subset of storage devices; based on indicating the first read request in the first read request queue, determining a number of read requests in the first read request queue and a number of read requests in a second read request queue corresponding to a second subset of storage devices to determine whether the cyclical activation schedule should be modified to prioritize the first subset of storage devices based, at least in part, on the determined numbers of read requests; and in association with activation of the first subset of storage devices in accordance with the cyclical activation schedule, removing the first read request from the first read request queue; and retrieving the first data fragment from the first target storage device. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. An enclosure comprising:
-
a processor; and a machine-readable medium comprising program code executable by the processor to cause the enclosure to, based on receiving a first read request for a first data fragment, identify a first target storage device of a first subset of storage devices as storing the first data fragment based, at least in part, on the first read request; determine whether the first subset of storage devices is active based, at least in part, on a cyclical activation schedule; and based on a determination that the first subset of storage devices is not active based, at least in part, on the cyclical activation schedule, indicate the first read request in a first read request queue for the first subset of storage devices; based on indication of the first read request in the first read request queue, determine a number of read requests in the first read request queue and a number of read requests in a second read request queue corresponding to a second subset of storage devices to determine whether the cyclical activation schedule should be modified to prioritize the first subset of storage devices based, at least in part, on the determined numbers of read requests; and based on activation of the first subset of storage devices, remove the first read request from the first read request queue; and retrieve the first data fragment from the first target storage device. - View Dependent Claims (11, 12)
-
-
13. One or more non-transitory machine-readable media having program code for asynchronously servicing a read request stored therein, the program code to:
based on receiving a first read request for a first data fragment, identify a first target storage device of a first subset of storage devices as storing the first data fragment based, at least in part, on the first read request; determine whether the first subset of storage devices is active based, at least in part, on a cyclical activation schedule; and based on a determination that the first subset of storage devices is not active based, at least in part, on the cyclical activation schedule, indicate the first read request in a first read request queue for the first subset of storage devices; based on indication of the first read request in the first read request queue, determine a number of read requests in the first read request queue and a number of read requests in a second read request queue corresponding to a second subset of storage devices to determine whether the cyclical activation schedule should be modified to prioritize the first subset of storage devices based, at least in part, on the determined numbers of read requests; and based on activation of the first subset of storage devices, remove the first read request from the first read request queue; and retrieve the first data fragment from the first target storage device. - View Dependent Claims (14)
Specification