首页新闻找找看学习计划

关于lucene疑问

0
悬赏园豆:30 [已解决问题] 解决于 2013-10-29 09:27

看了一篇博客,里面有几个地方不是很理解http://blog.csdn.net/accesine960/article/details/6780068

1.Codec (编码器),你可以实现自己的Codec来进行自定义的扩展,很显然Codec的操作对象是Segment ,网上关于这个的资料匮乏,他的意思是说使用编码器可以将INNODB,MYISAM的索引文件转换成lucene能够识别的索引格式吗?如果是的话,在文档中没有找到类似的操作方法和类呀

2.查询器FuzzyQuery,在lucene中使用了编辑距离算法。后面使用

有效状态自动机,再看那个图,没怎么明白。

江边流客的主页 江边流客 | 初学一级 | 园豆:5
提问于:2013-10-28 12:52
< >
分享
最佳答案
0

Codec 只是抽象,想自己支持INNODB,MYISAM的索引文件,需要自己去实现。官方上面应该没有,如果需要可以去看下apache的lucene的这方面扩展,如果要是有的话,那就可以直接用,如果要是没有的话,那就只有自己去实现了。

FuzzyQuery只是更改了以前的算法到新的算房那,至于图那个只是讲解算法的,反正就是类似的一个能够计算是不是模糊匹配就行了,看不明白是正常的。

 

收获园豆:30
````` | 专家六级 |园豆:14268 | 2013-10-28 13:05

1.可以理解为lucene使用它的扩展,可以去实现对MYISAM索引文件的支持,但是它是提供组件,就像对lucene的自定义查询器,过滤器,有现成的接口或者基类,然后具体自己去实现?

2.编辑距离算法,我还是看了下,是计算两个单词之间转换需要的步骤数,现在实现是新的算法,是吧?大概啥意思呀?我百度了一些但是感觉那些词不达意

江边流客 | 园豆:5 (初学一级) | 2013-10-28 13:11

@江边流客: 嗯 差不多就是那么个意思吧。资料目前太少了,中文的几乎没有,很多东西都不得而知,只是字面上的意思。

距离算法没几个,只是用了新的距离算法 替代了老的低效的算法,因此提高了速度,然后附带了一些讲解新的距离算法的原理而已。

当然也是个人根据字面的推测,俺还在用老的lucene

````` | 园豆:14268 (专家六级) | 2013-10-28 13:17

@imfunny: 哦,一直使用lucenen3.0,在3.版本感觉一直没有办法能够识别INNODB,MYISAM的索引文件,所以看看新版4.0.还有一个问题就是lucene修改某个doc,其实是删除再添加的,那么像存储引擎INNODB的话,sql中有update语句,是不是也是类似的做法呀?因为倒排序结构的话,感觉类似堆栈+键值对的形式的来构建树的,不知道是不是这样子。。

江边流客 | 园豆:5 (初学一级) | 2013-10-28 13:23

@江边流客: 我感觉还好,识别了也不会是想的那样。这快想做同步还是比较容易的。之前也做过同步的修改。

可以参考下俺的这篇博客。

http://www.cnblogs.com/imfunny/p/3370115.html

````` | 园豆:14268 (专家六级) | 2013-10-28 13:25

@imfunny: 嗯哪,现在在使用lucene写群聊天,使用RAM,使用线程池来控制的,你使用的锁机制?对了,之前测试的时候,使用RAMDirectory作为dir,然后使用FILED.defalut.cahce和indexreader直接使用topscore来取域值,想问下FIeld获取域值,速度感觉还是后者要快?(去多次的情况下,writer内容不再写入)

江边流客 | 园豆:5 (初学一级) | 2013-10-28 13:33

@江边流客: 没有,Directory本身是线程安全的,所以不需要锁啊。

速度上不会差太远,尽管有人说放到RAMDirectory会快,但是也仅仅限制在创建的时候并且合并因子小的时候,我个人感觉差不多,之前两种方案都测试过,速度快的有限,所以推荐还是放一部分到内存,大量的放到硬盘上。

````` | 园豆:14268 (专家六级) | 2013-10-28 13:37

@imfunny: 嗯哪,就是lucenne基本操作,也在应用,如果想继续学的话,是看索引文件实现的算法,还是想爬虫,SEO优化之类?最好还是有本书推荐的那种呀

江边流客 | 园豆:5 (初学一级) | 2013-10-28 13:39

@江边流客: lucene个人感觉比较适合做那些修改少,写入少的东西,这个时候会比数据库更高效,虽然这个部分有办法客户。

SEO优化类的 没做过不知道。

lucene也就看过

Lucene 实战(第2版) 这本书 java的 感觉还不错。

````` | 园豆:14268 (专家六级) | 2013-10-28 13:45

@imfunny: 这本看完了,想深入了解一下,刚才去上课了,不好意思哈

江边流客 | 园豆:5 (初学一级) | 2013-10-28 14:13
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册