I have a query in Elastic Search which is fetching 10000 records having approximately 8MB of data. In the "took" tag in the JSON response, it is showing "1071" . However the response is actually appearing in Kibana after approximately, 6 to 7 seconds later. Same thing is observed, when I am executing it from JAVA API. After doing some googling, I understood that "took" includes only the query execution time in Elastic Search and hence does not include the time for the following:
Sending the response to the server
Deserializing the request from JSON on the server
Serializing the response into JSON on the server
Sending the response over the network
So, given the above scenario, what measures can I take to make sure that it appears in a very reasonable time (in 2 to 3 seconds)?
Actually, another application is dependent on this query and at a certain given time, we do not expect the result to be more than 10000 but it can very easily be e.g. 8000. So we have kept the upper limit as 10000.
Well, we are giving this data to another application which has some other business logic for further clean up and after that the data is being presented to the user.
Apache, Apache Lucene, Apache Hadoop, Hadoop, HDFS and the yellow elephant
logo are trademarks of the
Apache Software Foundation
in the United States and/or other countries.