I am now evaluating elasticsearch as our text search solution. But the
problem is that we cannot guarantee that we can always allocate same
hardware for our cluster when new nodes are added, therefor we need a
solution to distribute the load in a smart way based on the machine power.
I read the document and source, I found there is a BalancedShardsAllocator
for balancing the shards between nodes with consideration of shards count.
But basically, the BalancedShardsAllocator still considers the nodes in the
cluster as homogeneous.
It seems that we can implement our own ShardsAllocator to distribute shards
by predefined machine factor(the simplest way maybe), I want to know
whether there is something I missed or there is already some built-in
function affording the ability we want?
And I also have the related second question, currently our search is not
IO-bound because we have big-enough memory on all of our machines but there
are different counts of cpu cores in every machine, I want the client
search can be distributed to nodes based on the count of cpu cores rather
than simple round-robin. Is there any way to do that?
You received this message because you are subscribed to the Google Groups "elasticsearch" group.
To unsubscribe from this group and stop receiving emails from it, send an email to firstname.lastname@example.org.
To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/35708394-19e7-4ab2-ab1a-f632039da26e%40googlegroups.com.
For more options, visit https://groups.google.com/groups/opt_out.