有近2年没接触Solr跟Lucene了,这2年自己跟solr/lucene都发生了很多变化。不过有种疏途同归的感觉,那就是都向分布式/云和监控靠了。2年前接触了solrcloud,那时大概玩了一周。那时很想玩cloud,但发现solrcloud并不是具有那种cloud。于是放弃了。现在发现solr4.0貌似集成了以前的solrcloud,通过zookeeper去管理集群。同时监控和运维管理方面也更加方便了。但具体没有多看,迫于业务的压力,也是火急火燎的赶紧给搭了个solr,以后再慢慢深入。

以前虽然lucene,solr什么玩的很熟(源码层面).但两年没接触还真有点情同陌路。有时会想放弃一个自己熟悉的东西,去做新的东西,会很可惜。比如solr,lucene.

或许那时自己一直坚持下来,可能已经会有了自己的开源框架。爬虫也是,Heritrix坚持下来,或许分布式的,any ajax都可以抓取的框架已经猥琐出世。但这个世界没有什么

如果,只是从心底(所谓的follow heart),以及从身外(所谓的money)来说,我觉得当初的放弃,应该是暂时的放弃还是值得的。因为给了我不一样的视野。尤其全文检索等,拼到后面,拼的还是大数据,实时,数据挖掘。这也是当初我毅然决定做hadoop的原因。废话了一大把,进入主题吧。

1.依赖:

JDK1.6,Tomcat 5.5,Solr 4.0.0,IKAnalyzer 2012FF

Tomcat虽然不是必须,但觉得上生产环境的话,还是得用Tomcat,便于统一管理和监控.

Tomcat等你也可以用其他版本

#Tomcat:

wget http://archive.apache.org/dist/tomcat/tomcat-5/v5.5.35/bin/apache-tomcat-5.5.35.tar.gz

#Solr

wget Solr:  http://mirrors.tuna.tsinghua.edu.cn/apache/lucene/solr/4.0.0/apache-solr-4.0.0.tgz

#IKAnalyzer

wget http://ik-analyzer.googlecode.com/files/IK%20Analyzer%202012FF_hf1.zip

3.安装步骤:

1)JDK安装

JDK安装省略,你只要安装完成在环境中设置JAVA_HOME即可,比如我这边是JAVA_HOME=/usr/java/default

2) TOMCAT安装

TOMCAT安装省略,你只要安装完车功能在环境中设置CATALINA_HOME即可,比如我这边是CATALINA_HOME=/opt/tomcat/current

3) 安装solr

a.安装solr webapp

解压solr后得到apache-solr-4.0.0,进入apache-solr-4.0.0/dist/,可以看到apache-solr-4.0.0.war.该文件其实是个zip文件,用命令

unzip apache-solr-4.0.0.war将其解压,获得apache-solr-4.0.0,将其重命名为solr,放到tomcat目录下的webapps目录下,比如我这边是

/opt/tomcat/current/webapps/

b.安装中文分词IKanalyzer

解压IK Analyzer 2012FF_hf1.zip,获得IK Analyzer 2012FF_hf1.将该目录下的IKAnalyzer.cfg.xml,IKAnalyzer2012FF_u1.jar,stopword.dic

放到之前安装TOMCAT_HOME/webapps/solr/WEB-INF/lib/目录下,比如我这里是/opt/tomcat/current/webapps/solr/WEB-INF/lib/

4) 安装solr-work,也就是solr配置和索引目录

a.告知solr它的工作目录在哪里

一般有两种方式,设置环境变量以及jndi。但我建议采用jndi,还是那个原因,便于维护.

在$TOMCAT_HOME/conf/Catalina/localhost里新建solr.xml文件,内容如下:

<Context docBase="/usr/local/tomcat/webapps/solr.war" debug="0" crossContext="true" >

<Environment name="solr/home" type="java.lang.String" value="/opt/solr/work/solr" override="true" />

</Context>

其中里面的/opt/solr/work/solr就是所谓的solr工作目录.solr配置,以及索引都将存放到该目录.

b.配置solr

简单的话将刚解压后的apache-solr-4.0.0/example/solr下的所有文件复制到/opt/solr/work/solr目录下

c.设置IKAnalyzer中文分词

修改/opt/solr/work/solr/collection1/conf/中的schema.xml,在<type></types>中增加如下内容:

++

<fieldType name="text_ik" class="solr.TextField">

<analyzer type="index" isMaxWordLength="false" class="org.wltea.analyzer.lucene.IKAnalyzer"/>

<analyzer type="query" isMaxWordLength="true" class="org.wltea.analyzer.lucene.IKAnalyzer"/>

</fieldType>

其中查询采用IK自己的最大分词法,索引则采用它的细粒度分词法.所以各自配置了isMaxWordLength属性.

4.启动/停止solr

只要启动/停止Tomcat即可

