Open-EO / openeo-api

The openEO API specification
http://api.openeo.org
Apache License 2.0
93 stars 12 forks source link

Budget handling behaviour #541

Open soxofaan opened 4 months ago

soxofaan commented 4 months ago

When creating a batch job, there is a field budget described as:

Maximum amount of costs the request is allowed to produce. The value MUST be specified in the currency of the back-end. No limits apply, if the value is null or the back-end has no currency set in GET /.

Some questions and discussion points:

soxofaan commented 4 months ago

cc @HansVRP

HansVRP commented 4 months ago

Perhaps it would be better to limit the job runtime instead of the job cost?

We have seen that runtime is a pretty good indicator of job costs, however it scales differently for every process graph.

Usually with some initial trial and error you do have an idea of how long your job is allowed to last. When it runs longer it is either unoptimized, there is a scaling issue or a problem in fetching the information.

The required information is already available since we do track the job status...

soxofaan commented 4 months ago

Note that this ticket is about the existing "budget" field in the openEO API, which is strictly about currency/credits, so it's a bit out of scope to involve run time. Moreover, with run time you have the same problems as originally stated: how to predict it, and if it can not be predicted, is it ok to abort a job that exceeds a limit and still charge for it?

FYI related discussion about run time limits:

m-mohr commented 2 months ago

Related to #544