Why there isn't an official track to measure the query throughput?


(Harry Lee) #1

Why there isn't an official track to measure the query throughput?
Most of the query challenge in the official tracks have a target throughput to 20.
It seems all the official tracks have a indexing throughput challenge but not query throughput. Why is that?


(Christian Dahlqvist) #2

As described in this blog post and this Elastic{ON} talk, throughput and service time affect each other. As you increase throughout and system resources get depleted, service time will inevitably go up. When you benchmark on the maximum throughput a cluster can handle the service time can be quite long.

When you are indexing data, throughput is generally much more important than service time. The time it takes to index a request does often not matter as long as the throughput is good. This is however in my experience rarely the case for queries where there generally always is an SLA around service time that need to be met. When benchmarking queries it is therefore very common to gradually increase the query rate in fixed steps until the SLA is no longer met, which gives the query throughout the cluster can handle.


(Harry Lee) #3

When benchmarking queries it is therefore very common to gradually increase the query rate in fixed steps until the SLA is no longer met, which gives the query throughout the cluster can handle.

Yes, but it seems I can't find any of the official tracks that gives the query throughout. All the query operations there have a low "target-throughput" limit.


(Christian Dahlqvist) #4

As the query latency and throughput will depend a lot on your data and queries, I would recommend you create your own track based on your data and queries. For inspiration you can look at this challenge from the rally-eventdata-track which shows how you can create a track that gradually increases throughput. In this case it may be the opposite of what you want as I try to find the highest indexing throughput that still gives me acceptable query latencies, but you should be able to use a similar construct for just querying.


(Harry Lee) #5

Okay, I'll check it. Thank you.


(system) #6

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.