Solr基础原理

2018-07-06

Solr基础原理

[TOC]

1.目录核心组成

1.core

​ solr的索引库,可以理解为数据库,需要手动创建(文件夹),core可以根据需要建立多个索引库,索引库的内容可以在后台看到也可以在core中看到

2.solrhome

​ solr的配置目录,solr服务器所有的配置文件存放的目录(core创建在solrhome中)

3.collection一个完整的索引库,逻辑结构

1.高并发,高可用

  • solr的逻辑索引(逻辑意义上的完整索引),由多个shard片的组成负载均衡
  • 每个shard可以分成多份Core,每份相同,主(leadereplica)从(replica)同步,高可用
  • collection本质是可以跨越多个核的索引,包含冗余的索引.

2.海量存储

  • 当存储空间不够时,只需要横向扩充shard片就可以
4.SolrCloud,物理结构

一个SolrCloud集群,包含多个Solr服务器,每个Solr服务器包含多个Core(索引库)

参考https://blog.csdn.net/zhousenshan/article/details/51799567

2.配置详解

1.配置中文分词
  1. ​ <!– default values for query parameters can be specified, these
  2. ​ will be overridden by parameters in the request
  3. ​ –>
  4. explicit
  5. item_keywords
  6. 10
  1. explicit
  2. json
  3. true
  4. item_keywords
2.配置Solr Dataimport
  1. data-config.xml
3.Solr后台的使用

第一次先Dataimport–>Execute导入,然后Refresh刷新状态即可

Query:查询功能

​ q ; –>第一个 表示字段; 第二个 表示字段的内容;

​ 如 item_keywords:北京 分词中有”北京”关键字的内容

​ item_price:[* TO 200] 价格是200以内的内容

​ item_price:[100 TO 700] 价格是100-200的内容

3.java中的作用

建立一个新的索引模块 index,接口层和实现发布层

写Solr更新搜索两个方法dubbo发布即可在controller中使用

(一般与MQ一起使用,如activeMQ,见activeMQ基础与运用章节)