Reputation: 8678
I have setup Solr 6.6.1 on machine with 48 Core and 96 GB RAM. There are currently 8 million documents in one core that will increase with time. Before this I have similar setup of Solr on small machine 4 cores and 16 GB RAM. But response time is same on both machines that is surprising. From a Slideshare, I have found that one core in solr only gets one CPU. That's why its better to split index into multiple shards. Is it correct or there is some alternative and best way to increase response time.
Finally, the way to split shards when there size become more than 1 Million. Following is the reference slide.
Upvotes: 0
Views: 1029
Reputation: 52902
Your observation is correct, but there's an important detail: this is relevant for a single query - i.e. one query only uses one thread/core. Multiple queries will use multiple threads, so in your case you'll be able to handle more simultaneous users instead.
To optimize for the single query use case, splitting your index into multiple shards is, as you say, the way to go. In that case the query will effectively be split into four separate queries, then merged afterwards instead.
There is no hard limit on when to split, as that will depend on your use case and query profile.
Upvotes: 1