1.1 ElasticSearch环境搭建
1、启动ElasticSearch
docker start elasticsearch
2、启动Kibana
docker start kibana
3、kibana测试分词效果
1.2 索引库创建
①需求分析
用户输入关键词 比如只要文章titile、content包含此关键词就可以搜索出来,搜索能把相关都搜索出来搜索的文章结果里要高亮显示用户点击搜索结果任意一条可查看文章详情
②ES导入数据场景分析
③创建索引和映射
搜索结果页面展示什么内容?
标题布局封面图片发布时间作者名称文章id作者id静态url
哪些字段需要索引和分词?
标题内容
使用Kibana添加映射
索引库名称:app_info_article
1.3 索引数据同步
①app文章历史数据导入ES
1、创建es索引和映射
前面创建过了
2、文章微服务集成es功能
导入es服务的依赖
3、编写单元测试将历史状态正常的文章数据同步到es中
数据量特别少一次导入
数据量特别多分批导入,一次一两千条
wps免费版的下载的地方是什么
mapper接口和sql语句
测试类代码
②文章实时数据导入ES
跨服务调用的异步,要使用mq
WPS office官网最新下载的地址怎么找
生产者
消费者
1.4 文章搜索多条件复合查询
①关键词搜索
wps的官网的下载地方怎么找 wps电脑版下载网站是多少
②搜索接口定义
2.1 需求说明
wps office 官方下载的网址在哪
异步保存搜索记录默认查询10条搜索记录,按照搜索关键词的时间倒序可以删除搜索记录
2.2 数据存储说明
用户的搜索记录,需要给每一个用户都保存一份,数据量大,要求加载速度快,通常这样的数据存储到更合适,不建议直接存储到关系型数据库中
2.1 异步保存搜索历史
①实现思路
保存的数据量太大,不想同步影响效率,采用异步保存
2.2 查看搜索历史列表
①接口定义
按照当前用户,按照时间倒序查询
2.3 删除搜索历史
根据搜索历史id删除
需求分析
根据用户输入的关键字展示联想词
3.1 联想词的来源
通常是网上搜索频率比较高的一些词,通常在企业中有两部分来源:
第一:自己维护搜索词
通过分析用户搜索频率较高的词,按照排名作为搜索词
第二:第三方获取
关键词规划师(百度)、5118、爱站网
3.2 联想词功能实现
接口定义
正则表达式说明