Apache Solr初体验一

摘要:
由于工作原因,我接触了solr,这是一个基于lucene的企业搜索引擎。solr最重要的是solrhome,它指定了solr创建的索引文件的存储位置。转到tomcat文件夹conf Catalina localhost并创建solr。xml的内容非常简单,类似于以下内容:此上下文众所周知。它指定war包的位置。当tomcat启动时,它将自动部署到webapps目录,这也是eclipse的集成tomcat使用的部署方法。Reloadable=”true“表示可以重新加载部署,即当部署内容更改时,将自动加载部署。

由于工作原因,这段时间接触到solr,一个基于lucene的企业级搜索引擎。不怎么了解它的童鞋可以去GOOGLE一下。

    下面开始正题:

    1)要开始solr的学习,首先当然是要下载它啦(这是一句废话),可以到http://www.apache.org/dyn/closer.cgi/lucene/solr/这里去下载,最新的是1.4.1(现在已经是3.4了,但依然适用)。下完后当然要解压啦(这也是废话)。我们看到它的结构是这样的。


Apache Solr初体验一第1张

 相信搞JAVA的同志们应该都大概了解对应的文件夹的意思啦,在dist里面是它的一些JAR包,当中包含了一个war包,这个是我们做例子时用到的项目。直接把它丢到tomcat的webapps里面去。

    example目录里面有一些solr的索引数据,它自带了一个jetty方便运行,可以直接运行java -jar start.jar就可以运行jetty,但jetty的默认端口是8983,这个是跟tomcat不同的地方,要注意啦。

    2)搞定了这些之后,那么我们应该继续来试运行一下这个东西啦。solr最重要的东西就是solr home,这个东西指定了solr建立的索引文件的存放位置。不知道是什么东西,可以先不用管它,一步步来也许就会明白了。

    进到tomcat文件夹conf\Catalina\localhost这个文件夹内,建立一个solr.xml(其实名字是随便的,这里起的名字跟以后访问的项目名字一致,不过为了好找,还是跟部署的项目名一样吧),这里面的内容呢,其实很简单,就和下面类似:

<Context docBase="D:/server/apache-tomcat-6.0.32/webapps/apache-solr-1.4.1.war" reloadable="true">  
<Environment name="solr/home" type="java.lang.String" value="E:/framework/libPack/apache-solr-1.4.1/example/solr" override="true"/>
</Context>

     这个Context相信大家都知道罗,它是指定了war包的位置,当启动tomcat后它会自动被部署到webapps目录下,这也是eclipse所集成tomcat用的部署方式。而reloadable="true"则表明可以重新加载,即当这个部署内容改变时,它会自动进行加载。

    下面的solr/home是重点啦,type是固定的,先不管,value指定的就是它用的索引目录。override当然就是覆盖啦,如果存在则覆盖。

    这个solr/home其实在solr的下载包中已经带有一个,我们可以找到solr目录下的example/solr这个目录,下面就是我们所说的solr/home,其实当中最重要的还是config目录下的solrconfig.xml,这个是solr的主要配置文件,可以在里面找到<dataDir>${solr.data.dir:./solr/data}</dataDir>这样一句,它指定了索引记录放置的位置,我们启动tomcat后它会在我们当前的目录下生成solr/data文件夹,里面就是索引文件。如果我们从tomcat的bin启动,那么它会在bin目录下生成solr/data文件夹,可以根据自己需要进行修改,只要把./solr/data改成想让它放在目录就可以了。

    这样配置完成后,我们启动tomcat之后在浏览器输入http://localhost:8080/solr/admin就可以看到solr的管理界面啦。


Apache Solr初体验一第2张
 

这样我们的配置就大功告成了。

免责声明:文章转载自《Apache Solr初体验一》仅用于学习参考。如对内容有疑问,请及时联系本站处理。

上篇c#实现word,winWordControl 文档不允许复制、粘贴、隐藏工具栏、快捷保存用几何画板绘制带根号坐标点的方法下篇

宿迁高防,2C2G15M,22元/月;香港BGP,2C5G5M,25元/月 雨云优惠码:MjYwNzM=

相关文章

SQL Server数据库查询速度慢的原因和解决方法

SQL Server数据库查询速度慢的原因有很多,常见的有以下几种:   1、没有索引或者没有用到索引(这是查询慢最常见的问题,是程序设计的缺陷)   2、I/O吞吐量小,形成了瓶颈效应。   3、没有创建计算列导致查询不优化。   4、内存不足   5、网络速度慢   6、查询出的数据量过大(可以采用多次查询,其他的方法降低数据量)   ...

MySQL排序原理与MySQL5.6案例分析【转】

本文来自:http://www.cnblogs.com/cchust/p/5304594.html,其中对于自己觉得是重点的加了标记,方便自己查阅。更多详细的说明可以看沃趣科技的文章说明。 前言      排序是数据库中的一个基本功能,MySQL也不例外。用户通过Order by语句即能达到将指定的结果集排序的目的,其实不仅仅是Order by语句,Gr...

ELK学习笔记之Elasticsearch删除指定日期的数据(脚本+定时任务)

0x00 概述 目前使用的ES版本为6.3.x,经过长时间的积累,ES内数据越来越多,需要删除指定日志之前的日志。 例如只要求保留60天的日志,那么就要删除60天之前的所有索引和日志。 0x01 ES删除XX天之前的索引和数据 #!/bin/sh#ES版本为6.3.x function delIndex() { #此处输入要删除的索引名字...

postgresql优化数据的批量插入

原文:http://www.cnblogs.com/mchina/archive/2012/08/11/2537393.html 有以下几种方法用于优化数据的批量插入。 1. 关闭自动提交:在批量插入数据时,如果每条数据都被自动提交,当中途出现系统故障时,不仅不能保障本次批量插入的数据一致性,而且由于有多次提交操作的发生,整个插入效率也会受到很大的打击。解...

ES系列一、Elasticsearch 概述

一、ES 产生背景   对于一般的公司,初期是没有那么多数据的,所以很多公司更倾向于使用传统的数据库:mysql;比如我们要查找关键字“呀呀呀”,那么查询的方式大概就是:select * from table where field like ‘%呀呀呀%’; 但是随着业务发展,数据会不断的膨胀,那么问题就来了;mysql单表查询能力即便经过了优化,它的极...

使用jquery实现文本框输入特效:文字逐个显示逐个消失反复循环

        前两天看到某个网站上的输入框有个小特效:文字逐个显示,并且到字符串最大长度后,逐个消失,然后重新循环显示消失,循环显示字符串数组。我对这个小特效有点好奇,于是今天自己尝试用jquery写一个简单的小demo,终于把效果整出来了。首先看一下实现后的效果: 接下来上代码。 <!DOCTYPE html> <html lan...