2018年8月份学习使用solr,当时下载的版本是solr7.5,写这篇博文的时候是2019年3月份,solr此时已经出到了8.0版本。一个大版本的变迁肯定有很多的改动,暂时还未研究就不赘述了。

此篇博客只是记述一下当时对solr的使用方面研究。

solr下载地址:http://www.apache.org/dyn/closer.lua/lucene/solr/8.0.0

一、Lucene

在了解solr之前,先了解一下Lucene,Lucene是一个全文检索的工具包,本质上是一个jar包,它无法单独在web容器中运行,但是你可以把它导入到某个项目里进行开发使用。当然现在solr已经帮你整好了,不建议这么用。

Lucene进行全文检索的结构图如下

  1)采集数据

    从不同的源进行数据收集,例如数据库,web端等。

    数据库:其他系统存储在数据库中的数据

    web端:直接从web端录入的数据

  2)创建索引

    数据采集完成后,Lucene会将采集到的所有数据创建索引,并将索引存储在索引库中

  3)用户查询

    用户在web端,输入索引关键词,SearchIndex会根据关键词在索引库中进行索引查找

  4)返回结果

    SearchIndex查找到结果后返回给用户

二、solr

solr是建立在Lucene基础上的一个项目包,它可以在Tomcat等web容器中直接运行,同时提供全文检索服务。

但是,solr7.5是可以直接运行的,不需要再像某个版本(我也不知道哪个版本)之前需要将solr打包发布到Tomcat才能运行使用。

1.solr下载

  solr下载地址:http://www.apache.org/dyn/closer.lua/lucene/solr/

2.solr包功能介绍

下载solr包后解压,包内目录以及各自功能如下:

  • bin:包括一些使用Solr的重要脚本

    solr和solr.cmd:分别用于Linux和Windows系统,根据所选参数不同而控制Solr的启动和停止
    post:提供了一个用于发布内容的命令行接口工具。支持导入JSON,XML和CSV,也可以导入HTML,PDF,Microsoft Office格式(如MS Word),纯文本等等。
    solr.in.sh和solr.in.cmd:分别用于Linux和Windows系统的属性文件
    install_solr_services.sh:用于Linux系统将Solr作为服务安装

  • contrib:包含一些solr的一些插件或扩展

    analysis-extras: 包含一些文本分析组件及其依赖
    clustering:包含一个用于集群搜索结果的引擎
    dataimporthandler:把数据从数据库或其它数据源导入到solr
    extraction:整合了Apache Tika,Tika是用于解析一些富文本(诸如Word,PDF)的框架
      langid:检测将要索引的数据的语言
      map-reduce:包含一些工具用于Solr和Hadoop Map Reduce协同工作
      morphlines-core:包含Kite Morphlines,它用于构建、改变基于Hadoop进行ETL(extract、transfer、load)的流式处理程序
      uima:包含用于整合Apache UIMA(文本元数据提取的框架)类库
      velocity:包含基于Velocity模板的简单的搜索UI框架

  • dist:包含主要的Solr的jar文件
  • docs:文档
  • example:包含一些展示solr功能的例子

   exampledocs:这是一系列简单的CSV,XML和JSON文件,可以bin/post在首次使用Solr时使用
       example-DIH:此目录包含一些DataImport Handler(DIH)示例,可帮助您开始在数据库,电子邮件服务器甚至Atom订阅源中导入结构化内容。每个示例将索引不同的数据集
       files:该files目录为您可能在本地存储的文档(例如Word或PDF)提供基本的搜索UI
       films:该films目录包含一组关于电影的强大数据,包括三种格式:CSV,XML和JSON

  • licenses:包含所有的solr所用到的第三方库的许可证
  • server:solr应用程序的核心,包含了运行Solr实例而安装好的Jetty servlet容器。

   contexts:这个文件包含了solr Web应用程序的Jetty Web应用的部署的配置文件
       etc:主要就是一些Jetty的配置文件和示例SSL密钥库
       lib:Jetty和其他第三方的jar包
       logs:Solr的日志文件
       resources:Jetty-logging和log4j的属性配置文件
       solr:新建的core或Collection的默认保存目录,里面必须要包含solr.xml文件
       configsets:包含solr的配置文件
       solr-webapp:包含solr服务器使用的文件;不要在此目录中编辑文件(solr不是JavaWeb应用程序)

3.solr启动

  打开solr的bin目录,shift+鼠标右键,“在此处打开powershell窗口”

  

  输入.\solr start

  

  成功启动后,在浏览器中访问如下地址:

  http://localhost:8983

  

4.solr具体参数配置

  讲道理,有点多,参照下面这个博客即可。

  https://blog.csdn.net/bskfnvjtlyzmv867/article/details/80940089

