We’ve been running a load test against our index and have noticed that the facet queries are significantly slower than we would like. Currently these types of queries are taking several seconds to execute and are wondering if it would be possible to speed these up. Repeating the same query over and over does not improve the response time so does not appear to utilise any caching. Ideally we would like to be targeting a response time around tens or hundreds of milliseconds if possible.
An example query that is taking around 2-3 seconds to execute is: q=*.* facet=true facet.field=D_UserRatingGte facet.mincount=1 facet.limit=-1 rows=0 "response":{"numFound":18979503,"start":0,"maxScore":1.0,"docs":[]} "facet_counts":{ "facet_queries":{}, "facet_fields":{ "D_UserRatingGte":[ "1575",16614238, "1576",16614238, "1577",16614238, "1578",16065938, "1579",12079545, "1580",458799]}, "facet_ranges":{}, "facet_intervals":{}, "facet_heatmaps":{}}} I have also tried the equivalent query using the JSON Facet API with the same outcome of slow response time. Additionally I have tried changing the facet method (on both facet apis) with the same outcome of slow response time. The underlying field for the above query is configured as a solr.IntPointField with docValues, indexed and multiValued set to true. The index has just under 19 million documents and the physical size on disk is 10.95GB. The index is read-only and consists of 4 segments with 0 deletions. We’re running standalone Solr 8.3.1 with a 8GB Heap and the underlying Google Cloud Virtual Machine in our load test environment has 6 vCPUs, 32G RAM and 100GB SSD. Would anyone be able to point me in a direction to either improve the performance or understand the current performance is expected? Kind Regards, James Bodkin