文章分类 -  Elasticsearch

摘要:Elasticsearch的能力虽然已经非常强大,但是它也提供了基于插件的扩展功能,基于此我们可以扩展查询、分词、监控、脚本等能力。这是学习Elasticsearch插件的第一篇,主要是阅读官方文档的笔记,介绍官方的一些插件和优秀的社区插件;后面一篇主要是通过源码来深入学习Elasticsearch 阅读全文
posted @ 2017-06-20 10:23 luckc# 阅读(1436) 评论(0) 推荐(0) 编辑
摘要:在Elasticsearch全文检索中,我们用的比较多的就是Multi Match Query,其支持对多个字段进行匹配。Elasticsearch支持5种类型的Multi Match,我们一起来深入学习下它们的区别。 5种类型的Multi Match Query 直接从官网的文档上摘抄一段来: b 阅读全文
posted @ 2017-06-20 10:23 luckc# 阅读(6907) 评论(0) 推荐(0) 编辑
摘要:Elasticsearch全文搜索默认采用的是相关性打分TFIDF,在实际的运用中,我们采用Multi-Match给各个字段设置权重、使用should给特定文档权重或使用更高级的Function_Score来自定义打分,借助于Elasticsearch的explain功能,我们可以深入地学习一下其中 阅读全文
posted @ 2017-06-20 10:21 luckc# 阅读(1853) 评论(0) 推荐(0) 编辑
摘要:搜索建议是搜索的一个重要组成部分,一个搜索建议的实现通常需要考虑建议词的来源、匹配、排序、聚合、关联的文档数和拼写纠错等,本文介绍一个基于Elasticsearch实现的搜索建议。 问题描述 电商网站的搜索是最基础最重要的功能之一,搜索框上面的良好体验能为电商带来更高的收益,我们先来看看淘宝、京东、 阅读全文
posted @ 2017-06-20 10:12 luckc# 阅读(2600) 评论(0) 推荐(0) 编辑
摘要:在基于Elasticsearch实现搜索建议一文中我们曾经介绍过如何基于Elasticsearch来实现搜索建议,而本文是在此基础上进一步优化搜索体验,在当搜索无结果或结果过少时提供推荐搜索词给用户。 背景介绍 在根据用户输入和筛选条件进行搜索后,有时返回的是无结果或者结果很少的情况,为了提升用户搜 阅读全文
posted @ 2017-06-20 10:10 luckc# 阅读(4889) 评论(0) 推荐(1) 编辑
摘要:最近面试一些公司,被问到的关于Elasticsearch和搜索引擎相关的问题,以及自己总结的回答。 Elasticsearch是如何实现Master选举的? Elasticsearch的选主是ZenDiscovery模块负责的,主要包含Ping(节点之间通过这个RPC来发现彼此)和Unicast(单 阅读全文
posted @ 2017-06-20 10:08 luckc# 阅读(21862) 评论(2) 推荐(4) 编辑
摘要:ElasticSearch 是一款优秀的搜索引擎,用java编写,restful接口的方式进行对接。 1. 安装ElasticSearch 安装Java环境首先检测是否安装java java -version echo $JAVA_HOME yum install java-1.8.0-openjd 阅读全文
posted @ 2017-06-09 15:57 luckc# 阅读(1329) 评论(0) 推荐(0) 编辑
摘要:首先是一些术语和基本的概念,这里的数据借鉴了es的中文文档让我们建立一个员工目录假设我们刚好在Megacorp工作,这时人力资源部门出于某种目的需要让我们创建一个员工目录,这个目录用于促进人文关怀和用于实时协同工作,所以它有以下不同的需求:数据能够包含多个值的标签、数字和纯文本。检索任何员工的所有信 阅读全文
posted @ 2017-06-09 15:28 luckc# 阅读(209) 评论(0) 推荐(0) 编辑
摘要:1.下载java jdk并在命令行中可运行,然后官网下载elasticsearch并解压。 2.执行bin/elasticsearch.bat,测试,打开 http://127.0.0.1:9200 3.安装中文分词插件 直接打开连接进行安装: https://github.com/NLPchina 阅读全文
posted @ 2017-06-09 11:52 luckc# 阅读(1146) 评论(0) 推荐(0) 编辑