Solr 初探(6)——SolrCloud

Solr 集群,即 SolrCloud 是 Solr 提供的分布式搜索方案,当你需要大规模,容错,分布式索引和检索能力时使用 SolrCloudSolrCloud 是基于 SolrZookeeper 的分布式搜索方案,它的主要思想是使用 Zookeeper 作为集群的配置信息中心

当一个系统的索引数据量少的时候是不需要使用 SolrCloud 的,当索引量很大,搜索请求并发很高,这时需要使用 SolrCloud 来满足这些需求。它有几个特色功能:

Solr 初探(5)——Solrj

一、导入依赖

导入Solr源码包dist文件夹下的solr-solrj-6.6.2.jar以及solrj-lib文件夹下的所有包到项目中。除此之外,还要加上log4j包和junit测试包。

Solr 初探(4)——后台数据导入及 Document 的使用

进入Solr后台页面,选择一个核,点击 Documents,进入 Document 管理标签:

Solr 初探(3)——配置 IK 分词器

Solr 配置第三方分词器也是十分简单,这里以IK分词器为例。点击下载我自编译的 IK 分词器,支持到 JDK 1.8 + Lucene 6.6.2。

Step1:IK 分词器的jar包放到 D:\apache-tomcat-8.5.16\webapps\solr\WEB-INF\lib 目录下。

Solr 初探(2)——域管理

在上一节中,我们已经成功搭建了 Solr 后台,并且在后台中新建了一个核(core),本节将介绍Solr配置域。

我们在后台系统中选择 core1,点击 Documents,在里面添加一个 Document(文档),内容如下:

{"id":"1","name":"jitwxs"}

Solr 初探(1)——Solr 介绍

一、Solr 简介

1.1 Solr 简介

Solr 是 Apache 下的一个顶级开源项目,采用Java开发,它是基于Lucene的全文搜索服务器。Solr 提供了比Lucene更为丰富的查询语言,同时实现了可配置、可扩展,并对索引、搜索性能进行了优化。

Solr 可以独立运行,运行在JettyTomcat等 Servlet 容器中。Solr 不提供构建 UI 的功能,Solr 提供了一个管理界面,通过管理界面可以查询 Solr 的配置和运行情况。

Solr 索引的实现方法很简单,用 Post 方法向 Solr 服务器发送一个描述Field及其内容的JSON文档,Solr根据JSON文档添加删除更新索引。Solr搜索只需发送 Get 请求,然后对 Solr 返回的JSON等格式的查询结果进行解析,组织页面布局。