近几年备受追捧的ElasticSearch(ES)凭借其稳定、可靠、快速的实时搜索,受到大家的好评,维基百科、SoundCloud 将 ES 作为其核心搜索组件。但是 ES 本身对中文分词和搜索比较局限。简单地说一种是单字形式,一种是任意相邻两字成词,两种方式都不能很好的满足现在的中文分词需求,进而影响了搜索结果。因此用户会根据使用情景自定义配置中文分词器,为此海量近期推出的高效、智能的适用于ES的中文分词插件能够快速实现智能分词,更贴近搜索需求。让分词更懂你的搜索!
插件下载地址:https://github.com/HylandaOpen/elasticsearch-analysis-hlseg
插件分词效果如何?
小编抽取市面上主流插件与海量中文智能分词v5.0-ES插件的效果进行对比测试,在众多的分词插件中我们发现了海量分词重点在地名识别、著名人名、外国人名等有很好的识别效果。
1、地名方面海量分词5.0可以识别并检索出关于地名后缀的结果。
可以通过搜索“河南”得到“河南省”的结果,搜索“天津”得到“天津市”的搜索结果,而不是简单河南、天津的识别。
2、著名人物的人名识别更精准,如刘翔、傅莹等。
部分分词器处理中文分词只有两种方式:一种是单字(unigrams)形式,即简单粗暴的将中文的每一个汉字作为一个词(token)分开;另一种是两字(bigrams)的,也就是任意相邻的两个汉字作为一个词分开。这种简单粗暴的切分方式无法实现时效性较新的人名识别,如刘翔、傅莹等会被识别为单字切开。
3、外国人名识别方面海量可以将人名识别智能识别。
“玛利亚 凯利”、“乔治·史密斯”、“玛丽·戴维斯”将完整的外国人名识别出姓氏和名,如“乔治·史密斯”可以被识别为“乔治”和 “史密斯”。
4、常见词的品牌名称识别方面,海量分词5.0识别的结果中包含实际意义的品牌名称。
如“乐高”,“吉米作为简单的词,可以被识别,但是词放在文档语境中有其品牌的属性,海量分词识别的结果中可以准确搜索出品牌的结果。
5、机构名识别方面,海量分词5.0可以识别完整的机构名称,如“天津海量信息技术股份有限公司”,可以完整的识别出全称。
6、从效率角度,海量分词5.0的效率为300万字/s处理速度,极大地提升了建立索引的性能。
安装插件的方法
-
下载并解压适用于您的海量中文智能分词v5.0-ES插件
-
下载并解压海量分词5.0词典
-
将词典更新在config目录下
-
重新启动elasticsearch
注:其他相关步骤详情请参考github下说明信息
如果您需要自主打包,目前只支持ES5.5.1以上版本;
Quick Example
1.建立一个 index
2.建立一个 mapping
3.高亮显示命中数据
关于ElasticSearch
一、ES的概念
ElasticSearch是一个基于Lucene的搜索服务器。它提供了一个分布式多用户能力的全文搜索引擎,基于RESTful web接口。Elasticsearch是用Java开发的,并作为Apache许可条款下的开放源码发布,是当前流行的企业级搜索引擎。设计用于云计算中,能够达到实时搜索,稳定,可靠,快速,安装使用方便。
关于elasticsearch的一个传说,有一个程序员失业了,陪着自己老婆去英国伦敦学习厨师课程。程序员在失业期间想给老婆写一个菜谱搜索引擎,觉得lucene实在太复杂了,就开发了一个封装了lucene的开源项目,compass。后来程序员找到了工作,是做分布式的高性能项目的,觉得compass不够,就写了elasticsearch,让lucene变成分布式的系统。
二、关于ES的实操案例
对于一个ToB的产品,Elasticsearch容易部署,上手使用成本非常低,部署完成后企业的非结构化数据很容易通过搜索引擎,极大地提高了用户效率。因此迅速传播开,形成使用的风潮。
1、2013年,GitHub抛弃了Solr,采用了ElasticSearch做PB级的搜索,“GitHub使用ElasticSearch搜索20TB的数据,包括13亿文件和1300亿行代码”。
2、维基百科启动以ElasticSearch为基础的核心搜索架构。
3、SoundCloud使用ElasticSearch为1.8亿用户提供即时而精准的音乐搜索服务。
4、百度目前广泛使用ElasticSearch作为文本数据分析,采集百度所有服务器上的各类指标数据及用户自定义数据,通过对各种数据进行多维分析展示,辅助定位分析实例异常或业务层面异常。目前覆盖百度内部20多个业务线(包括casio、云分析、网盟、预测、文库、直达号、钱包、风控等),单集群最大100台机器,200个ES节点,每天导入30TB+数据。
推荐海量中文智能分词v5.0-ES插件的理由
-
海量分词5.0 可以智能识别多种颗粒度分词,识别效果好,效率高。
-
海量分词5.0 更新字典在地名、机构名、人名等命名实体识别方面效果有明显的优势。
-
免费且持续进化的海量分词5.0 插件的迭代速度快,和最新版本保持高度一致。