ES实现商品搜索功能详解

本文详细描述了如何使用ES实现商品数据的存储、模糊查询、与MySQL同步以及异步更新的过程,包括数据同步机制、搜索服务的集成和具体实现步骤,强调了ES技术的特点,如插入操作对应于添加和修改,删除操作对应于从搜索服务中移除数据。
摘要由CSDN通过智能技术生成

一.ES实现特点

mysql数据库存储商品实时数据,做更多条件查询,全部查询、插入、删除等。

ES数据库主要是模糊查询 商品数据 

ES也是查询mysql数据库 

二、ES实现步骤

1.数据同步

同步数据时机

定义商品服务返回数据接口

定义商品feignClient

准备dsl语句,在ES库中创建商品存储对应的索引结构,等同于java中的表结构。

定义商品DOC模型,商品在ES中的索引插入到搜索服务中,定义存储ES数据的实体类。

2.模糊搜索

3.商品服务进行商品的插入删除等,mysql数据库实时改变,ES数据库也要更新。 配置rabbitmq,异步通信机制。

三、搜索服务

第一次启动:数据应该再启动就进行商品服务的数据查询和同步

第二次;商品服务DML动作,都需要通知搜索服务同步

注意ES的技术特点,商品服务修改和添加搜索的都是插入,删除对应的是搜索的删除。

四、具体实现

1.商品服务有一套功能提供全部数据功能 /product/list

2.定义一个productClient

3.更新搜索服务的数据

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值