Lucene
孙彦辉
站在巨人的肩膀上
展开
-
Lucene 中文引擎,庖丁解牛的辞典参数配置方法
随机文档指示可以在环境变量里配置。原文如下 庖丁中文分词需要一套词典,这些词典需要统一存储在某个目录下,这个目录称为词典安装目录。词典安装目录可以是文件系统的任何目录,它不依赖于应用程序的运行目录。将词典拷贝到词典安装目录的过程称为安装词典。增加、删除、修改词典目录下的词典的过程称为自定制词典。 在linux下,我们可以考虑将词典安装在一个专门存储数据的分区下某目录,以笔者为例,笔者将/data作为系统的一个独立分区,笔者便是将词典保存在/data/paoding/dic下。 在windows下,我们可以考转载 2010-08-22 18:10:00 · 925 阅读 · 0 评论 -
Lucene多种搜索方式详解例子
<br />package src;<br /><br />import java.io.StringReader;<br />import java.util.Date;<br /><br />import org.apache.lucene.analysis.Analyzer;<br />import org.apache.lucene.analysis.SimpleAnalyzer;<br />import org.apache.lucene.analysis.TokenStream;<br />im转载 2010-08-27 16:16:00 · 619 阅读 · 0 评论 -
Lucene 简单说明
<br />写文章的时候,感觉比较难写的就是标题,有时候不知道起什么名字好,反正这里写的都是关于lucene的一些简单的实例,就随便起啦. <br />Lucene 其实很简单的,它最主要就是做两件事:建立索引和进行搜索 <br />来看一些在lucene中使用的术语,这里并不打算作详细的介绍,只是点一下而已----因为这一个世界有一种好东西,叫搜索。 <br />IndexWriter:lucene中最重要的的类之一,它主要是用来将文档加入索引,同时控制索引过程中的一些参数使用。 <br />Analyz转载 2010-08-25 11:59:00 · 564 阅读 · 0 评论 -
lucene简单例子
<br />http://www.javaeye.com/topic/39597<br /> http://esteem.javaeye.com/blog/250389<br />import java.io.BufferedReader;<br />import java.io.File;<br />import java.io.FileInputStream;<br />import java.io.IOException;<br />import java.io.InputStreamReader;<转载 2010-08-25 11:57:00 · 476 阅读 · 0 评论 -
Lucene使用与优化3
9 性能优化<br />一直到这里,我们还是在讨论怎么样使lucene跑起来,完成指定任务。利用前面说的也确实能完成大部分功能。但是测试表明lucene的性能并不是很好,在大数据量大并发的条件下甚至会有半分钟返回的情况。另外大数据量的数据初始化建立索引也是一个十分耗时的过程。那么如何提高lucene的性能呢?下面从优化创建索引性能和优化搜索性能两方面介绍。<br />9.1 优化创建索引性能<br />这方面的优化途径比较有限,IndexWriter提供了一些接口可以控制建立索引的操作,另外我们可以先将索引转载 2010-08-25 11:53:00 · 714 阅读 · 0 评论 -
Lucene使用与优化2
7 如何搜索<br />lucene的搜索相当强大,它提供了很多辅助查询类,每个类都继承自Query类,各自完成一种特殊的查询,你可以像搭积木一样将它们任意组合使用,完成一些复杂操作;另外lucene还提供了Sort类对结果进行排序,提供了Filter类对查询条件进行限制。你或许会不自觉地拿它跟SQL语句进行比较:“lucene能执行and、or、order by、where、like ‘%xx%’操作吗?”回答是:“当然没问题!”<br />7.1 各种各样的Query<br />下面我们看看lucene转载 2010-08-25 11:52:00 · 718 阅读 · 0 评论 -
Lucene笔记+PaodingAnalyzer+高亮显示
<br /> <br />[1]<br />(1)<br />Lucene是一个基于Java全文搜索引擎,利用它可以轻易地为Java软件加入全文搜寻功能。 <br />(2)<br />Lucene能做什么?<br />Lucene可以对任何的数据做索引和搜索。 Lucene不管数据源是什么格式,只要它能被转化为文字的形式,就可以被Lucene所分析利用。也就是说不管是MS word, Html ,pdf还是其他什么形式的文件只要你可以从中抽取出文字形式的内容就可以被Lucene所用。<br />(3)<b转载 2010-08-25 11:55:00 · 1261 阅读 · 0 评论 -
Lucene的使用与优化1
1 lucene简介<br />1.1 什么是lucene<br />Lucene是一个全文搜索框架,而不是应用产品。因此它并不像www.baidu.com 或者google Desktop那么拿来就能用,它只是提供了一种工具让你能实现这些产品。<br />1.2 lucene能做什么<br />要回答这个问题,先要了解lucene的本质。实际上lucene的功能很单一,说到底,就是你给它若干个字符串,然后它为你提供一个全文搜索服务,告诉你你要搜索的关键词出现在哪里。知道了这个本质,你就可以发挥想象做任何符原创 2010-08-25 11:51:00 · 588 阅读 · 0 评论 -
Lucene+HighLighter高亮显示实例
今天搞了一个关于Lucene的例子,权当入门教程。网上有很多资料,但是要么不全、要么不好用,所以这里把全部代码以及依赖的包贴上来了。功能包括:创建索引、检索索引、高亮显示查询结果。分词使用的庖丁解牛。使用前先下载相关的LuceneCore jar包、LuceneHighLighter jar包、庖丁解牛分分词jar包、庖丁解牛词典。并设定环境变量PAODING_DIC_HOME指向词典位置。前两个可以到官方网站找,庖丁去http://code.google.com/p/paoding/downloads/l转载 2010-08-20 15:43:00 · 2669 阅读 · 2 评论 -
使用Lucene+Paoding构建SSH系统的站内搜索
使用Lucene+Paoding构建SSH系统的站内搜索关键字: lucene paoding 搜索 目标:创建一个具有高度可移植的,定时创建索引的站内搜索。 途径:dic和index都放到程序中去。 准备: 1 Lucene Lucene Java(以下简称Lucene)目前可用版本是2.4.0,关于Lucene的详细信息请查看http://lucene.apache.org/java/docs/index.html。 2 Paoding Qieqie同学的伟大作品、优秀的Lucene中文分词组件,目转载 2010-08-22 18:08:00 · 1039 阅读 · 0 评论 -
当前几个主要的Lucene中文分词器的比较
1. 基本介绍:paoding :Lucene中文分词“庖丁解牛” Paoding Analysisimdict :imdict智能词典所采用的智能中文分词程序mmseg4j : 用 Chih-Hao Tsai 的 MMSeg 算法 实现的中文分词器ik :采用了特有的“正向迭代最细粒度切分算法“,多子处理器分析模式2. 开发者及开发活跃度:paoding :qieqie.wang, google code 上最后一次代码提交:2008-06-12,svn 版本号 132imdict :XiaoPingGa转载 2010-08-20 15:35:00 · 618 阅读 · 0 评论 -
庖丁解牛 dic home should not be a file, but a directory!
最近一个项目,用到了paoding分词器。在开发阶段我将词库放到了src目录,配置文件使用了classpath:dic,目的是为了增加可移植性。发现问题:在启动服务器的时候抛出 net.paoding.analysis.exception.PaodingAnalysisException: dic home should not be a file, but a directory! 分析问题:这是因为PaodingMaker.getFile()方法中采用了老版本的java.net.URL.getFile(原创 2010-08-22 18:01:00 · 1272 阅读 · 9 评论