You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@lucene.apache.org by "Noble Paul (JIRA)" <ji...@apache.org> on 2018/07/05 04:37:00 UTC

[jira] [Updated] (SOLR-12536) Enhance autoscaling policy to equally distribute replicas on the basis of arbitrary properties

     [ https://issues.apache.org/jira/browse/SOLR-12536?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Noble Paul updated SOLR-12536:
------------------------------
    Description: 
*example:1*
{code:java}
{"replica" : "#EQUAL"  , "shard" : "#EACH" , "port" : "#EACH" }
//if the ports are "8983", "7574", "7575", the above rule is equivalent to
{"replica" : "#EQUAL"  , "shard" : "#EACH" , "port" : ["8983", "7574", "7575"]}{code}
*case 1*: {{numShards =2, replicationFactor=3}} . In this case all the nodes are divided into 3 buckets each containing nodes in that port. Each bucket must contain {{3 * 2 /3 =2}} replicas
{code:java}
{"replica" : "#EQUAL" , "sysprop.zone" : "#EACH"}
{code}
*case 2*: numShards = 3, replicationFactor=1, zones are : {{east}}, {{west}} (total = 2)

this means each zone must have equal replicas . {{total replicas = 3 * 1 = 3}}, {{total zones = 2}} , {{replicas per zone = 3/2 = 1.5}}
*example : 2*
{code:java}
{"replica" : "#EQUAL"  , "shard" : "#EACH" , "sysprop.zone" : "#EACH" }
//if the zones are "east_1", "east_2", "west_1", the above rule is equivalent to
{"replica" : "#EQUAL"  , "shard" : "#EACH" , "sysprop.zone" : ["east_1", "east_2", "west_1"]}{code}
The behavior is similar to example 1 , just that in this casewe apply it to a system property 

  was:
{code:java}
{"replica" : "#EQUAL"  , "shard" : "#EACH" , "port" : "#EACH" }
//if the ports are "8983", "7574", "7575", the above rule is equivalent to
{"replica" : "<2"  , "shard" : "#EACH" , "port" : ["8983", "7574", "7575"]}{code}
*case 1*: {{numShards =2, replicationFactor=3}} . In  this case all the nodes are divided into 3 buckets each containing nodes in that port. Each bucket must contain {{3 * 2 /3 =2}} replicas 


{"replica" : "#EQUAL"  , "sysprop.zone" : "#EACH"}
{code}
*case 1*: numShards = 3, replicationFactor=1, zones are : {{east}}, {{west}} (total = 2)

this means each zone must have equal replicas . {{total replicas = 3 * 1 = 3}}, {{total zones = 2}} , {{replicas per zone = 3/2 = 1.5}}

{code:java}
{"replica" : "#EQUAL"  , "shard" : "#EACH" , "sysprop.zone" : "#EACH" }
//if the zones are "east_1", "east_2", "west_1", the above rule is equivalent to
{"replica" : "<2"  , "shard" : "#EACH" , "port" : ["east_1", "east_2", "west_1"]}{code}

The behavior is equivalent to the above


> Enhance autoscaling policy to equally distribute replicas on the basis of arbitrary properties
> ----------------------------------------------------------------------------------------------
>
>                 Key: SOLR-12536
>                 URL: https://issues.apache.org/jira/browse/SOLR-12536
>             Project: Solr
>          Issue Type: Sub-task
>      Security Level: Public(Default Security Level. Issues are Public) 
>            Reporter: Noble Paul
>            Assignee: Noble Paul
>            Priority: Major
>
> *example:1*
> {code:java}
> {"replica" : "#EQUAL"  , "shard" : "#EACH" , "port" : "#EACH" }
> //if the ports are "8983", "7574", "7575", the above rule is equivalent to
> {"replica" : "#EQUAL"  , "shard" : "#EACH" , "port" : ["8983", "7574", "7575"]}{code}
> *case 1*: {{numShards =2, replicationFactor=3}} . In this case all the nodes are divided into 3 buckets each containing nodes in that port. Each bucket must contain {{3 * 2 /3 =2}} replicas
> {code:java}
> {"replica" : "#EQUAL" , "sysprop.zone" : "#EACH"}
> {code}
> *case 2*: numShards = 3, replicationFactor=1, zones are : {{east}}, {{west}} (total = 2)
> this means each zone must have equal replicas . {{total replicas = 3 * 1 = 3}}, {{total zones = 2}} , {{replicas per zone = 3/2 = 1.5}}
> *example : 2*
> {code:java}
> {"replica" : "#EQUAL"  , "shard" : "#EACH" , "sysprop.zone" : "#EACH" }
> //if the zones are "east_1", "east_2", "west_1", the above rule is equivalent to
> {"replica" : "#EQUAL"  , "shard" : "#EACH" , "sysprop.zone" : ["east_1", "east_2", "west_1"]}{code}
> The behavior is similar to example 1 , just that in this casewe apply it to a system property 



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)

---------------------------------------------------------------------
To unsubscribe, e-mail: dev-unsubscribe@lucene.apache.org
For additional commands, e-mail: dev-help@lucene.apache.org