1. A computer-implemented method comprising: allocating a respective data store queue to each of a plurality of virtual machines, wherein each data store queue is configured to queue data requests from the respective virtual machine using an initial maximum data store queue size and for a respective virtual disk of a first data store, wherein each virtual machine is associated with a corresponding virtual disk of the first data store and only the virtual machines in the plurality of virtual machines have a virtual disk of the first data store; determining, for each of the plurality of virtual machines, a respective current maximum quantity of pending requests for the virtual machine, wherein a quantity of pending requests sent from the respective data store queue to the first data store is at most equal to the current maximum quantity of pending requests determined for the virtual machine; determining, for each of the virtual machines, a respective current quantity of operations per second; determining, for each of one or more first virtual machines in the plurality of virtual machines, a respective updated maximum queue size using the respective current maximum quantity of pending requests for the virtual machine based on whether the current quantity of operations per second for the first virtual machine is less than an expected quantity of operations per second for the first virtual machine; and updating, for each first virtual machine, the size of the data store queue for the first virtual machine sent to the first data store using the updated maximum queue size for the first virtual machine.