从Lucene 2.0升级到2.1.0之路

作者:caocao(网络隐士),转载请注明来源: http://caocao.iteye.com/blog/70305
 
随着Lucene 2.1.0在2007年情人节的问世,隐士遂将本来基于的2.0的应用升级到了2.1.0,升级日志如下:(2.1.0新功能请参见 http://svn.apache.org/repos/asf/lucene/java/tags/lucene_2_1_0/CHANGES.txt
 
1. LUCENE-478:新版在StandardAnalyzer将CJK分割为CJ, K,对于中文分词基本没用,隐士自创的中文分词基本没有修改直接使用,没有问题。
 
2. LUCENE-438:Token的final终于被砍了,大快人心。当初为了实现中文分词,隐士本想继承Token,加入一些中文相关的metadata,无奈Token被阉,隐士只好另起炉灶重写了好多代码,这次算是迟来的正义吧,将代码重构一下是正道,无奈项目催得紧,以后再重构了,暂时不会负面影响。
 
3. 好些deprecated的玩意都被砍了,好在隐士实现的所有应用都没有调用过deprecated的东西,所以没有修改过一行代码。
 
4. 经过试验验证:2.1.0可以兼容读取2.0的索引文件,2.1.0可以增量索引2.0的索引文件,optimize后索引文件是2.1.0的格式。这个相当方便,可以平稳过渡至新版本,相当于无痛分娩。
 
5. LUCENE-771:lock文件现在移到了索引目录,很简洁,一目了然。
 
6. LUCENE-565:重量级的功能,IndexWriter.updateDocument闪亮登场,隐士赶紧把delete/add替换成updateDocument。至于到底能提高多少性能,有待观察。
 
7. LUCENE-701:Lockless commits挺诱人的,看了一下IndexReader,deleteDocuments还在,没深入研究和IndexWriter的deleteDocuments有什么区别。
 
8. LUCENE-544:这个也是好东西哦,MultiFieldQueryParser可以允许为Field指定boost了。
 
9. LUCENE-723: 可以接受*:*哦,比较危险,一定要过滤这样的玩意,不然整个数据库就裸奔了。
 
总结下来,隐士除了用lucene-core-2.1.0.jar代替lucene-core-2.0.0.jar和把delete/add替换为updateDocument外什么都没做就顺利切换到2.1.0了。
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值