酒店数据全文检索(5)-搜索框拼音自动补全功能实现 自动补全示例当用户在搜索框输入字符时,我们应该提示出与该字符有关的搜索项,提示完整词条的功能,就是自动补全了。比如京东、淘宝的商品搜索拼音搜索示例我们用拼音首字母全拼也能搜索,还是用京东举例拼音分词器如果我们需要根据拼音字母来推断,因此要用到拼音分词功能。要实现根据字母做补全,就必须对文档按照拼音分 2022-02-08 elasticsearch
酒店数据全文检索练习(4)-数据聚合,过滤条件 前言前面学习了数据的聚合功能,现在我们把他用到酒店数据全文检索的项目中来,实现条件过滤的动态展示,之前条件过滤都是写死在前端的,并不会随着搜索结果进行动态展示,这就导致了一个问题,例如:某个酒店只有上海有,但是城市中还是有北京,深圳,当我再去点深圳的时候就搜不到结果了。这一节,我们就通过es的聚合查 2022-02-07 elasticsearch
elasticsearch-RestClient数据聚合 上一节中我们讲到DSL的数据聚合操作,这一节我们讲用RestClient如果进行数据聚合操作先看图聚合的结果也与查询结果不同,API 也比较特殊。不过同样是 JSON 逐层解析代码演示@Test public void testAggregation() throws IOException 2022-01-28 elasticsearch
elasticsearch之DSL-数据聚合 DSL数据聚合**聚合(aggregations)**可以让我们极其方便的实现对数据的统计、分析、运算。什么品牌的手机最受欢迎?这些手机的平均价格、最高价格、最低价格?这些手机每月的销售情况如何?在 Elasticsearch 实现这些统计功能比数据库的 sql 要方便的多,而且查询速度非常快,可以 2022-01-27 elasticsearch
酒店数据全文检索练习(3)-定价排名广告置顶 前言上一节(酒店数据全文检索练习(2)-按距离排序实现离我最近功能)的学习我们实现了按照经纬度坐标实现距离排序,以及价格排序的功能,这一节我们学习广告置顶,竞价排名功能。我们用百度的时候,有没有看到过这种情况,我们搜索的结果中,排在前面的是广告,而且根据不同公司交的钱不同,你排名的顺序就不一样,如下 2022-01-26 elasticsearch
酒店数据全文检索练习(2)-按距离排序实现离我最近功能 前言上一节我们讲了如何利用elasticsearch的关键词进行全文检索和数据过滤,这一节我们主要讲排序功能的实现排序地理位置排序前端有一个功能,通过点击定位图标,会查询你当前的位置,并发送当前位置的请求到后台,我们可以根据这个实现我附近的酒店功能这个字段是location,通过逗号分割的经纬度,我 2022-01-21 elasticsearch
酒店数据全文检索练习(1)-关键词查询与结果条件过滤 前言通过前面对Elasticsearch的学习,我们用一个综合的例子来进行练习,项目源文件(包含后台和前端代码,但是es查询部分需要自己写,可以跟着本篇文档来写):hotel-demo.zip,练习项目中的SQL脚本:tb_hotel.sql本篇文章是通过学习黑马B站视频而来:黑马旅游案例项目结构创 2022-01-21 elasticsearch
elasticsearch-RestClient文档查询 上一章我们讲到用RestClient进行索引库以及对文档的基本操作,这一篇文章,我们学习用RestClient来进行文档的查询操作。@Slf4jpublic class HotelSearchTest { private RestHighLevelClient client; /** 2022-01-21 elasticsearch
elasticsearch-RestClient索引库以及基本文档操作 ES 官方提供了各种不同语言的客户端,用来操作 ES。这些客户端的本质就是组装 DSL 语句,通过 http 请求发送给 ES。官方文档地址:https://www.elastic.co/guide/en/elasticsearch/client/index.html其中的Java Rest Cli 2022-01-20 elasticsearch
elasticsearch之DSL-查询 Elasticsearch 提供了基于 JSON 的 DSL(Domain Specific Language)来定义查询。常见的查询类型包括:查询所有:查询出所有数据,一般测试用。例如:match_all全文检索(full text)查询:利用分词器对用户输入内容分词,然后去倒排索引库中匹配。例如 2022-01-19 elasticsearch