2018-07-06
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.配置中文分词
- <!– default values for query parameters can be specified, these
- will be overridden by parameters in the request
- –>
-
-
explicit -
item_keywords -
10
-
-
explicit -
json -
true -
item_keywords -
2.配置Solr Dataimport
-
-
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基础与运用章节)