1. A computer-implemented method, comprising: receiving a group of multiple queries to be executed against a database; determining, based on one or more attributes of each query in the group of multiple queries, an expected amount of resources that will be used in executing the group of multiple queries against the database; scheduling the group of multiple queries for execution against the database based on the expected amount of resources to be used for the group of multiple queries, wherein scheduling the group of multiple queries comprises determining a first access plan for executing the group of multiple queries against the database based on the expected amount of resources; and after scheduling the group of multiple queries; executing a first plurality of queries of the group of multiple queries against the database according to the first access plan; determining an amount of resources used in executing the first plurality of queries against the database; rescheduling a remaining second plurality of queries of the group of multiple queries based on the determined amount of resources used for the first plurality of queries, wherein rescheduling the remaining second plurality of queries comprises determining a second access plan, different from the first access plan, to use for executing the remaining second plurality of queries of the group of multiple queries against the database; and executing the remaining second plurality of queries of the group of multiple queries against the database according to the second access plan.