欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

Solr01-Solr概述及Solr文件说明

程序员文章站 2022-08-09 09:11:12
Solr是Apache软件基金组织旗下的一个*开源项目, 是**基于Lucene的全文搜索服务**, 是一个独立的企业级搜索应用服务器, 可以独立运行于Jetty, Tomcat等Web容器中. 使用Solr可以很方便地实现全文索引和搜索等一系列功能. ......

目录

1 Solr概述

1.1 Solr是什么

Solr是Apache软件基金组织旗下的一个*开源项目, 是基于Lucene的全文搜索服务, 是一个独立的企业级搜索应用服务器, 可以独立运行于Jetty, Tomcat等Web容器中.

使用Solr可以很方便地实现全文索引和搜索功能, 比如:

1.1.1 创建索引

客户端可以通过HTTP的post方法向Solr服务器发送一个描述Field及其内容的XML文档(或JSON格式的串), Solr服务器根据XML文档添加、更新、删除索引;

1.1.2 搜索索引

客户端可通过HTTP的get方法向Solr服务器发送请求, 对Solr服务器返回的XML、JSON格式的结果进行解析.

Solr不提供构建页面UI的功能, 它提供了一个管理页面, 通过管理页面可以查询Solr的配置和运行情况.

1.2 Solr与Lucene的区别

Lucene是一个开放源代码的全文检索引擎工具包, 提供了完整的索引引擎和查询引擎功能, 目的是为开发人员提供一个简单易用的工具包, 以方便在目标系统中实现全文检索的功能, 或以Lucene为基础构建全文检索应用. 它不是一个完整的服务, 不能独立运行.

Solr的目标是打造一款企业级的搜索引擎系统. 它是基于Lucene构建的全文检索服务, 是一个完整的服务, 可独立运行于Web容器中.

通过Solr可以快速构建企业级的搜索引擎, 也可高效地完成站内搜索功能.

Solr01-Solr概述及Solr文件说明

2 Solr文件说明

2.1 Solr的目录结构

  • 下载Solr安装包:

    下载地址:

    说明: Solr与Lucene在3.x版本后开始同步更新, 这里使用4.10.4版本(从Solr 5.x开始要求JDK必须是1.8及以上).

  • 目录说明:
    Solr01-Solr概述及Solr文件说明

    | bin: Solr的运行脚本
    | contrib: Solr的扩展jar包, 用于增强Solr功能
    | dist: build过程中生成的war和jar文件, 以及其他依赖文件
    | docs: Solr的API文档
    | example: Solr工程的示例目录
    ​ --- | solr: 标准的SolrHome, 包含一个默认的SolrCore(即collection1)
    ​ --- | multicore: 包含了在Solr的multicore中设置的多个Core目录
    ​ --- | webapps: 包含了一个solr.war, 该war包可作为Solr的运行示例工程(这里部署的Solr服务就使用它)
    | licenes: Solr相关的许可信息

2.2 其他常用概念说明

SolrHome目录是Solr服务运行的主目录.

一个SolrHome目录可包含多个SolrCore.

SolrCore目录中包含了运行Solr实例的配置文件和数据文件(日志和索引文件).

每一个SolrCore提供独立的索引和搜索服务.

2.3 创建基础文件目录

  • 建立work目录(作为SolrHome根目录);

  • 将Solr解压目录中的solr目录, 拷贝至work目录下;

    此时SolrHome(即solr, 为方便可改名为solrhome)和SolrCore(即collection1)的目录结构如下:
    Solr01-Solr概述及Solr文件说明

    说明:

    conf: SolrCore运行的配置信息;

    data: SolrCore存放日志和索引文件的目录;

    core.properties: SolrCore的信息, 如名称等, 在Solr运行时创建.

2.4 solrconfig.xml文件说明

说明: solrconfig.xml文件位于SolrCore的conf目录下, 通过solrconfig.xml可以配置SolrCore实例的相关信息, 可不作修改. 企业项目开发中需要修改三个常用的标签: lib标签、datadir标签、requestHandler标签.
详细说明请参见:

2.5 schema.xml文件说明

说明: schema.xml文件在SolrCore的conf目录(即collection1/conf)下, 主要用于配置Solr的域(Field)以及域的类型(FieldType). 在Solr中, 域要先配置再使用.
详细说明请参见:

版权声明

作者: ma_shoufeng(马瘦风)

出处: 博客园

您的支持是对博主的极大鼓励, 感谢您的阅读.

本文版权归博主所有, 欢迎转载, 但未经博主同意必须保留此段声明, 且在文章页面明显位置给出原文链接, 否则博主保留追究法律责任的权利.