US 12,135,997 B1
Workload request rate control
Hoa Thu Tran, Escondido, CA (US); Daniel David Hoffman, San Diego, CA (US); Douglas P. Brown, Rancho Santa Fe, CA (US); and Kenneth Ray Shortes, San Diego, CA (US)
Assigned to Teradata US, Inc., San Diego, CA (US)
Filed by Teradata US, Inc., San Diego, CA (US)
Filed on Aug. 9, 2019, as Appl. No. 16/536,485.
Claims priority of provisional application 62/786,845, filed on Dec. 31, 2018.
Int. Cl. G06F 9/50 (2006.01); G06F 9/48 (2006.01); G06F 9/54 (2006.01)
CPC G06F 9/505 (2013.01) [G06F 9/4881 (2013.01); G06F 9/5044 (2013.01); G06F 9/546 (2013.01); G06F 9/5038 (2013.01); G06F 2209/503 (2013.01); G06F 2209/508 (2013.01)] 20 Claims
OG exemplary drawing
 
1. A data store system comprising:
a storage device configured to store a plurality of data store tables;
a processor in communication with the storage device, the processor configured to:
receive a plurality of requests, wherein each request of the plurality of requests is a request to perform an action on at least one data store table of the plurality of data store tables;
for each received request:
determine an associated workload type for the received request;
determine a first respective release rate, wherein the first respective release rate is based on the received request, wherein the first respective release determines when the received request is to be released to be scheduled for execution, wherein the received request is queued in a first queue until released in accordance with the first respective release rate; and
release the received request to be selected for execution based on the first respective release rate;
for each released request:
determine a second respective rate based on the associated workload type at which the released request is to be submitted for execution, wherein the second respective rate determines a rate at which released requests of the associated workload type are to be submitted for execution;
in response to the determination of the second respective rate, determine one of the released request is to be submitted for execution of the selected released request and the released request is to be queued in a second queue until submitted for execution; and
in response to the determination that the released workload is to be submitted for execution, submit the released workload for execution, wherein the submitted released workload is to be executed with respect to other workloads submitted for execution based on a respective priority level of the associated workload type of the released workload, wherein the respective priority level of the associated workload type is different than other respective priority levels of other respective workload types.