Optimal arquitecture

Hi everyone,

It's my first time in this forum and I have a little time working with Elastic.
I have developed a project that sends multiple searches to Elastic, and I just did not find the optimal configuration for it work as fast as possible.
Actually, this is my test arquitecture:

  • 5 Nodes (2 CPU - 2Gb each one)
  • 2 Indices (not change):
    Indice 1 - 100Mb / 1Million Docs / 5 fields / 5 Shards / 4 Replies
    Indice 2 - 4.5 GB / 10 Million Docs / 15 fields / 5 Shards / 2 Replies

My app has 18 threads sending queries (5 Million in each execution) to elastic and waiting for response.
I'd like know which is the optimal AWS arquitecture for production:

  • Is faster many small CPU or few powerful CPU?
  • 2 instances with 2 CPU / 8Gb each one, would be enough? Or
  • 4 instances with 2 CPU / 4Gb each one, would be faster.

Thanks for your help.

Most of this you need to test to see what each differing infrastructure will provide in terms of response times and how that matches against your SLAs.

That's too many shards! I'd really only have a single shard with 1 or more replicas.

Thanks Walcom , I will reduce the number of shards and try again.

With regard to architecture, I just wanted to get an idea about whether it is best choice to have many small CPUs or less powerful CPUs considering my indexes. Thank you anyway.