You are viewing a plain text version of this content. The canonical link for it is here.
Posted to issues@lucene.apache.org by "Noble Paul (Jira)" <ji...@apache.org> on 2019/10/28 20:15:00 UTC
[jira] [Updated] (SOLR-12993) Split the state.json into 2. a small
frequently modified data + a large unmodified data
[ https://issues.apache.org/jira/browse/SOLR-12993?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]
Noble Paul updated SOLR-12993:
------------------------------
Description:
The new design is posted here
https://docs.google.com/document/d/1AZyiRA_bRhAWkUM1Nj5kg__xpPM9Fd_iwHhYazG38xI/edit#
was:
This a just a proposal to minimize the ZK load and improve scalability of very large clusters.
Every time a small state change occurs for a collection/replica the following file needs to be updated + read * n times (where n = no of replicas for this collection ). The proposal is to split the main file into 2.
{code}
{"gettingstarted":{
"pullReplicas":"0",
"replicationFactor":"2",
"router":{"name":"compositeId"},
"maxShardsPerNode":"-1",
"autoAddReplicas":"false",
"nrtReplicas":"2",
"tlogReplicas":"0",
"shards":{
"shard1":{
"range":"80000000-ffffffff",
"replicas":{
"core_node3":{
"core":"gettingstarted_shard1_replica_n1",
"base_url":"http://10.0.0.80:8983/solr",
"node_name":"10.0.0.80:8983_solr",
"state":"active",
"type":"NRT",
"force_set_state":"false",
"leader":"true"},
"core_node5":{
"core":"gettingstarted_shard1_replica_n2",
"base_url":"http://10.0.0.80:7574/solr",
"node_name":"10.0.0.80:7574_solr",
"type":"NRT",
"force_set_state":"false"}}},
"shard2":{
"range":"0-7fffffff",
"state":"active",
"replicas":{
"core_node7":{
"core":"gettingstarted_shard2_replica_n4",
"base_url":"http://10.0.0.80:7574/solr",
"node_name":"10.0.0.80:7574_solr",
"type":"NRT",
"force_set_state":"false"},
"core_node8":{
"core":"gettingstarted_shard2_replica_n6",
"base_url":"http://10.0.0.80:8983/solr",
"node_name":"10.0.0.80:8983_solr",
"type":"NRT",
"force_set_state":"false",
"leader":"true"}}}}}}
{code}
another file {{status.json}} which is frequently updated and small.
{code}
{
"shard1": {
"state": "ACTIVE",
"core_node3": {"state": "active", "leader" : true},
"core_node5": {"state": "active"}
},
"shard2": {
"state": "active",
"core_node7": {"state": "active"},
"core_node8": {"state": "active", "leader" : true}}
}
{code}
Here the size of the file is roughly one tenth of the other file. This leads to a dramatic reduction in the amount of data written/read to/from ZK.
> Split the state.json into 2. a small frequently modified data + a large unmodified data
> ---------------------------------------------------------------------------------------
>
> Key: SOLR-12993
> URL: https://issues.apache.org/jira/browse/SOLR-12993
> Project: Solr
> Issue Type: Improvement
> Reporter: Noble Paul
> Priority: Major
>
> The new design is posted here
> https://docs.google.com/document/d/1AZyiRA_bRhAWkUM1Nj5kg__xpPM9Fd_iwHhYazG38xI/edit#
--
This message was sent by Atlassian Jira
(v8.3.4#803005)
---------------------------------------------------------------------
To unsubscribe, e-mail: issues-unsubscribe@lucene.apache.org
For additional commands, e-mail: issues-help@lucene.apache.org