solr 分词词库管理思路

大概有以下几种思路:

1。 自定义 SolrRequestHandler

由 SolrRequestHandler 来进行对分词器,进行A)词库加载B)动态添加词库 等操作

这样的话,还需要在内存中hold 住所有的词,或者需要引用到分词的jar

2. 在自定义分词器中实现从文件拉取

对词库文件设置FileWatcher,只要文件有变更,就重新加载一遍词库。

这个成本比较高。

3.  在自定义分词器中实现从db拉取,本地文件备份。

这样的话,需要实现定时拉取,另外,solr初次启动的时候,最好不要拉取词典(可能影响启动速度)。

另外,对拉取到的数据,可以做增量。

4. 使用本地文件为主, 同时通过pubsub来进行动态实时操作词库

优点,可以实时发布词库。

缺点, 不是很易读。

-------------------------------------------------------------------------------------------------------------

Solr 默认实现的若干TokenFilter,都有一个缺点:

即默认配置的词表都是由文件加载的。那么使用过程中,就无法支持动态添加了。

比如StopFilter 或者 SynonymFilterFactory

时间: 2025-01-21 20:39:11

solr 分词词库管理思路的相关文章

关于分词(词项,词典)

在前一篇中的倒排索引介绍中, 我们了解到要把一篇文档(或者在电商业务中一个商品相关信息)放入索引系统中, 要对该文档的关键词进行提取分析出来后建立相应的倒排列表. 现在问题来了, 我们怎么从一篇文档中抽出所有以前可能要索引的词. 比如一个显示器的标题是 "三星显示器S22D300NY 21.5寸 LED液晶显示器完美屏 替代S22C150N", 那么用户可能在系统中通过输入"三星显示器"或者"S22D300NY"或者"21.5寸&quo

mmseg自定义分词词库

下面给大家介绍一下如何打造自己的coreseek分词词库. coreseek自身带的词库不是很大,直接使用它分词可能会返回大量没用结果.要想搜索结果准确打造一个专门的分词 词库必不可少. i. 首先到搜狗http://pinyin#sogou#com/dict/下载你要的词库 ii. 因为下载回来的词库不是文本文件我们不能直接使用,所以要先转换成文本文件.网上找一个搜狗转 google的小工具,用它把你下载的全部词库转成文本文件.合并为一个文件命名为words.txt.文件要用utf8编码 保存

打造自己的coreseek分词词库

下面给大家介绍一下如何打造自己的coreseek分词词库. coreseek自身带的词库不是很大,直接使用它分词可能会返回大量没用结果.要想搜索结果准确打造一个专门的分词 词库必不可少. i. 首先到搜狗http://pinyin#sogou#com/dict/下载你要的词库 ii. 因为下载回来的词库不是文本文件我们不能直接使用,所以要先转换成文本文件.网上找一个搜狗转 google的小工具,用它把你下载的全部词库转成文本文件.合并为一个文件命名为words.txt.文件要用utf8编码 保存

solr学习文档之添加分词词库

在上一篇文章中我们学习了solr的快速入门和针对mysql数据库建立索引,今天我们介绍如何为solr添加中文分词 1.  在百度搜索ik-analyzer,找到后下载,我下载的是[IKAnalyzer 2012FF_hf1.zip],解压后会看到如下目录 2.  把IKAnalyzer2012FF_u1.jar拷贝到webapps下solr的lib文件夹下,把IKAnalyzer.cfg.xml和stopword.dic拷贝到solr的conf目录中 3.  修改schema.xml文件,增加如

Solr分词搜索结果不准确

Solr的schema.xml默认配置分词后条件取 OR 例如:大众1.6T  系统会自动分词为  [大众] [1.6T](ps:不同分词器分词效果不同)   会搜索出包含 [大众 OR  1.6T] 的结果. 想要让Solr搜索默认为    [大众 AND 1.6T] 则只需要修改solr\collection1\conf\schema.xml文件solrQueryParser节点 打开schema.xml文件,搜索<solrQueryParser defaultOperator="OR

solr分词。。。。。

1.开发环境 Mac 10.10.4 + tomcat6 + Java8 + solr4.4 + mmseg4j1.9.1 2.效果图 预览图片1 预览图片2

solr 中文分词器IKAnalyzer和拼音分词器pinyin

solr分词过程: Solr Admin中,选择Analysis,在FieldType中,选择text_en 左边框输入 "冬天到了天气冷了小明不想上学去了",点击右边的按钮,发现对每个字都进行分词.这不符合中国人的习惯. solr6.3.0自带中文分词包,在 \solr-6.3.0\contrib\analysis-extras\lucene-libs\lucene-analyzers-smartcn-6.3.0.jar,但是不能自定义词库 好在我们有IKAnalyzer(已无人更新

三、Solr多核心及分词器(IK)配置

多核心的概念 多核心说白了就是多索引库.也可以理解为多个"数据库表" 说一下使用multicore的真实场景,比若说,产品搜索和会员信息搜索,不使用多核也没问题,这样带来的问题是 indexs文件很多,而且产品的索引文件和会员信息的索引文件混在一起,备份也是个问题. 如果使用了多核,那就很轻松了,产品和会员就可使用不同的URL进行提交了,业务上也很清晰,生成的索引文件也不会混在一起,也容易备份. ????每个索引库通过相对独立的url访问. ? 多核心的配置 还记得solr home吗

商品搜索引擎---分词(插件介绍与入门实例)

最近刚好在学习搜索引擎分词,有了解一些分词插件,在这里给各位猿友分享一下. 本文主要介绍四个分词插件(ICTCLAS.IKAnalyzer.Ansj.Jcseg)和一种自己写算法实现的方式,以及一些词库的推荐. 一.ICTCLAS 1.1.介绍 中文词法分析是中文信息处理的基础与关键.中国科学院计算技术研究所在多年研究工作积累的基础上,研制出了汉语词法分析系统ICTCLAS(Institute of Computing Technology, Chinese Lexical Analysis S