Asynchronous scheduling informed by job characteristics and anticipatory provisioning of data for real-time, parallel processing
US-2015074672-A1 · Mar 12, 2015 · US
US10528561B2 · US · B2
| Field | Value |
|---|---|
| Publication number | US-10528561-B2 |
| Application number | US-201514951616-A |
| Country | US |
| Kind code | B2 |
| Filing date | Nov 25, 2015 |
| Priority date | Nov 25, 2015 |
| Publication date | Jan 7, 2020 |
| Grant date | Jan 7, 2020 |
A practical reading order for non-experts. Skip the full description unless you need deep technical detail.
What the patent document calls the invention.
A short plain-language summary of the technical disclosure.
Who owns or filed the patent and who is credited as inventor.
Filing, priority, publication, and grant dates set the timeline.
The legal scope of protection — read this for what is actually claimed.
Technology tags used to group this patent with similar filings.
Prior art links and similar publications in this corpus.
Official abstract text for this publication.
Embodiments include pre-processing work items to be processed by computerized processing elements. Aspects include accessing a performance index, which relates to (dynamic) processing performances of work items as processed by the computerized processing elements. Aspects also include determining a time interval (during which the receiver may group queued work items into a block), according to the accessed performance index. Aspects further includes setting a timer to the determined time interval, to allow the receiver to group work items being queued until that time interval has elapsed, according to the timer set. As a result, a block of grouped work items will be obtained, which can then be passed to a scheduler for subsequent processing by computerized processing elements.
Opening claim text (preview).
What is claimed is: 1. A computer-implemented method for pre-processing work items to be processed by computerized processing elements, the method comprising: accessing, by a planner, a dynamic processing performance index of first work items as processed by the computerized processing elements; determining, by the planner, according to the accessed performance index, a time interval length, wherein the time interval length is a length of time that a receiver groups queued second work items into a block; setting, by the planner, a timer to the determined time interval length, to allow the receiver to group the queued second work items, so as to obtain the block to be passed to a scheduler for subsequent processing by computerized processing elements; grouping, at the receiver and after a timer has been set to the determined time interval, the queued second work items until that time interval has elapsed, according to the timer set, to obtain a first block of grouped work items, and passing the obtained first block to a scheduler for subsequent processing of the block by the computerized processing elements; and scheduling a second block of grouped work items received, subsequent to the first block of grouped work items, from the receiver for distributed processing the computerized processing elements, wherein the first block of grouped work items and the second block of grouped work items received at the scheduler from the receiver are scheduled for distributed processing according to a type of query they are associated to. 2. The method of claim 1 , wherein the accessed performance index measures a processing performance, by the computerized processing elements, of one or more blocks of work items as previously grouped by the receiver. 3. The method of claim 2 , wherein the accessed processing performance index measures a processing latency and/or a processing throughput of the processed one or more blocks. 4. The method of claim 1 , further comprising, prior to accessing the performance index, estimating the performance index based on indicators collected from the computerized processing elements. 5. The method of claim 1 , wherein determining comprises increasing a time interval if, according to the accessed performance index, a load of the processing elements decreases or decreasing a time interval if, according to the accessed performance index, a load of the processing elements increases. 6. The method of claim 1 , wherein accessing the performance index, determining a time interval, setting a timer to a determined time interval, and passing an obtained block are carried out while streaming said work items, whereby the streamed work items are queued in view of pre-processing by the receiver. 7. The method of claim 1 , further comprising processing the several blocks and maintaining indicators for estimating the performance index. 8. The method of claim 1 , wherein scheduling the several blocks comprises putting on hold or cancelling processing of blocks that correspond to a type of query that is flagged as optional. 9. The method of claim 8 , wherein scheduling comprises putting on hold or cancelling processing of blocks that correspond to a type of query that is flagged as optional if a load of the processing elements has increased, according to the accessed performance index. 10. The method of claim 1 , wherein the time interval during which the receiver may group queued work items into a block is determined according to both the accessed performance index and a processing performance target associated to the types of queries. 11. A planner for pre-processing work items to be processed by computerized processing elements, wherein the planner is interfaceable with a receiver and comprises a processor communicatively coupled to a memory, the processor configured, while work items are being queued for pre-processing by the receiver, to: access a dynamic processing performance index of first work items as processed by the computerized processing elements; determine, according to the accessed performance index, a time interval length, wherein the interval time length is a length of time that the receiver groups queued second work items into a block; set a timer to the determined time interval length, to allow the receiver to group the queued second work items, to obtain the block to be passed to a scheduler for subsequent processing by computerized processing elements; group, at the receiver and after a timer has been set to the determined time interval, the queued second work items until that time interval has elapsed, according to the timer set, to obtain a first block of grouped work items, and passing the obtained first block to a scheduler for subsequent processing of the block by the computerized processing elements; and schedule a second block of grouped work items received, subsequent to the first block of grouped work items, from the receiver for distributed processing the computerized processing elements, wherein the first block of grouped work items and the second block of grouped work items received at the scheduler from the receiver are scheduled for distributed processing according to a type of query they are associated to. 12. The planner of claim 11 , wherein the planner comprises an estimator for determining said time interval according to the accessed performance index; and a controller for setting the timer to the determined time interval. 13. The planner of claim 12 , wherein the planner further comprises a load classifier for instructing the scheduler to put on hold or cancel processing of blocks corresponding to an optional query. 14. A computer program product for pre-processing work items to be processed by computerized processing elements, the computer program product comprising a computer readable storage medium having program instructions embodied therewith, the program instructions being executable by one or more processors to cause a planner interfaceable with a receiver, while work items are being queued in view of pre-processing by the receiver, to: accessing a dynamic processing performance index of first work items as processed by the computerized processing elements; determining, according to the accessed performance index, a time interval length, wherein the time interval length is a length of time that the receiver groups queued second work items into a block; setting a timer to the determined time interval time length, to allow the receiver to group the second work items, so as to obtain the block to be passed to a scheduler for subsequent processing by computerized processing elements; grouping, at the receiver and after a timer has been set to the determined time interval, the queued second work items until that time interval has elapsed, according to the timer set, to obtain a first block of grouped work items, and passing the obtained first block to a scheduler for subsequent processing of the block by the computerized processing elements; and scheduling a second block of grouped work items received, subsequent to the first block of grouped work items, from the receiver for distributed processing the computerized processing elements, wherein the first block of grouped work items and the second block of grouped work items received at the scheduler from the receiver are scheduled for distributed processing according to a type of query they are associated to. 15. The computer program product of claim 14 , wherein the accessed performance index measures a processing performance, by the computerized processing elements, of one or more blocks of work items as previously grouped
Plan optimisation · CPC title
considering the load · CPC title
Related publications grouped by family.
Answers are generated from the same data shown on this page.