Solr01-Solr概述及Solr文件说明

Posted shoufeng

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Solr01-Solr概述及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可以快速构建企业级的搜索引擎, 也可高效地完成站内搜索功能.

技术分享图片

2 Solr文件说明

2.1 Solr的目录结构

  • 下载Solr安装包:

    下载地址: http://archive.apache.org/dist/lucene/solr/

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

  • 目录说明:
    技术分享图片

    | 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)的目录结构如下:
    技术分享图片

    说明:

    conf: SolrCore运行的配置信息;

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

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

2.4 solrconfig.xml文件说明

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

2.5 schema.xml文件说明

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

版权声明

作者: ma_shoufeng(马瘦风)

出处: 博客园 马瘦风的博客

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

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

以上是关于Solr01-Solr概述及Solr文件说明的主要内容,如果未能解决你的问题,请参考以下文章

solr环境搭建及java小demo

Linux中solr及solr集群的搭建

solr 6.1 服务端 tomcat 搭建及调用

Solr02-solrconfig.xml文件详细说明

配置 Solr

Win10 下solr安装及搭建