Elastic Search Load Testing With Apache Benchmark

I am using the elastic cloud to store my data. My index having 13Lac documents and I am using apache benchmark to perform load testing on my elastic search index. I am using the following command to perform load testing:

ab -p <<file.txt>> -T application/json -c 500 -n 50000 -t 60 -l <<elastic url>>

After running above command I get the following result:

Complete requests:9000
Failed requests: 0

In the request, I have mentioned the number of requests is 50000 and concurrency is 500 but the total completed request is 9000 only. How I increase completed request count? Is any setting in elastic search to support max request concurrency(like 500)? please let me know

What is the size of your cluster? What is the query you are running? What is the size and structure of your documents?

If you are testing query performance I would recommend making sure that you vary your queries so you do not just test serving queries from the cache. Try to make them as realistic as possible. I would also recommend starting with a low concurrency and then gradually increase this while you are monitoring latencies. This way you will see how latencies varies with concurrency and how many queries your cluster can support while delivering responses within SLA.

The following resources may also be useful:

https://www.elastic.co/elasticon/conf/2016/sf/quantitative-cluster-sizing

https://www.elastic.co/webinars/using-rally-to-get-your-elasticsearch-cluster-size-right

https://www.elastic.co/elasticon/conf/2018/sf/the-seven-deadly-sins-of-elasticsearch-benchmarking

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