US2019222647A1PendingUtilityA1

Adaptive resource utilization with request cancellation

Assignee: IBMPriority: Nov 28, 2011Filed: Mar 20, 2019Published: Jul 18, 2019
Est. expiryNov 28, 2031(~5.3 yrs left)· nominal 20-yr term from priority
Inventors:Greg R. Dhuse
G06F 12/0607G06F 3/067H04L 65/10G06F 11/108G06F 3/0641H04L 9/3236G06F 3/0608G06F 16/182H04L 67/1097G06F 21/00H04L 63/0428G06F 2211/1028H04L 9/0825G06F 12/1408
66
PatentIndex Score
0
Cited by
0
References
0
Claims

Abstract

A computing device includes an interface configured to interface and communicate with a dispersed storage network (DSN), a memory that stores operational instructions, and a processing module operably coupled to the interface and memory such that the processing module, when operable within the computing device based on the operational instructions, is configured to perform various operations. The computing device receives a data object, dispersed error encodes the data object to generate a set of encoded data slices (EDSs), and determines whether there are a sufficient amount of write sequence operational resources of the DSN are available within the DSN to execute a write request for the set of EDSs to the DSN memory. The computing device transmits the set of EDSs to the DSN memory for storage or determines whether the write sequence operational resources may be modified for storage of the set of EDSs to the DSN memory.

Claims

