linkedin/parseq

Automated capacity management

Opened this issue · 0 comments

Due to asynchronous nature Engine can accept for execution more plans than it is physically capable of executing. A partial answer to this problem is to use specify plan concurrency and apply back pressure to incoming plans. The problems with this approach are:

  • inefficiency in situations where different plan types have very different resource utilizations
  • difficult to figure out correct concurrency level
  • best concurrency level may change over time

This task is to investigate automatic capacity management. Some ideas:

  • in real time, measure utilization of key resources and and distribute cost over plan types being executed
  • estimate load based on sample of traces of executed plans and correlate it with resource utilization