On 3/19/2016 11:12 AM, Robert Brown wrote: > I have an index of 60m docs split across 2 shards (each with a replica). > > When load testing queries (picking random keywords I know exist), and > randomly requesting facets too, 95% of my responses are under 0.5s. > > However, during some random manual tests, sometimes I see searches > taking between 1-2 seconds. > > Should I expect a simple shard split to assist with the speed > immediately? Even with the 2 new shards still being on the original > servers? > > Will move them to their own dedicated hosts, but just want to > understand what I should expect during the process.
Maybe. It depends on why the responses are slow in the first place. If your queries are completely CPU-bound, then splitting into more shards and either putting those shards on additional machines or taking advantage of idle CPUs will make performance better. Note that if your query rate is extremely high, you should only have one shard replica on each server -- all your CPU power will be needed for handling query volume, so none of your CPUs will be idle. Most of the time, Solr installations are actually I/O bound, because there's not enough unused RAM to effectively cache the index. If this is what's happening and you don't add memory (which you can do by adding machines and adding/removing replicas to move them), then you'll make performance worse by splitting into more shards. Thanks, Shawn