1. A computer-implemented method for managing computing resources while executing a query in a distributed computing cluster having multiple nodes, the method comprising: receiving, by a master node in the distributed computing cluster, a query and an initial request for computing resources to process the query; and reserving, by the master node, a cache of computing resources at one or more slave nodes in the distributed computing cluster based on the initial request for computing resources and a heuristic associated with a temporal clustering of received queries.