exact text as granted — not AI-modified
What is claimed is: 
     
         1 . A computing device comprising:
 an interface configured to interface and communicate with a dispersed storage network (DSN);   memory that stores operational instructions; and   a processing module operably coupled to the interface and to the memory, wherein the processing module, when operable within the computing device based on the operational instructions, is configured to:
 receive a data object for storage in DSN memory; 
 dispersed error encode the data object to generate a set of encoded data slices (EDSs), wherein the data object is segmented into a plurality of data segments, wherein a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce the set of EDSs that includes a pillar width number of EDSs, wherein a decode threshold number of EDSs of the set of EDSs are needed to recover the data segment, wherein the dispersed error encoding parameters include an encoding matrix with a size that is based on the pillar width number and the decode threshold number; 
 determine whether there are a sufficient amount of write sequence operational resources of the DSN are available within the DSN to execute a write request for the set of EDSs to the DSN memory, wherein the write sequence operational resources of the DSN include one or more queues in communication with the DSN memory that facilitate transmission of requests to the DSN memory and reception of responses from the DSN memory in accordance with a queue prioritization scheme; and 
 based on the sufficient amount of the write sequence operational resources of the DSN determined not to be available within the DSN to execute the write request for the set of EDSs to the DSN memory:
 determine whether modification of the write sequence operational resources provides for the sufficient amount of the write sequence operational resources of the DSN to execute the write request for the set of EDSs to the DSN memory; and 
 based on modification of the write sequence operational resources providing for the sufficient amount of the write sequence operational resources of the DSN to execute the write request for the set of EDSs to the DSN memory, perform the modification of the write sequence operational resources to generate modified write sequence operational resources and transmit the set of EDSs to the DSN memory for storage therein based on the modified write sequence operational resources. 
 
   
     
     
         2 . The computing device of  claim 1 , wherein the processing module, when operable within the computing device based on the operational instructions, is further configured to:
 transmit, based on the sufficient amount of the write sequence operational resources of the DSN are determined to be available within the DSN to execute the write request for the set of EDSs to the DSN memory, the set of EDSs to the DSN memory for storage therein; and   transmit, based on modification of the write sequence operational resources not providing for the sufficient amount of the write sequence operational resources of the DSN to execute the write request for the set of EDSs to the DSN memory, a response that indicates a write sequence operational resources failure issue to another computing device.   
     
     
         3 . The computing device of  claim 1 , wherein the processing module, when operable within the computing device based on the operational instructions, is further configured to:
 determine there are the sufficient amount of the write sequence operational resources of the DSN available within the DSN to execute the write request for the set of EDSs to the DSN memory based on a data size indicator associated with the write request for the set of EDSs to the DSN memory comparing favorably to the write sequence operational resources of the DSN.   
     
     
         4 . The computing device of  claim 1 , wherein the processing module, when operable within the computing device based on the operational instructions, is further configured to:
 determine there are the sufficient amount of the write sequence operational resources of the DSN available within the DSN to execute the write request for the set of EDSs to the DSN memory based on available DSN resources comparing favorably to the write sequence operational resources of the DSN.   
     
     
         5 . The computing device of  claim 1 , wherein the processing module, when operable within the computing device based on the operational instructions, is further configured to:
 perform the modification of the write sequence operational resources to generate the modified write sequence operational resources including to delete at least one other write request for the set of EDSs to the DSN memory or at least one other write request for another set of EDSs to the DSN memory.   
     
     
         6 . The computing device of  claim 1 , wherein the processing module, when operable within the computing device based on the operational instructions, is further configured to:
 determine whether the modification of the write sequence operational resources provides for the sufficient amount of the write sequence operational resources of the DSN to execute the write request for the set of EDSs to the DSN memory including to determine whether at least a write threshold number of favorable write responses have been received for at least one other write request for another set of EDSs to the DSN memory; and   determine that modification of the write sequence operational resources provides for the sufficient amount of the write sequence operational resources of the DSN to execute the write request for the set of EDSs to the DSN memory based on the at least write threshold number of favorable write responses having been received for the at least one other write request for the another set of EDSs to the DSN memory, wherein a write threshold number of EDSs provides for a successful transfer of the set of EDSs from a first at least one location in the DSN to a second at least one location in the DSN.   
     
     
         7 . The computing device of  claim 1 , wherein at least one of:
 the computing device is located at a first premises that is remotely located from at least one storage unit (SU) of a plurality of SUs within the DSN memory that distributedly store the set of EDSs; or   the DSN includes at least one of a wireless communication system, a wire lined communication system, a non-public intranet system, a public internet system, a local area network (LAN), or a wide area network (WAN).   
     
     
         8 . The computing device of  claim 1  further comprising:
 a storage unit (SU) of a plurality of SUs within the DSN memory that distributedly store the set of EDSs, a wireless smart phone, a laptop, a tablet, a personal computers (PC), a work station, or a video game device. 
 
     
     
         9 . A computing device comprising:
 an interface configured to interface and communicate with a dispersed storage network (DSN);   memory that stores operational instructions; and   a processing module operably coupled to the interface and to the memory, wherein the processing module, when operable within the computing device based on the operational instructions, is configured to:
 receive a data object for storage in DSN memory; 
 dispersed error encode the data object to generate a set of encoded data slices (EDSs), wherein the data object is segmented into a plurality of data segments, wherein a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce the set of EDSs that includes a pillar width number of EDSs, wherein a decode threshold number of EDSs of the set of EDSs are needed to recover the data segment, wherein the dispersed error encoding parameters include an encoding matrix with a size that is based on the pillar width number and the decode threshold number, wherein the computing device is located at a first premises that is remotely located from at least one storage unit (SU) of a plurality of SUs within the DSN memory that distributedly store the set of EDSs; 
 determine whether there are a sufficient amount of write sequence operational resources of the DSN are available within the DSN to execute a write request for the set of EDSs to the DSN memory based on at least one other available DSN resources comparing favorably to the write sequence operational resources of the DSN or a data size indicator associated with the write request for the set of EDSs to the DSN memory comparing favorably to the write sequence operational resources of the DSN, wherein the write sequence operational resources of the DSN include one or more queues in communication with the DSN memory that facilitate transmission of requests to the DSN memory and reception of responses from the DSN memory in accordance with a queue prioritization scheme; and 
 based on the sufficient amount of the write sequence operational resources of the DSN determined not to be available within the DSN to execute the write request for the set of EDSs to the DSN memory:
 determine whether modification of the write sequence operational resources provides for the sufficient amount of the write sequence operational resources of the DSN to execute the write request for the set of EDSs to the DSN memory; and 
 based on modification of the write sequence operational resources providing for the sufficient amount of the write sequence operational resources of the DSN to execute the write request for the set of EDSs to the DSN memory, perform the modification of the write sequence operational resources to generate modified write sequence operational resources and transmit the set of EDSs to the DSN memory for storage therein based on the modified write sequence operational resources. 
 
   
     
     
         10 . The computing device of  claim 9 , wherein the processing module, when operable within the computing device based on the operational instructions, is further configured to:
 transmit, based on the sufficient amount of the write sequence operational resources of the DSN are determined to be available within the DSN to execute the write request for the set of EDSs to the DSN memory, the set of EDSs to the DSN memory for storage therein; and   transmit, based on modification of the write sequence operational resources not providing for the sufficient amount of the write sequence operational resources of the DSN to execute the write request for the set of EDSs to the DSN memory, a response that indicates a write sequence operational resources failure issue to another computing device.   
     
     
         11 . The computing device of  claim 9 , wherein the processing module, when operable within the computing device based on the operational instructions, is further configured to:
 perform the modification of the write sequence operational resources to generate the modified write sequence operational resources including to delete at least one other write request for the set of EDSs to the DSN memory or at least one other write request for another set of EDSs to the DSN memory.   
     
     
         12 . The computing device of  claim 9 , wherein the processing module, when operable within the computing device based on the operational instructions, is further configured to:
 determine whether the modification of the write sequence operational resources provides for the sufficient amount of the write sequence operational resources of the DSN to execute the write request for the set of EDSs to the DSN memory including to determine whether at least a write threshold number of favorable write responses have been received for at least one other write request for another set of EDSs to the DSN memory; and   determine that modification of the write sequence operational resources provides for the sufficient amount of the write sequence operational resources of the DSN to execute the write request for the set of EDSs to the DSN memory based on the at least write threshold number of favorable write responses having been received for the at least one other write request for the another set of EDSs to the DSN memory, wherein a write threshold number of EDSs provides for a successful transfer of the set of EDSs from a first at least one location in the DSN to a second at least one location in the DSN.   
     
     
         13 . The computing device of  claim 9 , wherein at least one of:
 the DSN includes at least one of a wireless communication system, a wire lined communication system, a non-public intranet system, a public internet system, a local area network (LAN), or a wide area network (WAN); or   the computing device is one of the SUs of the plurality of SUs within the DSN memory that distributedly store the set of EDSs, a wireless smart phone, a laptop, a tablet, a personal computers (PC), a work station, or a video game device.   
     
     
         14 . A method for execution by a computing device, the method comprising:
 receiving, via an interface of the computing device that is configured to interface and communicate with a dispersed storage network (DSN), a data object for storage in DSN memory;   dispersed error encoding the data object to generate a set of encoded data slices (EDSs), wherein the data object is segmented into a plurality of data segments, wherein a data segment of the plurality of data segments is dispersed error encoded in accordance with dispersed error encoding parameters to produce the set of EDSs that includes a pillar width number of EDSs, wherein a decode threshold number of EDSs of the set of EDSs are needed to recover the data segment, wherein the dispersed error encoding parameters include an encoding matrix with a size that is based on the pillar width number and the decode threshold number;   determining whether there are a sufficient amount of write sequence operational resources of the DSN are available within the DSN to execute a write request for the set of EDSs to the DSN memory, wherein the write sequence operational resources of the DSN include one or more queues in communication with the DSN memory that facilitate transmission of requests to the DSN memory and reception of responses from the DSN memory in accordance with a queue prioritization scheme; and   based on the sufficient amount of the write sequence operational resources of the DSN determined not to be available within the DSN to execute the write request for the set of EDSs to the DSN memory:
 determining whether modification of the write sequence operational resources provides for the sufficient amount of the write sequence operational resources of the DSN to execute the write request for the set of EDSs to the DSN memory; and 
 based on modification of the write sequence operational resources providing for the sufficient amount of the write sequence operational resources of the DSN to execute the write request for the set of EDSs to the DSN memory, performing the modification of the write sequence operational resources to generate modified write sequence operational resources and transmit the set of EDSs to the DSN memory for storage therein based on the modified write sequence operational resources. 
   
     
     
         15 . The method of  claim 14  further comprising:
 transmitting via the interface, based on the sufficient amount of the write sequence operational resources of the DSN are determined to be available within the DSN to execute the write request for the set of EDSs to the DSN memory, the set of EDSs to the DSN memory for storage therein; and 
 transmitting via the interface, based on modification of the write sequence operational resources not providing for the sufficient amount of the write sequence operational resources of the DSN to execute the write request for the set of EDSs to the DSN memory, a response that indicates a write sequence operational resources failure issue to another computing device. 
 
     
     
         16 . The method of  claim 14  further comprising:
 determining there are the sufficient amount of the write sequence operational resources of the DSN available within the DSN to execute the write request for the set of EDSs to the DSN memory based on a data size indicator associated with the write request for the set of EDSs to the DSN memory comparing favorably to the write sequence operational resources of the DSN. 
 
     
     
         17 . The method of  claim 14  further comprising:
 determining there are the sufficient amount of the write sequence operational resources of the DSN available within the DSN to execute the write request for the set of EDSs to the DSN memory based on available DSN resources comparing favorably to the write sequence operational resources of the DSN. 
 
     
     
         18 . The method of  claim 14  further comprising:
 performing the modification of the write sequence operational resources to generate the modified write sequence operational resources including to delete at least one other write request for the set of EDSs to the DSN memory or at least one other write request for another set of EDSs to the DSN memory. 
 
     
     
         19 . The method of  claim 14  further comprising:
 determining whether the modification of the write sequence operational resources provides for the sufficient amount of the write sequence operational resources of the DSN to execute the write request for the set of EDSs to the DSN memory including to determine whether at least a write threshold number of favorable write responses have been received for at least one other write request for another set of EDSs to the DSN memory; and 
 determining that modification of the write sequence operational resources provides for the sufficient amount of the write sequence operational resources of the DSN to execute the write request for the set of EDSs to the DSN memory based on the at least write threshold number of favorable write responses having been received for the at least one other write request for the another set of EDSs to the DSN memory, wherein a write threshold number of EDSs provides for a successful transfer of the set of EDSs from a first at least one location in the DSN to a second at least one location in the DSN. 
 
     
     
         20 . The method of  claim 14 , wherein at least one of:
 the computing device includes a storage unit (SU) of a plurality of SUs within the DSN memory that distributedly store the set of EDSs, a wireless smart phone, a laptop, a tablet, a personal computers (PC), a work station, or a video game device; or   the DSN includes at least one of a wireless communication system, a wire lined communication system, a non-public intranet system, a public internet system, a local area network (LAN), or a wide area network (WAN).

Join the waitlist — get patent alerts

Track US2019222647A1 — get alerts on status changes and closely related new filings.

We store only your email — no account needed. See our privacy policy.