`
青春的、脚步
  • 浏览: 39261 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
文章分类
社区版块
存档分类
最新评论

Apache Solr简介、配置(tomcat测试)

阅读更多

导言

说起Apache Lucene,可以说无人不知,无人不晓,但是说道Apache Solr,恐怕知道的不多。看看Apache Solr的说明:

Solr是一个基于Lucene java库的企业级搜索服务器,包含XML/HTTP,JSON API, 高亮查询结果,faceted search(不知道该如何翻译,片段式搜索),缓存,复制还有一个WEB管理界面。Solr运行在Servlet容器中。所以Solr和Lucene的本质区别有以下三点:搜索服务器,企业级和管理。Lucene本质上是搜索库,不是独立的应用程序,而Solr是。Lucene专注于搜索底层的建设,而Solr专注于企业应用。Lucene不负责支撑搜索服务所必须的管理,而Solr负责。所以说,一句话概括Solr:Solr是Lucene面向企业搜索应用的扩展

在本篇文章中,我们先看看Solr向我们承诺了什么,或者说Solr宣称的特性们。


无废话Solr

Solr是一个拥有象WebService一样接口的独立运行的搜索服务器。你将能够通过HTTP协议以XML格式将文档放入搜索服务器(这个过程叫做索引),你能够通过HTTP协议的GET来查询搜索服务器并且得到XML格式的结果。Solr的特性包括:
  • 高级的全文搜索功能
  • 专为高通量的网络流量进行的优化
  • 基于开放接口(XML和HTTP)的标准
  • 综合的HTML管理界面
  • 可伸缩性-能够有效地复制到另外一个Solr搜索服务器
  • 使用XML配置达到灵活性和适配性
  • 可扩展的插件体系

Solr使用Lucene并且扩展了它!

  • 一个真正的拥有动态域(Dynamic Field)和唯一键(Unique Key)的数据模式(Data Schema)
  • 对Lucene查询语言的强大扩展
  • 支持对结果进行动态的分组和过滤
  • 高级的,可配置的文本分析
  • 高度可配置和可扩展的缓存机制
  • 性能优化
  • 支持通过XML进行外部配置
  • 拥有一个管理界面
  • 可监控的日志
  • 支持高速增量式更新(Fast incremental Updates)和快照发布(Snapshot Distribution)

Schema(模式)

  • 定义域类型和文档的域
  • 能够驱动智能处理
  • 声明式的Lucene分析器规范
  • 动态域能够随时增加域
  • 拷贝域功能允许对一个域进行多种方式的索引,或者将多个域联合成一个可搜索的域
  • 显式类型能够减少对域类型的猜测
  • 能够使用外部的基于文件的终止词列表,同义词列表和保护词列表的配置

查询

  • 拥有可配置响应格式(XML/XSLT,JSON,Python,Ruby)的HTTP接口
  • 高亮的上下文搜索结果
  • 基于域值和显式查询的片段式搜索(Faceted Search)
  • 对查询语言增加了排序规范
  • 常量的打分范围(Constant scoring range)和前缀式查询-没有idf,coord,或者lengthNorm因子,对查询匹配的词没有数量限制
  • 函数查询(Function Query)-通过关于一个域的数值或顺序的函数对打分进行影响
  • 性能优化

核心

  • 可插拔的查询句柄(Query Handler)和可扩展的XML数据格式
  • 使用唯一键的域能够增强文档唯一性
  • 能够高效地进行批量更新和删除
  • 用户可配置的文档索引变化触发器(命令)
  • 并发控制的搜索器
  • 能够正确处理数字类型,从而能够进行排序和范围搜索
  • 能够控制缺失排序域的文档
  • 支持搜索结果的动态分组

缓存

  • 可配置的查询结果,过滤器,和文档缓存实例
  • 可插拔的缓存实现
  • 后台缓存热启:当一个新的搜索器被打开时,可配置的搜索将它热启,避免第一个结果慢下来,当热启时,当前搜索器处理目前的请求(???)。
  • 后台自动热启:当前搜索器缓存中最常访问的项目在新的搜索器中再次生成,能够在索引器和搜索器变化的时候高速缓存常查询的结果
  • 快速和小的过滤器实现
  • 支持自动热启的用户级别的缓存

复制

  • 能够将使用rsync传输时改变的索引部分有效的发布
  • 使用拉策略(Pull Strategy)来简化增加搜索器
  • 可配置的发布间隔能够允许对时间线和缓存使用进行权衡选择

管理接口

  • 能够对缓存使用,更新和查询进行综合统计
  • 文本分析调试器,能够显示每个分析器每个阶段的结果
  • 基于WEB的查询和调试输出:解析查询输出,Lucene的explain方法细节,能够解释为何某个文档打分低,被排除在结果中等等
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------

-------------------------------------------------------------------------------------------配置------------------------------------------------------------------------------------------------

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------



下载solr(1.4.1)以及tomcat(6.0.35)

解压solr将目录下apache-solr-1.4.1\dist\的apache-solr-1.4.1.war文件复制到apache-tomcat-6.0.35\webapps\下,并改名为:solr.war

在tomcat目录下:

apache-tomcat-6.0.35\conf\Catalina\localhost\

新增solr.xml

内容为:

<Context docBase="/apache-solr-1.4.1.war" debug="0" crossContext="true" > 
<Environment name="solr/home" type="java.lang.String" value="E:/source/apache-solr-1.4.1/example/solr" override="true" /> 
</Context>


【.注意】

ContextdocBase=“solr.war的目录,如果放在了/tomcat安装目录/webapps下,则是这么/solr.war

Environmentname="solr/home"必须这么写,可能solr默认为solr的home目录(记住必须这么写)。

Environment value="E:\source\apache-solr-1.4.1\example\solr"值,是solr目录,就是包括bin,conf等目录,一定要有.

---------------------------------------------------------------------------------------------------------------------------------------------------------------------

启动tomcat.输入http://localhost:8080/solr/admin/出现管理页面。





若出现错误

报错:java.lang.RuntimeException: Can't find resource 'solrconfig.xml' in classpath or 'solr\.\conf/',

现将解决办法记录下来:

1、将solr目录下,dist目录中的apache-solr-3.4.0.war 改名为solr.war文件部署到tomcat的webapps目录中

2、将solr目录中example/solr子目录中的data和conf两个目录拷贝到第一步中webapps下的solr目录中(需要启动一次tomcat,会自动 将war解压,这样就会生成solr目录)

3、修改tomcat的catalina.bat文件,在开始的地方添加JAVA_OPTS如下:

set JAVA_OPTS=%JAVA_OPTS% -Dsolr.solr.home=D:\works\jee\apache-tomcat-6.0.20\webapps\solr

注意,将solr.solr.home变量添加到系统环境变量中也不行,需要将其作为java的启动选项。

最后,重启tomcat,可以看到没有报错信息,接下来可以测试了。


分享到:
评论

相关推荐

    apache solr1.3.0开发包源码及文档

    Apache Solr是一个性能强大的,基于 Lucene 的全文搜索的 开源企业级搜索服务器,拥有XML/HTTP,JSON APIs,hit highlighting, faceted search, caching, replication,web管理界面等很多功能,Solr运行在Java servlet...

    Apache Solr and Tomcat6 Search engine

    zip 博文链接:https://aaron-ch.iteye.com/blog/153085

    Solr3.6 + 中文分词 完整Tomcat工程部署包

    在tomcat的conf文件夹建立Catalina文件夹,然后在Catalina文件夹中在建立localhost文件夹,在该文件夹下面建立 apache-solr-3.6.0.xml 提交搜索资源并建立索引 cd /Volumes/Date/apache-tomcat-7.0.27/webapps/...

    apache solr1.3.0所有最新开发包及源码及文档

    Apache Solr组很高兴地宣布Solr 1.3.0开始提供下载使用。此版本继续对功能有所加强,同时修改了之前的一些bug,包括: ——分布式搜索性能 ——许多Lucene和其他性能的改进 ——支持在单个部署中的多级索引 ——...

    apache-tomcat-8.5.45_solr.zip

    在windows10上部署solr7.7.2,部署环境是tomcat8.5.45,java8。配置文件已全部修改好下载即用

    solr配置与安装

    2. home文件夹中存放apache-solr-3.6.0\example\solr中的所有文件,删除data中所有的数据,server文件夹存放apache-solr-3.6.0\example\webapps中的war包,并且解压war包,解压又两种方式:1、用解压工具;...

    tomcat集成solr服务器以及配置好了中文分词器

    只需要解压然后启动tomcat即可访问solr服务器,需要自行在apache-tomcat-solr-7.0.52\webapps\solr\solrhome\collection1\conf\schema.xml修改适合自己的配置的域即可

    solr在Tomcat中的部署.zip

    (1)准备工作:下载apache-tomcat-8.5.37,solr-7.7.1.tgz,Jdk1.8 解压solr7,进入solr7解压后的目录 (C:\Users\Administrator\Downloads\solr-7.7.1),复制并重命名solr-7.7.1目录里的server/solr-webapp/...

    install-apache-solr:Debian、Ubuntu、LinuxMint、Red Hat、Fedora 和 CentOS 上 Tomcat 6 中 Apache Solr 4.xx 的安装脚本

    它将选择安装随 Drupal Apache Solr 或 Search API Solr 模块提供的 Solr 4.x 配置。 安装 有多种选择。 选一个。 要使用默认的 Solr conf 安装而不克隆存储库: curl ...

    solr运行配置与数据库数据导入到solr

    建立结构为solr-tomcat/solr的两个文件夹(solr的HOME目录),如建在D盘根目录,d:/solr-tomcat/solr,solr-tomcat文件夹名字可任意命名,将apache-solr-3.6.0examplesolr下的所有文件及文件夹拷贝到这下面 ...

    apache-solr-dataimportscheduler-1.1.1

    用于solr定时更新索引的jar包,下载后引入到solr本身的dist下面,或者你tomcat项目下面的lib下面

    apache-tomcat-9.0.35-solr7.7.3.rar

    将solr7.7.3集成到tomcat9.0.35,并且配置了权限,访问登录的时候需要通过BASIC认证。

    solr中文分词器文件及配置.zip

    tomcat-9.0.20\webapps\solr\WEB-INF\lib下(Tomcat项目里solr项目)其他三个文件放到apache-tomcat-9.0.20\webapps\solr\WEB-INF\classes下(Tomcat项目里solr项目)然后进行ik分词器的配置,编辑cor下路径的...

    solar1.4环境配置

    在X:\Tomcat 6.0\conf\Catalina\localhost下(目录不存在则手工建)创建配置文件solr.xml,内容为…… 4、配置索引数据格式 在X:\solr\solr\conf当中有schema.xml文件,可以配置索引数据格式。 5、运行solr 启动...

    apache-solr-dataimportscheduler-1.0

    solr与Tomcat的连接jar包,欢迎下载

    apache-solr-3.5.0.tgz

    Solr是一种企业级的全文搜索引擎,有关Solr与Tomcat整合的详情请参见博文:http://blog.csdn.net/l1028386804/article/details/49914367

    solr6.6服务器部署好的

    将apache-tomcat-8.0.36.zip放到电脑E盘运行tomcat端口号为8081,浏览器访问地址http://localhost:8081/solr/index.html;压缩包内有简单的java实现的solr小案例

    apache-solr-3.5.0.zip

    Solr是一种企业级的全文搜索引擎,有关Solr与Tomcat整合的详情请参见博文:http://blog.csdn.net/l1028386804/article/details/49914367

Global site tag (gtag.js) - Google Analytics