2017-04-20 1 views
0

En utilisant Solr v5.5distribuer correctement les répliques entre les nœuds à l'aide

Nous essayons d'équilibrer notre placement réplique tesson en utilisant ceci: https://cwiki.apache.org/confluence/display/solr/Rule-based+Replica+Placement

Nous avons défini une règle « réplique: < 5, noeud: * '

Notre configuration: 10 instances Solr 20 tessons facteur 2 de réplication

Alors, que w Le besoin est pour chaque instance d'héberger 4 fragments différents, agissant comme primaire pour 2, et réplique pour 2 autres. Avec notre règle, cela fonctionne presque, bien qu'il y ait toujours quelques instances qui finissent par héberger les deux répliques pour 1 ou 2 fragments. par exemple.

instance0: shard1-replica1 
      shard1-replica2 
      shard2-replica1 
      shard2-replica2 
instance1: shard3-replica1 
      shard3-replica2 
      shard4-replica1 
      shard5-replica2     

Toute idée comment nous pouvons améliorer la règle afin qu'il empêche ce genre de collision?

Répondre

0

Donc, après avoir fait des tests avec des règles différentes, nous avons constaté que la règle

shard:*,replica:4,node:* 

essentiellement résolu le problème. Cela semble prendre en compte chaque fragment dans le cluster, à travers plusieurs collections. Nous avons deux collections, donc bien que la règle force 4 fragments différents par nœud pour une collection, elle n'applique pas 2 leads + 2 suit par node, ce qu'elle faisait auparavant.

La redondance est plus importante que l'équilibre des leaders/suit par nœud, et la performance semble être cohérente, donc cette solution est assez bonne.