态度决定高度,细节决定成败

疯狂的码农


  • 首页

  • 关于

  • 分类

  • 归档

  • 站点地图

  • 留言

玩转Solr源码之(一)Solr源码导入IDE

发表于 2019-10-01 |
字数统计: 1.1k 字 | 阅读时长 ≈ 5 分钟

玩转Solr源码之—Solr源码导入IDE

源码下载

这个比较简单,直接到solr的官网上下载源码即可,这里以Solr 7.7.2为例子。

1
curl "https://www.apache.org/dyn/closer.lua/lucene/solr/7.7.2/solr-7.7.2-src.tgz" -o solr-7.7.2-src.tgz && tar -xvf solr-7.7.2-src.tgz

安装依赖

  • jdk 1.8
  • ant

笔者使用的是RedHat 系统,所以jdk的安装直接使用yum就行

阅读全文 »

IBM ICU 简繁转换工具的性能坑

发表于 2019-07-21 |
字数统计: 2.1k 字 | 阅读时长 ≈ 8 分钟

IBM ICU 简繁转换工具的性能坑

背景介绍

由于工作内容的需要,我们处理的文本数据中会有繁体中文,但是我们的产品的使用客户都是习惯使用简体中文(台湾是中国不可割舍的一部分),所以为了方便用户使用简体中文检索到繁体中文,我们需要在建立索引的时候(这里以solr为例子)进行简繁转换。简单的查看了Solr的文档,以及简单的百度或者Google, 我们可以在Solr(7.7.2)中添加以下的字段类型来进行中文分词和简繁转换。

1
2
3
4
5
6
7
8
9
10
11
<fieldType name="test"  class="solr.TextField" >
<analyzer>
<charFilter class="solr.HTMLStripCharFilterFactory"/>
<charFilter class="solr.MappingCharFilterFactory" mapping="mapping-ISOLatin1Accent.txt"/>
<tokenizer class="solr.StandardTokenizerFactory"/>
<filter class="solr.CJKWidthFilterFactory"/>
<filter class="solr.ICUTransformFilterFactory" id="Traditional-Simplified"/>
<filter class="solr.LowerCaseFilterFactory"/>
<filter class="solr.CJKBigramFilterFactory" han="true" outputUnigrams="true"/>
</analyzer>
</fieldType>

可以看到这是最简单的中文分词器-> 二元分词,并且在二元的基础上输出了一元的结果,这里可以简单看下分词结果
二元+一元分词效果
似乎配置+使用起来也就5s(666),但是实际情况是性能不够,射不高,跑不快。

阅读全文 »

如何动态设置Solr Payload

发表于 2019-07-10 |
字数统计: 2.9k 字 | 阅读时长 ≈ 12 分钟

如何动态设置Solr Payload

问题背景

Solr 从6.x开始提供了index payload的功能,(payload是指可以指定为分词之后的每个term指定一个二进制的信息,用于针对每个term作出一定的行为,例如可以用来存储指定的score用于排序,也可以用来存储指定的数据,用于检查term的一定的检查),简单的查阅官方文档之后(这里使用solr7.7.2作为样例),得知我们可以动态的设定每个term的payload(参考SolrPayload),也可以根据指定的token type设置payload数值(参考Numeric Payload Token Filter),但是上述两种方式都无法根据输入的变化而动态的改变payload的值。

阅读全文 »

12
FQL

FQL

一个专注为什么的博客

13 日志
39 标签
RSS
GitHub E-Mail
© 2018 — 2020 FQL
由 Hexo 强力驱动
|
主题 — NexT.Pisces v5.1.4
访客数 人 总访问量 次