新建solrcloud集群重新建索引,不用继续看了。
情景:已有单机solr,因数据量大,查询频繁,需要升级为solrcloud,
单机solr已经建立了大量索引,重建成本太高。
解决问题:solr 到solrcloud 同步数据并做负载均衡。
查了很多资料,没有找到比较好的办法。如果哪位大神有好办法辛苦给个链接。
solrcloud新增数据会做自动的load balancing,是均衡的。
如果有历史数据,扩容,增加结点,需要手动的去切片,并且不是完全均衡的。
如果不重建索引,单节点solr的索引数据可以拷贝到集群中某一分片上。然后重新分片,达到一定程度的负载均衡。
一、拷贝solr的数据到solrcloud
前提建集群solr和solrcloud的core的配置(solrconfig.xml 和 managed-schema)是一样的
1. 关停solrcloud
2. 拷贝 solr 的data 目录到 solrcloud一个节点 ,替换data目录
3. 启动solrcloud ,(有时重启后会发现拷贝数据到副本节点,重新考被,或者重新重启。有其他好方法请告知)
4. 在solrcloud管理页面,找到collctions 选择core,reload
等待一会,集群就可以查到老的数据了。