I made a snapshot of an index with 24 shards. The index is of size 700g. When restoring, it restores 4 shards in parallel.
My cluster is a new cluster with only one machine w/o replica nodes. The machine is AWS c3.8xlarge with 32 vCPUs and 60G memory. I also followed How to speed up Elasticsearch recovery?.
When restoring, the memory usage is full. How does elastic search decide how many shards can be restored in parallel? I was wondering how I can tune my machines' hardware config to make restore faster. If my cluster has more machines, can the restoring speed be improved linearly?