codecamp

什么是Solr缩放和分布?

Solr缩放和发布简介

Lucene和Solr都可以通过最小的自定义编码来扩展以支持大型实现。

本节将包含以下的内容:

  • 在多个服务器上分布索引
  • 在多台服务器上复制索引
  • 合并索引

如果需要对索引和查询进行完整的扩展,以及复制、负载平衡和故障转移,则可能需要使用SolrCloud。有关配置和使用 SolrCloud 的完整详细信息,请查阅 SolrCloud 部分。

Solr分布解决什么问题?

如果搜索时间过长或索引正在接近其机器的物理限制,则应考虑在两台或更多Solr服务器上分布索引。

要分布索引,可以将索引划分为分片,分片分别运行在不同的机器上。然后,Solr将搜索分割成子搜索,这些子搜索在各个分片上运行,并汇总报告结果。

底层索引分片的体系结构细节对最终用户是不可见的,他们在查询非常大的索引时只是体验更快的性能。

复制解决什么问题?

在以下情况下复制索引是有用的:

  • 您有一台机器无法处理的大型搜索量,因此您需要在索引的多个只读副本上分发搜索。
  • 索引的高容量/高索引率比会消耗机器资源,并降低索引机上的搜索性能,因此需要将索引和搜索分开。
  • 您想要对索引进行备份(请参阅制作和恢复备份)。
SolrCloud自动缩放API
Solr分布式搜索与索引分片
温馨提示
下载编程狮App,免费阅读超1000+编程语言教程
取消
确定
目录

SolrCloud

SolrCloud配置和参数

如何使用AsciiDoc

关闭

MIP.setData({ 'pageTheme' : getCookie('pageTheme') || {'day':true, 'night':false}, 'pageFontSize' : getCookie('pageFontSize') || 20 }); MIP.watch('pageTheme', function(newValue){ setCookie('pageTheme', JSON.stringify(newValue)) }); MIP.watch('pageFontSize', function(newValue){ setCookie('pageFontSize', newValue) }); function setCookie(name, value){ var days = 1; var exp = new Date(); exp.setTime(exp.getTime() + days*24*60*60*1000); document.cookie = name + '=' + value + ';expires=' + exp.toUTCString(); } function getCookie(name){ var reg = new RegExp('(^| )' + name + '=([^;]*)(;|$)'); return document.cookie.match(reg) ? JSON.parse(document.cookie.match(reg)[2]) : null; }