To return stored values, Lucene must 1> read the stored values from disk 2> decompress a minimum 16K block 3> assemble the return packet.
So you’re returning 500-1,000 documents per request, it may just be the above set of steps. Solr was never designed to _return_ large result sets. Search them, yes but not return. So if this never happens when you only return a few docs, this is probably your problem. There are two ways of making this less work for Solr, both depend on returning only docValues="true” fields. 1> return only docValues fields. See useDocValuesAsStored. 2> use the /export handler. Best, Erick > On Jan 13, 2020, at 5:31 AM, Gael Jourdan-Weil > <gael.jourdan-w...@kelkoogroup.com> wrote: > > Hello, > > We are experiencing some performance issues on Solr that seems related to > requests querying multiple pages of results for the same keyword at the same > time. > For instance, querying 10 pages of results (with 50 or 100 results per page) > in the same second for a given keyword, and doing that on different keywords > at the same time also. > > The performance issues we observe is a high CPU usage and response time > increasing a lot. > > This doesn't seem related to the number of requests itself because we can > handle a lot more requets per second when there is no such requests. > > Do you think this makes sense and can be explained by the way Solr works? > > Environment: SolrCloud 7.6.0 > > Gaël