2021SC@SDUSC
项目名称:Solr
Solr简单介绍:Solr 是一个基于 Apache Lucene 之上的搜索服务器,它是一个开源的、基于 Java 的信息检索库,它的底层的核心技术是使用Lucene来实现的,而Lucene本质上是一个搜索库,Solr是一个独立的应用程序,也可以理解为Solr是Lucene面向企业搜索应用的扩展。
以下为官方参考指南以及中文翻译后的指南。
Solr Tutorial | Apache Solr Reference Guide 8.10
安装说明:Solr 可从 Solr 网站获取。您可以在此下载最新版本的Solr 8.10.0。
Solr:Solr Downloads - Apache Solr
solr-8.10.0-src.tgz:Solr 源代码包。如果您想在 Solr 上开发而不使用官方的 Git 存储库,这将非常有用。本次课程中所需要下载的就是Solr源代码包。
下载之后进行解压即可,目录内容如图。
点击solr文件夹后的目录
bin:启动相关。
contrib:插件包,以供solr使用。
core:进入该文件夹后有一个packge-info.java的文件,打开后显示如下注释。
意思是该文件夹包含常用的重用类和接口(已经弃用的包,并且不要新建类)。
docs:Solr版本更新后的内容。
solrj:Solr的Java客户端。
安装完成后使用ant及idea进行环境配置。
配置期间由于需要下载各种依赖包所以所需时间较长。
使用说明:
菜单栏功能如图。
Analysis:官方文档给出的解释----通过 Solr 的“分析”界面,您可以根据模式中的字段、字段类型和动态字段配置来检查数据的处理方式。您可以分析在索引期间或在查询处理过程中如何处理内容,以及如何单独或同时查看结果。
简而言之此功能可以用于查看分词的效果。
Documents:官方文档给出的解释----文档界面提供了一个简单的表单,允许您直接从浏览器以各种格式执行各种 Solr 索引命令。
1.以 JSON、CSV 或 XML 格式复制文档并将其提交给索引;
2.上传文件(使用 JSON、CSV 或 XML 格式)
3.通过选择字段和字段值来构建文档
简而言之此功能可以根据指定格式上传数据。
Query:您可以使用查询界面将搜索查询提交给 Solr 集合并分析结果。
Solr简要工作流程:首先通过Documents界面提交文档数据以及进行增删改查操作,数据在通过分词等操作之后将会以倒排表的结构来组织,之后按照索引条件进行索引查找。
所以总的来说solr主要功能分为文档管理,数据分析过滤,查询处理。需要分析的主要代码也集中于此。
根据文件目录,这些部分的代码分布于core文件夹中的子文件夹,例如分词器。
组内分工:我的主要任务是对数据分析过滤功能的源码进行分析。