elasticsearch安装jcseg,开启自动更新词库配置不起作用

低调的npc 发布于 2016/09/30 13:55
阅读 531
收藏 0

@狮子的魂 你好,想跟你请教个问题:

我的环境elasticsearch2.3.1、jcseg1.9.7,已经按照文档将autoload设置为了1,polltime设置为了20,并在lex-autoload.lex中加了要修改的词库文件名,但是启动elasticsearch后没有看到jcseg更新词库的守护线程启动,是还需要什么其他操作吗,还有如果我的词库经常更新的话如何在和elasticsearch整合的代码中写出来,可以给个思路吗

加载中
0
狮子的魂
狮子的魂

引用来自“低调的npc”的评论

@狮子的魂  我是这样理解的,在创建索引的时候应该使用细粒度切分,切分出尽可能多的词来构建倒排索引,这样搜索的时候会搜出可能多的内容,如果我创建索引的时候“奥迪a4l”只分成了一个词,那我搜索“奥迪”的时候是不是这篇"奥迪a4l"的内容就搜索不出来了,还有如果我创建索引的时候使用了细粒度切分,那我检索是不是也需要使用和创建索引时同样的分词方法

1,索引和检索的时候尽量使用相同的分词算法
2,如果只是用在检索里面,可以只用用Jcseg切出“奥迪”,“a4l”两个词就OK了,这种情况下的大颗粒对于BM25打分模型来说区别不大

0
狮子的魂
狮子的魂

1.9.7这个版本如果拥有多个词库实例的话,自动更新词库是有问题的,你使用最新版本的1.9.9就OK了!

https://github.com/lionsoul2014/jcseg

0
低调的npc

@狮子的魂  已经换成最新版本1.9.9了,但是在词库里新添加词还是不起作用,必须得重启elasticsearch服务才生效,而且自动更新词库的守护线程没有启动,是少什么配置了吗,还有对于词库需要频繁更新的需要怎样做呢


0
狮子的魂
狮子的魂

引用来自“低调的npc”的评论

@狮子的魂  已经换成最新版本1.9.9了,但是在词库里新添加词还是不起作用,必须得重启elasticsearch服务才生效,而且自动更新词库的守护线程没有启动,是少什么配置了吗,还有对于词库需要频繁更新的需要怎样做呢


linux系统确保elasticsearch的运行用户对lexicon目录的下的lex-autoload.todo文件有写入权限!
0
低调的npc
@狮子的魂 我按照文档上来的,lex-autoload.todo也有写入权限,如果只启动elasticsearch服务的话好像没有执行jcseg-core下ADictionary的startAutoload方法,也就是那个线程没有启动。还有如果我的词库需要经常更新的话,是开启自动更新词库的方式好还是有其他什么推荐的方式?
0
低调的npc
@狮子的魂  我是通过rpm安装的elasticsearch,通过service elasticsearch start这种方式启动的时候开启自动更新词库不起作用,改成tar包方式安装就好了
0
狮子的魂
狮子的魂

引用来自“低调的npc”的评论

@狮子的魂  我是通过rpm安装的elasticsearch,通过service elasticsearch start这种方式启动的时候开启自动更新词库不起作用,改成tar包方式安装就好了
启动词库自动更新,Jcseg默认的词库实例就会变成同步词库,并发比较大的情况下对速度还是有细微影响的,其他的没有什么区别!
0
低调的npc

@狮子的魂  jcseg可以进行这种切分吗,比如“奥迪a4l”我已经在词库里添加了这个词,可以切分成"奥迪a4l"、“奥迪”、“a4l”这几个词吗,现在的jcseg_complex只能切分成“奥迪a4l”这一个词

0
狮子的魂
狮子的魂

引用来自“低调的npc”的评论

@狮子的魂  jcseg可以进行这种切分吗,比如“奥迪a4l”我已经在词库里添加了这个词,可以切分成"奥迪a4l"、“奥迪”、“a4l”这几个词吗,现在的jcseg_complex只能切分成“奥迪a4l”这一个词

奥迪a4l”这种词条叫做中英组合词,CE词条,可以从IWord的type中判断得到,你可以再简单的把中文和英文切开放入到结果集中就行了,Jcseg的本意是将组合词挖掘出来,找到这样的词条后,不会再主动切开

如果是用在检索,其实不需要大颗粒切分!

0
低调的npc
@狮子的魂  我是这样理解的,在创建索引的时候应该使用细粒度切分,切分出尽可能多的词来构建倒排索引,这样搜索的时候会搜出可能多的内容,如果我创建索引的时候“奥迪a4l”只分成了一个词,那我搜索“奥迪”的时候是不是这篇"奥迪a4l"的内容就搜索不出来了,还有如果我创建索引的时候使用了细粒度切分,那我检索是不是也需要使用和创建索引时同样的分词方法
返回顶部
顶部