I'm having hard time figuring out how query language might affect exectuion time. Granted, I've never seen borgmon in action, so the first question should probably be: how different its query language is from what Prometheus offers? If it's more on imperative side than declarative one then your point might actually make sense to me as it is.
> You can also downsample (eg. Change scrape interval to 5 mins after a week).
Does it allow different aggregation methods (avg/sum/max/whatever) for different metrics, like Carbon does?