When performing an operation (indexing, searching, volume indexing, etc.), a chip in a node uses a single thread of execution, which means one CPU core.
If you have one request that is currently running, it will use one CPU core per fragment. For example, three node clusters with one index, which has 6 primary fragments and one replica, will have a total of 12 fragments, 4 fragments on each node.
If there is only one query in the cluster, for this index ES will request all 6 fragments of the index (regardless of whether they are primary or replicas), and each node will use from 0 to 4 core CPUs to work, because the round- algorithm The robin used by ES to select which copy of a fragment performs a search cannot select any fragments on a single node or a maximum of 4 fragments on a single node.
source share