Abstract: Methods, systems, and apparatus, including medium-encoded computer program products, for using adaptive scheduling criteria to efficiently schedule resources based on dynamically changing data. In one aspect, a method includes obtaining, by the resource scheduler and from multiple resource consumers, resource requests for consuming a set of resources. For each of multiple resource usage time periods for the set of resources, a respective actual utilization rate for the set of resources during the resource usage time period is updated. For each resource usage time period, the respective actual utilization rate for the resource usage time period is compared to a target utilization rate. A determination is made, based on the comparing, that the respective actual utilization rate for a given resource usage time period is at least a threshold amount different from the target utilization rate. A scheduling criterion that conditions subsequent resource requests for the set of resources is adjusted.