Solr4.0+IKAnalyzer中文分词安装(转)的更多相关文章

  1. Solr4.0+IKAnalyzer中文分词安装

    1.依赖: JDK1.6,Tomcat 5.5,Solr 4.0.0,IKAnalyzer 2012FF Tomcat虽然不是必须,但觉得上生产环境的话,还是得用Tomcat,便于统一管理和监控. T ...

  2. 2.IKAnalyzer 中文分词器配置和使用

    一.配置 IKAnalyzer 中文分词器配置,简单,超简单. IKAnalyzer 中文分词器下载,注意版本问题,貌似出现向下不兼容的问题,solr的客户端界面Logging会提示错误. 给出我配置 ...

  3. solr服务中集成IKAnalyzer中文分词器、集成dataimportHandler插件

    昨天已经在Tomcat容器中成功的部署了solr全文检索引擎系统的服务:今天来分享一下solr服务在海量数据的网站中是如何实现数据的检索. 在solr服务中集成IKAnalyzer中文分词器的步骤: ...

  4. 转:solr6.0配置中文分词器IK Analyzer

    solr6.0中进行中文分词器IK Analyzer的配置和solr低版本中最大不同点在于IK Analyzer中jar包的引用.一般的IK分词jar包都是不能用的,因为IK分词中传统的jar不支持s ...

  5. 我与solr(六)--solr6.0配置中文分词器IK Analyzer

    转自:http://blog.csdn.net/linzhiqiang0316/article/details/51554217,表示感谢. 由于前面没有设置分词器,以至于查询的结果出入比较大,并且无 ...

  6. Lucene学习——IKAnalyzer中文分词

    一.环境 1.平台:MyEclipse8.5/JDK1.5 2.开源框架:Lucene3.6.1/IKAnalyzer2012 3.目的:测试IKAnalyzer的分词效果 二.开发调试 1.下载框架 ...

  7. Java实现敏感词过滤 - IKAnalyzer中文分词工具

    IKAnalyzer 是一个开源的,基于java语言开发的轻量级的中文分词工具包. 官网: https://code.google.com/archive/p/ik-analyzer/ 本用例借助 I ...

  8. Solr的学习使用之(三)IKAnalyzer中文分词器的配置

    1.为什么要配置? 1.我们知道要使用Solr进行搜索,肯定要对词语进行分词,但是由于Solr的analysis包并没有带支持中文的包或者对中文的分词效果不好,需要自己添加中文分词器:目前呼声较高的是 ...

  9. Sphinx中文分词安装配置及API调用

    这几天项目中需要重新做一个关于商品的全文搜索功能,于是想到了用Sphinx,因为需要中文分词,所以选择了Sphinx for chinese,当然你也可以选择coreseek,建议这两个中选择一个,暂 ...

随机推荐

  1. 学习ABP遇到的问题汇总

    1,在abp官网下载的模板(asp.net+ef)写Application层的时候需要使用AutoMapper.结果ObjectMapper一直为null 解决:需要在当前项目的Module依赖Abp ...

  2. 3,EasyNetQ-发布/订阅

    一.发布 在发布/订阅模式中的角色是彼此陌生的. 一个发布者只是向世界说这个已经发生了,一位订阅者告诉世界“我在乎这个”. 在这个模型中,没有人关心特定的事件是很好的. 消息可能有一个订阅者,可能有2 ...

  3. [同步脚本]mysql-elasticsearch同步

    公司项目搜索部分用的elasticsearch,那么这两个之间的数据同步就是一个问题. 网上找了几个包,但都有各自的缺点,最后决定还是自己写一个脚本,大致思路如下: 1.在死循环中不断的select指 ...

  4. Codeforces.566F.Clique in the Divisibility Graph(DP)

    题目链接 \(Description\) 给定集合\(S=\{a_1,a_2,\ldots,a_n\}\),集合中两点之间有边当且仅当\(a_i|a_j\)或\(a_j|a_i\). 求\(S\)最大 ...

  5. BZOJ.4516.[SDOI2016]生成魔咒(后缀数组 RMQ)

    题目链接 后缀自动机做法见这(超好写啊). 后缀数组是可以做的: 本质不同的字符串的个数为 \(子串个数-\sum_{ht[i]}\),即 \(\frac{n(n+1)}{2}-\sum_{ht[i] ...

  6. Linux——线程

    线程 我们都知道一个程序的执行是由进程来完成的,而进程里真正执行代码却是由线程来完成,它是真正的执行流.通常将一个程序⾥里一个执行路线就叫做线程(thread).对它更准确的定义是:线程是“一个进程内 ...

  7. Ubuntu Java7 SDK环境变量配置(转)

    1.去甲骨文官网下载java7 sdk http://www.oracle.com/technetwork/java/javase/downloads/index.html 这里笔者下载了最新的jav ...

  8. [SQL ERROR 800]Corresponding types must be compatible in CASE expression.

    SQL应用报错800.Corresponding types must be compatible in CASE expression. 错误描述: 11:00:51  [SELECT - 0 ro ...

  9. Subversion detected an unsupported working copy version

    关于这个错误:Subversion detected an unsupported working copy version while checking the status of 'XXXX'. ...

  10. delete_failed_internal_error安装失败

    一.错误提示 二.最简单的解决方式 使用Android Studio (IDEA 2018.3.5)进行开发时,无论是模拟器还是,USB连接手机,都是无法安装和启动APP.后来发现是IDEA中,设置的 ...