首页 文章 精选 留言 我的

精选列表

搜索[词元],共10003篇文章
优秀的个人博客,低调大师

Elasticsearch之IKAnalyzer的过滤停止

它在哪里呢? 非常重要! [hadoop@HadoopMaster custom]$ pwd /home/hadoop/app/elasticsearch-2.4.3/plugins/ik/config/custom [hadoop@HadoopMaster custom]$ ll total 5252 -rw-r--r--. 1 hadoop hadoop 156 Dec 14 10:34ext_stopword.dic -rw-r--r--. 1 hadoop hadoop 130 Dec 14 10:34 mydict.dic -rw-r--r--. 1 hadoop hadoop 63188 Dec 14 10:34 single_word.dic -rw-r--r--. 1 hadoop hadoop 63188 Dec 14 10:34 single_word_full.dic -rw-r--r--. 1 hadoop hadoop 10855 Dec 14 10:34 single_word_low_freq.dic -rw-r--r--. 1 hadoop hadoop 5225922 Dec 14 10:34 sougou.dic [hadoop@HadoopMaster custom]$ [hadoop@HadoopMaster elasticsearch-2.4.3]$ ll total 56 drwxrwxr-x. 2 hadoop hadoop 4096 Feb 22 01:37 bin drwxrwxr-x. 3 hadoop hadoop 4096 Feb 22 18:46 config drwxrwxr-x. 3 hadoop hadoop 4096 Feb 22 06:05 data drwxrwxr-x. 2 hadoop hadoop 4096 Feb 22 01:37 lib -rw-rw-r--. 1 hadoop hadoop 11358 Aug 24 2016 LICENSE.txt drwxrwxr-x. 2 hadoop hadoop 4096 Feb 25 05:15 logs drwxrwxr-x. 5 hadoop hadoop 4096 Dec 8 00:41 modules -rw-rw-r--. 1 hadoop hadoop 150 Aug 24 2016 NOTICE.txt drwxrwxr-x. 5 hadoop hadoop 4096 Feb 25 06:31 plugins -rw-rw-r--. 1 hadoop hadoop 8700 Aug 24 2016 README.textile [hadoop@HadoopMaster elasticsearch-2.4.3]$ cd plugins/ [hadoop@HadoopMaster plugins]$ ll total 12 drwxrwxr-x. 5 hadoop hadoop 4096 Feb 22 05:28 head drwxrwxr-x. 3 hadoop hadoop 4096 Feb 25 06:32 ik drwxrwxr-x. 8 hadoop hadoop 4096 Feb 22 05:34 kopf [hadoop@HadoopMaster plugins]$ cd ik/ [hadoop@HadoopMaster ik]$ ll total 5828 -rw-r--r--. 1 hadoop hadoop 263965 Dec 1 2015 commons-codec-1.9.jar -rw-r--r--. 1 hadoop hadoop 61829 Dec 1 2015 commons-logging-1.2.jar drwxr-xr-x. 3 hadoop hadoop 4096 Jan 1 12:46 config -rw-r--r--. 1 hadoop hadoop 55998 Jan 1 13:27 elasticsearch-analysis-ik-1.10.3.jar -rw-r--r--. 1 hadoop hadoop 4505518 Jan 15 08:59 elasticsearch-analysis-ik-1.10.3.zip -rw-r--r--. 1 hadoop hadoop 736658 Jan 1 13:26 httpclient-4.5.2.jar -rw-r--r--. 1 hadoop hadoop 326724 Jan 1 13:07 httpcore-4.4.4.jar -rw-r--r--. 1 hadoop hadoop 2667 Jan 1 13:27 plugin-descriptor.properties [hadoop@HadoopMaster ik]$ cd config/ [hadoop@HadoopMaster config]$ ll total 3016 drwxr-xr-x. 2 hadoop hadoop 4096 Jan 1 12:46 custom -rw-r--r--. 1 hadoop hadoop 697 Dec 14 10:34 IKAnalyzer.cfg.xml -rw-r--r--. 1 hadoop hadoop 3058510 Dec 14 10:34 main.dic -rw-r--r--. 1 hadoop hadoop 123 Dec 14 10:34 preposition.dic -rw-r--r--. 1 hadoop hadoop 1824 Dec 14 10:34 quantifier.dic -rw-r--r--. 1 hadoop hadoop 164 Dec 14 10:34 stopword.dic -rw-r--r--. 1 hadoop hadoop 192 Dec 14 10:34 suffix.dic -rw-r--r--. 1 hadoop hadoop 752 Dec 14 10:34 surname.dic [hadoop@HadoopMaster config]$ cd custom/ [hadoop@HadoopMaster custom]$ ll total 5252 -rw-r--r--. 1 hadoop hadoop 156 Dec 14 10:34ext_stopword.dic -rw-r--r--. 1 hadoop hadoop 130 Dec 14 10:34 mydict.dic -rw-r--r--. 1 hadoop hadoop 63188 Dec 14 10:34 single_word.dic -rw-r--r--. 1 hadoop hadoop 63188 Dec 14 10:34 single_word_full.dic -rw-r--r--. 1 hadoop hadoop 10855 Dec 14 10:34 single_word_low_freq.dic -rw-r--r--. 1 hadoop hadoop 5225922 Dec 14 10:34 sougou.dic [hadoop@HadoopMaster custom]$cat ext_stopword.dic也了仍从以使则却又及对就并很或把是的着给而被让在还比等当与于 但[hadoop@HadoopMaster custom]$ 大家,有兴趣,可以看看,英文停用词 http://www.ranks.nl/stopwords 大家,有兴趣,可以看看,中文停用词 本文转自大数据躺过的坑博客园博客,原文链接:http://www.cnblogs.com/zlslch/p/6440681.html,如需转载请自行联系原作者

