Fetching intermediate aggregation results in ES

Some of our queries take really long to return results as our dataset is huge. I was wondering if it is possible to somehow fetch intermediate aggregation results? I would imagine that internally, ElasticSearch finds aggregations inside each of the segments, combines them in each of the shards, and then combines them across indices. I was wondering if there is a way to tap into the intermediate results say on the index level and fetch these as they are updated. The use case is that when our customers query our data, they'd be able to see their results updating to the final value instead of them waiting for an eternity before they get the final aggregation results.

Would appreciate any help!