
全文检索技术
通过对Lucene、Elasticsearch等技术的贯穿,以及对京东商场商品搜索案例的实践,将全文检索这门技术真正融会贯通。
Mof_Rehoboam
毕业于北京邮电大学计算机信息管理专业。先后在移动互联网、物联网、通信等领域摸爬滚打近7年,从事过开发,也担任过产品经理。目前是全栈Java开发工程师,同时也是《学习计划》、《全名垃圾分类》等APP的作者。
展开
-
全文检索技术_设置默认分词器
在创建索引之前,打开elasticsearch-head-master的符合查询选项卡。提交类型选择:_template/template_http_request_record提交方式:put提交内容:{ "index_patterns": [ "*" ], "settings": { "number_of_shards": 5, "number_of_replicas": 1, "index" : { "analysis原创 2020-06-17 18:29:04 · 427 阅读 · 0 评论 -
8.从零开始搭建基于SpringCloud的京东整站_内容管理微服务_使用Elasticsearch实现商品搜索
本次目标后端:使用Elasticsearch实现商品搜索。前端:使用Vue对查询的商品列表进行展示。使用Elasticsearch实现商品搜索配置TransportClient客户端通过TransportClient发起对ES(Elasticsearch的简称)的索引创建、关键词查询等功能。1. 在工程的POM.xm文件中添加相关依赖Jar包。在父级工程中,添加TransportClient的版本管理:<!--Elasticsearch--><dependency>原创 2020-06-17 08:23:30 · 342 阅读 · 0 评论 -
全文检索技术_IK分词器7.7.1版本的安装
1. 在linux系统中,首先将将IK分词器下载下来wget https://github.com/medcl/elasticsearch-analysis-ik/releases/download/v7.7.1/elasticsearch-analysis-ik-7.7.1.zip将文件加压到Elasticsear安装目录的plugin/analysis-ik下unzip elasticsearch-analysis-ik-7.7.1.zip -d /usr/share/elasticsearch原创 2020-06-16 19:44:10 · 579 阅读 · 0 评论 -
全文检索技术_设置索引默认分片和副本个数
可以通过elasticsearch-head-master设置。elasticsearch-head-master的安装,可以参见文章:全文检索技术_elasticsearch-head-master插件的下载安装通过浏览器进入,选择复合查询选项卡:查询地址:输入你对应服务elasticsearch的地址。索引模板选择:_template/template_http_request_record提交方式:putjson提交内容:以下的内容提交成功后,将为之后的索引创建默认生成5个分片和一个原创 2020-06-16 19:11:30 · 334 阅读 · 0 评论 -
全文检索技术_elasticsearch-head-master插件的下载安装
elasticsearch-head-master插件,可以非常方便地查看Elasticsearch的集群信息、节点状态等信息,并提供了通过网页进行索引的创建、关闭、删除等功能。elasticsearch-head-master下载地址:点击进入下载页面1.通过unzip elasticsearch-head-master.zip命令将文件解压。解压成功后,进入elasticsearch-head-master目录。因为该插件是用node.js相关技术开发的,所以需要配置一下node.js相关环境。原创 2020-06-14 23:17:54 · 2160 阅读 · 0 评论 -
全文检索技术_Elasticsearch下载安装
Elasticsearch官网:https://www.elastic.co/安装流程可以通过两种方式安装。1.CentOS通过yum安装:配置yum源:[elasticsearch]name=Elasticsearch repository for 7.x packagesbaseurl=https://artifacts.elastic.co/packages/7.x/yumgpgcheck=1gpgkey=https://artifacts.elastic.co/GPG-KEY-e原创 2020-06-14 22:37:55 · 167 阅读 · 0 评论 -
全文检索技术_Lucene搜索
通过前几篇《全文检索技术专栏》关于倒排索引算法的原理、Lucene分词、索引的创建等内容的介绍,Lucene中最重要也是最能体现Lucene作用的非搜索功能莫属。Lucene对创建的索引可实现多种搜索功能(词项查询、多域查询、布尔查询、范围查询、模糊查询、通配查询),在进行搜索时,将查询条件封装成query对象,最终得到多个document数据。词项查询词项查询是最基本的查询方式,查询参数就是一个域中的词语。判断倒排索引表中是否有相关词项,最终将docum原创 2020-06-14 16:14:33 · 283 阅读 · 0 评论 -
全文检索技术_Lucene索引文件
可以通过Lucene实现全文中重要的组成部分——索引文件的创建。创建索引基本流程选择一个文件夹,作为索引输出的目录。创建索引输出流对象读取数据源,封装document对象,根据域属性定义文档对象的属性。通过输出流对象,将讲过倒排索引计算的结果输出到指定目录下的目录中,完成索引的创建。代码演示注释写的比较详细,就不过多解释了:import org.apache.lucene.analysis.cn.smart.SmartChineseAnalyzer;import org.apache.原创 2020-06-14 11:26:33 · 339 阅读 · 0 评论 -
全文检索技术_Lucene分词器
分词器概括 分词器是创建倒排索引的基础。分词是对语言中有含义的信息单元切分出来。但是世界上有那么多语言,不可能有一种分词器可以理解所有语言,对所有语言进行准确分词。所以,Lucene为了让其它个人或组织开发的不同分词器提供了一套接口规范——Analyzer。只要实现了这个接口的分词器,就可以加入到Lucene的分词家族中。分词器测试我们通过一个小的案例,来看一下不同的分词器的分词效果。创建Maven工程,引入相关依赖:<?xml version=原创 2020-06-13 22:49:27 · 222 阅读 · 0 评论 -
全文检索技术_倒排索引算法
索引的概念 索引在生活中存在方方面面的应用。比如你去超市,超市把商品分了不同的区间,日用平、生鲜、粮油、饮料等等,比如你去买可乐,直接去立着饮料牌子的区间去找就可以,不用去挨着寻找,那这里的“牌子”就是索引。再以字典为例,要找“赵”这个字的详细解释,你不需要捧着厚厚的字典从头到尾找,只要翻到z字母所在区间去找就可以了。 由上所述,索引的目的就是帮助你快速查找目标。如果以信息的角度讲,索引就是一批具有顺序的数据结构原创 2020-06-13 20:11:10 · 794 阅读 · 0 评论 -
全文检索技术_Lucene介绍
在真正介绍Lucene之前,需要简单了解一下全文检索技术。Lucene和全文检索技术的关系——前者是后者的工具,也就是说Lucene是实现全文检索的工具之一。除了Lucene之外,还会很多其它实现全文检索的技术。搜索背景 目前很多大型的网站,都离不开搜索。比如京东、天猫、淘宝等各大电商网站,美团、58同城等生活服务类平台,百度、google等搜索引擎更不用说。原创 2020-06-13 12:59:47 · 1055 阅读 · 0 评论