1、分发
这个功能是已经配置在query request handler里面的。因此你无需做额外的配置,如果你想在多个shards上面进行查询,那么你只需要在url跟相关的参数即可:
Eg: http://localhost:8080/solr1/select?shards=localhost:8080/solr1,localhost:8080/solr2&q=*php*
2、SOLR复制模式
SOLR复制模式,是一种在分布式环境下用于同步主从服务器的一种实现方式,因之前提到的基于rsync的SOLR不同方式部署成本过高,被SOLR1.4版本所替换,取而代之的就是基于HTTP协议的索引文件传输机制,该方式部署简单,只需配置一个文件即可。
以下讲解具体操作步骤:
步骤分主服务器和从服务器,允许有多个从服务器,即从服务器的配置一样。
主服务器:
在solrConfig.xml中,找到以下行:
<requestHandler name="/replication" class="solr.ReplicationHandler" >
<lst name="master">
<str name="replicateAfter">commit</str>
<str name="confFiles">schema.xml,stopwords.txt,elevate.xml</str>
<str name="commitReserveDuration">00:05:00</str>
<str name="httpBasicAuthUser">123</str>
<str name="httpBasicAuthPassword">123</str>
</lst>
</requestHandler>
说明:
replicateAfter : SOLR会自行在以下操作行为发生后执行复制: 'commit', 'startup' 'optimize',这里我们选择commit , 即SOLR每一次接受到commit请求后,会执行复制策略。
confFiles : 待分发的配置文件,solr 也会将主服务器上的字段配置文件:schema.xml和stopwords.txt,固排文件: elevate.xml同步到辅服务器上。
commitReserveDuration: 每次commit之后,保留增量索引的周期时间,这里设置为5分钟。
从服务器
<requestHandler name="/replication" class="solr.ReplicationHandler" >
<lst name="slave">
<str name="masterUrl">http://localhost:port/solr/corename
/replication</str>
<str name="pollInterval">00:05:00</str>
<str name="compression">internal</str>
<str name="httpConnTimeout">5000</str>
<str name="httpReadTimeout">10000</str>
<str name="httpBasicAuthUser">123</str>
<str name="httpBasicAuthPassword">123</str>
</lst>
</requestHandler>
说明:
masterUrl : 主服务器同步URL地址,
“replication”是固定字符串,eg:http://localhost:8080/solr/core/replication
pollInterval:从服务器同步间隔,即每隔多长时间同步一次主服务器
httpConnTimeout:设置连接超时(单位:毫秒)
httpReadTimeout:如果设置同步索引文件过大,则应适当提高此值。(单位:毫秒)
httpBasicAuthUser:验证用户名,需要和主服务器一致
httpBasicAuthPassword:验证密码,需和主服务器一致
compression:external or internal 使用SOLR自己的压缩算法或应用容器的
区别: 内部算法会大大提高同步成本,原话: USE THIS ONLY IF YOUR BANDWIDTH IS LOW . THIS CAN ACTUALLY SLOWDOWN REPLICATION IN A LAN。
因此建议使用外部方式即: external .
同时需要配置外部应用容器: 以TOMCAT为例:
server.xml中
<Connector compression="on"
compressableMimeType="text/html,text/xml,text/plain"
compressionMinSize="2048"/>
分享到:
相关推荐
**一、Solr分布式架构** 1. **SolrCloud模式**: Solr的分布式特性主要体现在SolrCloud模式中,这是一个基于Zookeeper协调的集群解决方案。每个Solr实例被称为一个Solr节点,多个节点组成了SolrCloud。Zookeeper用于...
该模型首先利用Solr分布式索引器生成索引文件。Solr作为一个开源的搜索服务器,基于Java开发,提供了分布式索引、搜索和高可用的集群功能。接着,利用Hadoop分布式集群进行数据处理和存储,Hadoop集群由多台计算机...
在本篇Solr学习笔记中,我们将探讨Solr的分布式索引功能,这对于处理大量数据和实现高可用性至关重要。Solr的分布式索引能力允许我们跨越多个节点分布和处理索引过程,从而提高索引速度和查询性能。在实际应用中,这...
Solr分布式部署的目标主要有两个: 1. **主辅服务器同步**:确保每当客户端对索引进行COMMIT操作时,更新能够及时地应用到辅助服务器上。这提供了高可用性和数据一致性,即使主服务器出现问题,辅助服务器也能无缝...
常见的分布式索引系统有Elasticsearch、Hadoop HBase、Apache Solr等。这些系统通常采用分片(Sharding)和副本(Replicas)策略来确保数据的可用性和高并发性能。 配置文件是任何复杂系统的核心部分,它定义了系统...
Solr是基于Lucene构建的一个开源的企业级搜索服务器,它支持分布式搜索并提供了一些额外的功能,如管理搜索索引,使得分布式索引更加易于实现和管理。 分布式索引层的关键技术包括分片(sharding)和B+树。分片是将...
Solr支持分布式部署,并且提供了丰富的API接口,方便与其他系统集成。在Solr中,索引的构建与查询是非常核心的功能之一。 #### 二、Solr创建索引的过程 Solr的索引创建过程主要由`SolrDispatchFilter`处理。当接收...
### 56 solrCloud分布式搜索与索引过程 #### 知识点一:SolrCloud简介 在深入了解SolrCloud的分布式搜索与索引过程之前,我们需要对SolrCloud有一个基本的认识。SolrCloud是Apache Solr的一个扩展模块,它提供了一...
三、Solr分布式索引 Solr是另一个开源搜索平台,特别适合构建分布式索引。通过Solr集群,可以实现跨服务器的索引构建和检索,提高查询效率。用户可以根据主题创建索引,获取更精确的搜索结果。同时,Solr还支持通过...
Solr支持分布式部署,可以将索引分布在多台服务器上,实现水平扩展。通过Sharding和Replication,可以实现负载均衡和数据冗余,提高系统的可用性和性能。 8. **优化与调优**: 在实际应用中,我们需要不断优化索引...
3. **Solr分布式索引**: - Solr是一个基于Lucene的全文检索服务器,通过分布式索引实现跨服务器的信息交换。它能够在多台机器上并行执行索引任务,加速检索过程。用户可以根据特定主题进行索引,从而提高查询效率...
SOLR利用倒排索引技术,能实现毫秒级的全文搜索,且支持分布式部署,适合大数据量的场景。 将MySQL作为SOLR的索引源,首先需要配置数据源连接。在SOLR中,这通常通过DataImportHandler (DIH) 实现,这是一个内建的...
Solr是一个高性能的搜索服务器,它基于Apache Lucene构建,提供了分布式索引、搜索、排名等功能,广泛应用于企业级搜索解决方案中。文中提到,为了解决铁路科技信用与能力评价中面临的问题,如科研活动信息分散、...
Solr能够通过其索引处理模块,在多台计算机节点上并行创建索引,显著提升了索引的构建速度,这对于分布式全文检索系统至关重要。 分布式设计是提高系统检索性能的关键所在。本文提出了使用Zookeeper来管理集群的...
Solr全文索引是基于Apache Lucene的开源搜索服务器,它提供了一个分布式、可扩展、高性能的全文检索和分析平台。在本项目中,"Weiz.Solr"似乎是一个C#开发的Solr客户端库,用于简化与Solr服务器的交互。下面将详细...
ZooKeeper作为分布式协调服务,提供了高可用性以及一致性保证,而Solr则是一款高性能、可扩展的全文搜索引擎。将二者结合,可以构建出一个稳定、高效的企业级搜索解决方案。本文旨在详细介绍如何在两台CentOS 6.3 x...
在Solr分布式搜索引擎架构中,Zookeeper可以管理集群的状态,协调不同节点的工作,保持索引的一致性和同步。 Mongodb是一个高性能的NoSQL数据库,它支持分布式文件存储。在本文中,SolrCloud(Solr的分布式实现)与...
SolrCloud是一个基于Solr的分布式搜索解决方案,它在内部实现了分布式索引机制,可以实现对HBase中数据的高效搜索。在文章提到的方案中,SolrCloud不仅作为一个分布式索引器,用于创建和存储索引,还负责处理多条件...
《基于Solr4.9.0的搜索系统:探索索引构建与查询接口》 在当前的信息化时代,搜索引擎已经成为互联网应用不可或缺的一部分。本项目基于Apache Solr 4.9.0版本,构建了一个功能完善的搜索系统,结合了SpringBoot、...