优秀的个人博客,低调大师

Elasticsearch关键高亮检索案例分享

1.准备工作 参考文档《 集成Elasticsearch Restful API案例》导入和配置es客户端 2.创建索引表和初始化数据 通过组件 DocumentCRUD来创建索引表和初始化数据, DocumentCRUD组件实现本文不做重点介绍: /** * 创建索引表,并导入高亮检索功能需要的测试数据 */ public void initIndiceAndData(){ DocumentCRUD documentCRUD = new DocumentCRUD(); documentCRUD.testCreateIndice(); documentCRUD.testBulkAddDocuments(); } 3.高亮检索功能实现 3.1 定义高亮检索dsl 在文件 esmapper/demo.xml中增加testHighlightSearch配置: <!-- 一个简单的检索dsl,中有四个变量 name 全文检索字段 startTime endTime 通过map传递变量参数值 变量语法参考文档:https://my.oschina.net/bboss/blog/1556866 --> <property name="testHighlightSearch"> <![CDATA[{ "query": { "bool": { "filter": [ { ## 时间范围检索,返回对应时间范围内的记录,接受long型的值 "range": { "agentStarttime": { "gte": #[startTime],##统计开始时间 "lt": #[endTime] ##统计截止时间 } } } ], "must": [ #* { "query_string": { "query": #[condition], "analyze_wildcard": true } } *# { ## 全文检索参考文档 https://www.elastic.co/guide/en/elasticsearch/reference/6.2/full-text-queries.html "match_phrase" : { "name" : { "query" : #[condition] } } } ] } }, ## 最多返回1000条记录 "size":1000, ## 高亮检索定义,参考文档:https://www.elastic.co/guide/en/elasticsearch/reference/6.2/search-request-highlighting.html "highlight": { "pre_tags": [ "<mark>" ], "post_tags": [ "</mark>" ], "fields": { "*": {} }, "fragment_size": 2147483647 } }]]> </property> 3.2 编写高亮检索代码 创建检索类-org.bboss.elasticsearchtest.HighlightSearch 在其中定义以下方法 public void highlightSearch() throws ParseException { //创建加载配置文件的客户端工具,用来检索文档,单实例多线程安全 ClientInterface clientUtil = ElasticSearchHelper.getConfigRestClientUtil(mappath); //设定查询条件,通过map传递变量参数值,key对于dsl中的变量名称 //dsl中有三个变量 // condition // startTime // endTime Map<String,Object> params = new HashMap<String,Object>(); DateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); //设置时间范围,时间参数接受long值 params.put("startTime",dateFormat.parse("2017-09-02 00:00:00")); params.put("endTime",new Date()); params.put("condition","喜欢唱歌");//全文检索条件,匹配上的记录的字段值对应的匹配内容都会被高亮显示 //执行查询,demo为索引表,_search为检索操作action ESDatas<Demo> esDatas = //ESDatas包含当前检索的记录集合,最多1000条记录,由dsl中的size属性指定 clientUtil.searchList("demo/_search",//demo为索引表,_search为检索操作action "testHighlightSearch",//esmapper/demo.xml中定义的dsl语句 params,//变量参数 Demo.class);//返回的文档封装对象类型 //获取总记录数 long totalSize = esDatas.getTotalSize(); System.out.println(totalSize); //获取结果对象列表,最多返回1000条记录 List<Demo> demos = esDatas.getDatas(); for(int i = 0; demos != null && i < demos.size(); i ++){//遍历检索结果列表 Demo demo = demos.get(i); //记录中匹配上检索条件的所有字段的高亮内容 Map<String,List<Object>> highLights = demo.getHighlight(); Iterator<Map.Entry<String, List<Object>>> entries = highLights.entrySet().iterator(); while(entries.hasNext()){ Map.Entry<String, List<Object>> entry = entries.next(); String fieldName = entry.getKey(); System.out.print(fieldName+":"); List<Object> fieldHighLightSegments = entry.getValue(); for (Object highLightSegment:fieldHighLightSegments){ /** * 在dsl中通过<mark></mark>来标识需要高亮显示的内容,然后传到web ui前端的时候,通过为mark元素添加css样式来设置高亮的颜色背景样式 * 例如: * <style type="text/css"> * .mark,mark{background-color:#f39c12;padding:.2em} * </style> */ System.out.println(highLightSegment); } } } } 4.运行检索功能 定义junit测试用例: import org.junit.Test; import java.text.ParseException; public class HighlightSearchTest { @Test public void testHighlightSearch() throws ParseException { HighlightSearch highlightSearch = new HighlightSearch(); highlightSearch.initIndiceAndData(); highlightSearch.highlightSearch(); } @Test public void testHighlightSearchOther() throws ParseException { HighlightSearch highlightSearch = new HighlightSearch(); highlightSearch.initIndiceAndData(); highlightSearch.highlightSearchOther(); } } 在idea或者eclipse中运行测试用例即可,输出检索到的高亮内容信息如下: name:刘德华<mark>喜</mark><mark>欢</mark><mark>唱</mark><mark>歌</mark>454 name:刘德华<mark>喜</mark><mark>欢</mark><mark>唱</mark><mark>歌</mark>488 name:刘德华<mark>喜</mark><mark>欢</mark><mark>唱</mark><mark>歌</mark>508 name:刘德华<mark>喜</mark><mark>欢</mark><mark>唱</mark><mark>歌</mark>518 5.完整的demo实例工程 https://github.com/bbossgroups/eshelloword-booter https://gitee.com/bbossgroups/eshelloword-booter 6.参考文档 https://www.elastic.co/guide/en/elasticsearch/reference/6.2/search-request-highlighting.html https://my.oschina.net/bboss/blog/1801273 5 开发交流 elasticsearch技术交流群:166471282 elasticsearch微信公众号:bbossgroups

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Spring

Spring

Spring框架(Spring Framework)是由Rod Johnson于2002年提出的开源Java企业级应用框架,旨在通过使用JavaBean替代传统EJB实现方式降低企业级编程开发的复杂性。该框架基于简单性、可测试性和松耦合性设计理念,提供核心容器、应用上下文、数据访问集成等模块,支持整合Hibernate、Struts等第三方框架,其适用范围不仅限于服务器端开发,绝大多数Java应用均可从中受益。

Rocky Linux

Rocky Linux

Rocky Linux(中文名:洛基)是由Gregory Kurtzer于2020年12月发起的企业级Linux发行版,作为CentOS稳定版停止维护后与RHEL(Red Hat Enterprise Linux)完全兼容的开源替代方案,由社区拥有并管理,支持x86_64、aarch64等架构。其通过重新编译RHEL源代码提供长期稳定性,采用模块化包装和SELinux安全架构,默认包含GNOME桌面环境及XFS文件系统,支持十年生命周期更新。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。

用户登录
用户注册