在Ubuntu下安装Solr
使用wget命令去官网下载solr的压缩包。
1 wget https://mirrors.bfsu.edu.cn/apache/lucene/solr/8.6.3/solr-8.6.3.tgz
使用tar命令解压后,在solr的主目录 solr-8.6.3/ 下的 bin 目录下执行 ./solr start ,也可以查看solr的其他命令,指定端口启动。
会发现出现两个警告,暂时先不管,这两个警告是在说当前的文件读写数限制在1024,建议把这个值改成65000,另一个是当前的最大进程数是14885,建议也把它设置成65000。这些可以去找相关的Linux的配置文件来修改。
然后访问solr的界面(此处略过了一些因为防火墙导致无法访问的问题),如下:
还可以使用solr的一些命令,:
- -c <name> -要创建的核心或集合的名称(必需)。
- -d <confdir> -配置目录,在SolrCloud模式非常有用。
- -n <configName> -配置名称。这将默认为核心或集合的名称。
- -p <port> -本地Solr的实例的端口发送create命令; 默认脚本试图通过寻找运行Solr的实例来检测端口。
- -s <shards> -将集合拆分为的分片数,默认为 1.
- -rf <replicas> -集合中的每个文件的份数。默认值是1。
接下来创建一个核心 core1:
1 solr-8.6.3/bin/solr create -c core1
可以看见创建核心 core1 成功了,但出现了一个警告,是说创建核心的时候没有指定configset,默认会使用_default_configset里面的配置,这种方式不适合生产环境下使用。
刷新下浏览器,发现可以选择核心core1。
这个核心/集合下有很多核心专用的工具:
-
Ping - 让你 ping 一个已命名的核心,并确定核心是否处于活动状态。
-
插件/统计(Plugins/Stats) - 显示插件和其他已安装组件的统计信息。
-
复制(Replication) - 显示核心的当前复制状态,并允许你启用/禁用复制。
-
段信息(Segments Info) - 提供底层 Lucene 索引段的可视化。
如果你正在运行 Solr 的单个节点实例,则通常在每个集合基础上显示的其他 UI 界面也将被列出:
-
分析(Analysis) - 让你分析在特定字段中找到的数据。
-
导入(Dataimport) - 显示有关数据导入处理程序的当前状态的信息。
-
文档(Documents) - 提供了一个简单的表单,允许你直接从浏览器执行各种 Solr 索引命令。
-
文件(Files) - 显示当前的核心配置文件,如:solrconfig.xml。
-
查询(Query) - 让你提交关于核心的各种元素的结构化查询。
-
流(Stream) - 允许你提交流表达式并查看结果和解析解释。
-
模式浏览器(Schema Browser) - 在浏览器窗口中显示架构数据。
下面介绍下分析器,根据模式中的字段、字段类型和动态字段配置来检查数据的处理方式。您可以分析在索引期间或在查询处理过程中如何处理内容,以及如何单独或同时查看结果。把鼠标放在输出内容左边那个"ST"上会显示它的全称,StandardTokenizer标准分词器,下面的“SF”,StopFilter停用词过滤器等。
文档界面提供了一个简单的表单,允许你直接从浏览器以各种格式执行各种 Solr 索引命令,定义要添加或删除的文档,只更新文档的某些字段,或提交和优化索引上的命令。比如说下面的添加/更新文档。
使用查询界面将搜索查询提交给 Solr 集合并分析结果,下面简单的直接点击执行查询。
查询命令的一些基本使用:
q:查询指定关键字,这个很重要,例如:q=id:1,默认q=*:*;
fq(filter query):过滤查询,提供一个可选的筛选器查询。返回q查询出来的结果中符合fq条件的查询结果;
sort:排序方式,例如:id desc,按照id降序;
start、rows:返回结果的第几条记录开始,分页用途,默认0开始;指定返回结果最多有多少条记录,默认为10,配合start实现分页;
fl:指定返回哪些字段,使用逗号或空格分隔,注意:字段区分大小写,例如:fl=id,title;
df:默认的查询字段,一般默认指定;
qt(query type):指定一个类型来处理查询请求,默认是standard;
wt(write type):指定输出格式,有xml、json等;
indent:是否使用缩进;
version:查询语法的版本,建议不使用,默认;
debugQuery:返回的结果会包含调试信息;
dismax:旨在处理用户输入的简单短语(无复杂语法),并根据每个字段的重要性使用不同的权重(提升)在多个字段中搜索单个术语。附加选项使用户可以根据每个用例的特定规则(独立于用户输入)来影响得分;
edismax:是dismax查询解析器的改进版本;
hl:高亮;
facet:分面,根据索引词将搜索结果按类别进行排列。
详细的可以去Solr官网看看参考指南。