solr7.5--win10--部署使用的更多相关文章

  1. Win10搭建Jenkins部署Java项目(本机和远程Win10部署)

    目录 一.前言&背景 二.环境准备 三.插件安装 四.全局配置 Maven JDK Git Maven 五.新建项目并配置 新建项目 配置 1.Discard old builds 2.Thi ...

  2. 澳大利亚公共服务部门神速完成Win10部署:4个月完成44000台设备升级

    不到一年时间,澳大利亚公共服务部门已经完成Win10系统部署升级,涉及到全部的35000名员工.在2015年,澳大利亚公共服务部门IT员工告知微软,需要更创新的方式远程为居民提供服务,并且效率要更快. ...

  3. Win10 部署 依赖 NET3.5 项目,报错 无法安装 NET3.5 ,该如何解决?

    下载 NetFx3.cab Cab 安装包 拷贝 NetFx3.cab 文件至 C:\Windows 目录 打开命令行窗口(管理员权限) 输入以下内容: dism /online /Enable-Fe ...

  4. Win10部署IIS 10.0

    win10自带IIS10.0 控制面板 >> 程序 >>启用或关闭Windows功能 勾选完之后会安装IIS,安装完成后 计算机管理 >> 服务和应用程序 > ...

  5. win10部署Python3和Python2

    首先添加两个的环境变量, 使用python3 -m pip -v (后面为自己的pip命令) 工具: pip install you-get you-get -url

  6. (二)部署solr7.1.0到tomcat

    solr7.1.0部署到tomcat8 官方表示solr5之后的版本不再提供对第三方容器的支持(不提供war包了). "旧式"solr.xml格式不再支持,核心必须使用core.p ...

  7. Solr7 安装部署 管理界面介绍

    Solr7 安装部署 管理界面介绍 本章重点介绍CentOS 安装部署Solr7 ,Solr的管理界面介绍,添加核心Core配置,Dataimport导入数据,Documents 在线维护索引,Que ...

  8. win10上部署Hadoop-2.7.3——非Cygwin、非虚拟机

    开始接触Hadoop,听人说一般都是在Lunix下部署Hadoop,但是本人Lunix不是很了解,所以Google以下如何在Win10下安装Hadoop(之后再在Lunix下弄),找到不少文章,以下是 ...

  9. 使用 WinAppDeployCmd 部署Win10 App 到移动设备

    WinAppDeployCmd是目前微软提供的Win10 App 部署工具,它和以前的Windows Phone Application Deployment 部署工具有所不同的是,WinAppDep ...

  10. Win10 IoT C#开发 2 - 创建基于XAML的UI程序 及 应用的三种部署方法

    Windows 10 IoT Core 是微软针对物联网市场的一个重要产品,与以往的Windows版本不同,是为物联网设备专门设计的,硬件也不仅仅限于x86架构,同时可以在ARM架构上运行. 上一章我 ...

随机推荐

  1. jeecg入门操作—字典配置

    一.字典入口 系统 管理->数据字典 二.录入字典 填写字典相关信息 三 .添加字典内容 填写字典某条记录内容 再录入几条 录入之后的字典内容 四.使用字典 1.编辑用户表单,添加用户等级字段 ...

  2. CSS弹性盒模型(flex box)

    本文介绍的是 CSS3 规范中引入的新布局模型:弹性盒模型(flex box).随着响应式用户界面的流行,Web 应用一般都要求适配不同的设备尺寸和浏览器分辨率. 浏览器支持: 弹性盒布局的容器(fl ...

  3. Day11 空时编码理论之正交空时分组码和垂直分层空时编码

    空时编码的用途: 一是获得分集增益(STBC,通过不同的发射天线发送相同传输信号的不同副本,实现空间分集,提高传输质量): 二是获得复用增益(V-BLAST在同一时隙,将不同的符号通过不同的天线发射出 ...

  4. Python----简单线性回归

    简单线性回归 1.研究一个自变量(X)和一个因变量(y)的关系   简单线性回归模型定义:y=β0+β1x+ε 简单线性回归方程:E(y)=β0+β1x 其中: β0为回归线的截距 β1为回归线的斜率 ...

  5. selenium webdriver 如何实现将浏览器滚动条移动到某个位置

    说明: 在做selenium webdriver  在做UI 自动化时,有些页面时使用懒加载的形式显示页面图片,如果在不向下移动滚动条时,获取到的图片会是网站的默认图片和真实的图片不相符. 所以研究了 ...

  6. AirPods 2 & Android

    AirPods 2 & Android AirBattery https://play.google.com/store/apps/details?id=friedrich.georg.air ...

  7. Linux学习之路1

    root用户 安装初始系统默认没有启动root用户,如下方式启动: l  sudo passwd l  连续输入两次密码,启动root用户 l  再登陆 登陆root用户 l  su root l  ...

  8. 关键字:This(上)

    对象初始化内存图: this 是一个关键字,表示对象本身,本质上this中存有一个引用,引用对象本身. this用于访问本对象属性,同时解决局部变量和成员变量同名的问题(接有参构造中第二种解决方案.. ...

  9. RDPwrap: win10 家庭版开通远程桌面服务

    0x0 介绍 win10 家庭版并不提供远程桌面服务,但是有大佬提供了解决的工具,并发布在github上. 0x1 下载安装 去 github下载别人做好的工具,release 里找到最新的版本,安装 ...

  10. BZOJ 2594 水管局长数据加强版

    LCT维护最小生成树 要求两点路径最大的最小,首先想到的肯定是最小生成树,再加上有删边操作,那就得用LCT维护了. 可是对于cut一条边,我们要时刻维护图中的最小生成树,需要把之前被我们淘汰的边找回, ...