Managing fairness in task bundling of a queue
AssigneeComcast Cable Communications Management, LLC
InventorsPaul Meijer, Brian Burkhart, Chris Orogvany
Life of this patent
Estimating the term…
Abstract
Methods and systems for managing a queue are disclosed. In one aspect, an example method can comprise accessing at least a portion of a queue comprising a plurality of tasks. Each task of the plurality of tasks can be associated with a property, and the property associated with each task can comprise a respective value. An exclusion value can be determined based on a distribution of the respective values. A group of tasks that comprises respective values of the property that do not match the exclusion value can be selected from the queue, and the selected group of tasks can be processed.
Claims20
A method, comprising:
- accessing at least a portion of a queue comprising a first plurality of tasks, wherein each task of the first plurality of tasks is associated with a property, and wherein the property associated with each task of the first plurality of tasks indicates a type of media content;
- calculating a mode of distribution of the respective properties associated with each task of the first plurality of tasks;
- determining, based on the mode of the distribution of the respective properties associated with each task of the first plurality of tasks, an exclusion value for the type of media content, wherein the type of media content is indicated by a second highest occurring property in the distribution;
- selecting, from the first plurality of tasks, a second plurality of tasks that comprises the respective properties that do not match the exclusion value;
- receiving, based on multiple requests for a group of tasks from a group of processors, a single request for the group of tasks;
- determining, based on the single request and a respective originator of each task of the second plurality of tasks, the group of tasks from the second plurality of tasks;
- determining, based on the respective originator of each task of the second plurality of tasks and a task dependency associated with each task of the group of tasks, a task priority of each task of the group of tasks;
- sending, based on the task priority of each task of the group of tasks, to the group of processors, the group of tasks;
- and
- executing, by the group of processors, the group of tasks in accordance with the task priority of each task of the group of tasks.
A method, comprising:
- selecting a first group of tasks from a queue of tasks, wherein each task of the first group of tasks is associated with a property;
- calculating a mode of distribution of the respective properties associated with each task of the first group of tasks;
- determining, based on the mode of distribution of the respective properties associated with each task of the first group of tasks, a fairness threshold;
- selecting, according to a constraint, a second group of tasks from the queue, wherein the second group of tasks comprises at least one task that satisfies the fairness threshold, wherein the constraint is based on a type of media content associated with a task of the first group of tasks or the second group of tasks;
- receiving, based on multiple requests for a group of tasks from a group of processors, a single request for the group of tasks;
- determining, based on the single request, tasks that do not satisfy the fairness threshold, and a respective originator of each task of the tasks that do not satisfy the fairness threshold, a third group of tasks from the first group of tasks and the second group of tasks;
- determining, based on the respective originator of each task of the tasks that do not satisfy the fairness threshold and a task dependency associated with each task of the third group of tasks, a task priority of each task of the third group of tasks;
- sending, to the group of processors, the third group of tasks;
- and
- executing, by the group of processors to execute the third group of tasks in accordance with the task priority of each task of the third group of tasks.
A method, comprising:
- accessing a queue comprising a first plurality of tasks, wherein each task of the first plurality of tasks is associated with a property, and wherein the property associated with each task of the first plurality of tasks indicates a type of media content;
- calculating a mode of distribution of the respective properties associated with each task of the first plurality of tasks;
- determining, based on the mode of distribution, a type of media content threshold;
- selecting, from the first plurality of tasks and based on a determination that the type of media content threshold has been satisfied in at least a portion of the queue, a second plurality of tasks that are each associated with a property that indicates the type of media content;
- receiving, based on multiple requests for a group of tasks from a group of processors, a single request for the group of tasks;
- determining, based on the single request and a respective originator of each task of the second plurality of tasks, a second group of tasks from the second plurality of tasks;
- determining, based on the respective originator of each task of the second plurality of tasks and a task dependency associated with each task of the second group of tasks, a task priority of each task of the second group of tasks;
- sending, to the group of processors, the second group of tasks;
- and
- executing, by the group of processors, the second group of tasks in accordance with the task priority of each task of the second group of tasks.
Dependencies are inferred from the claim text.