带你读《Elastic Stack 实战手册》之4:——3.2.1.企业搜索 (4)

简介: 带你读《Elastic Stack 实战手册》之4:——3.2.1.企业搜索 (4)

《Elastic Stack 实战手册》——三、产品能力——3.2.核心应用场景——3.2.1.企业搜索 (3) https://developer.aliyun.com/article/1231678


支持查询优化

 

App Search 创建引擎时可选择语言,App Search 会针对不同的语言自动进行优化优化内容包括词干匹配、字符匹配、短语匹配、排版容忍度等。App Search 支持查询关键字推荐/自动完成功能。当用户输入部分关键字时,App Search 可根据引擎中已有的数据,推荐关键词,用户通过选用更合适的关键字,获取更精准的搜索结果。如下代码根据文档中 title 和 states字段内容提供 car 关键词的推荐关键词:


curl -X POST 'https://[instance id].ent-search.[region].[provider].cloud.es.io/api/as/v1/engines/national-parks-demo/query_suggestion' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer search-7eud55t7ecdmqzcanjsc9cqu' \
-d '{
"query": "car",
"types": {
  "documents": {
    "fields": [
    "title",
    "states"
    ]
  }
},
"size": 3
}'

结果提供 3 个推荐关键词为:carlsbad、carlsbad caverns、carolina


{
   "results":{
      "documents":[
         {
            "suggestion":"carlsbad"
         },
         {
            "suggestion":"carlsbad caverns"
         },
         {
            "suggestion":"carolina"
         }
      ]
   },
   "meta":{
      "request_id":"914f909793379ed5af9379b4401f19be"
   }
}

App Search 支持同义词配置,可通过设置同义词,使用同义词查询得到需要的结果。如下代码将 summit、peak、cliff、moutain 设置为同义词:


curl -X POST 'https://[instance id].ent-search.[region].[provider].cloud.es.io/api/as/v1/engines/national-parks-demo/synonyms' \
-H 'Content-Type: application/json' \
-H 'Authorization: Bearer private-xxxxxxxxxxxxxxxxxxxx' \
-d '{
"synonyms": ["summit", "peak", "cliff", "mountain"]
}

Enterprise Search 支持记录查询分析日志 API Log,方便对用户搜索情况,如搜索结果、搜索性能、搜索异常等进行分析和优化,不断改善用户搜索体验,形成正向反馈。

 

支持代码集成

 

Enterprise Search 提供了 Enterprise Search Python Client 和 Enterprise Search Ruby Client,可比较方便的使用 Python 和 Ruby 代码对 Enterprise Search 进行集成。

 

提供搜索框UI

 

Elastic 企业搜索提供了连接 App Search 的 React 用户搜索交互界面,直接下载导入即可使用,省去了不少前端代码工作量,对有搜索框需求,但无特别要求的前端应用来说也是一个不错的选择。Site Search则只需要用户在自己的网站上实施几行代码即可添加好由Elasticsearc-h 提供支持的搜索框。

 

总结

 

企业搜索的业务场景决定了企业搜索的特点和需求,Elastic 在 Elasticsearch 强大功能的基础之上,构建了更加易用的企业搜索解决方案 Elastic Enterprise Search。Elastic Enterprise

Search 针对企业搜索场景,提供了从自身部署到权限控制、从文档接入到查询优化、从前端 UI 到结果控制的全场景覆盖的支持能力,虽然其相比自己构建一套企业搜索系统的门槛已非常低,易用性也非常好,但毕竟是一套接口完善、功能众多、相对复杂的系统。以上内容仅简单介绍其基本能力,如需将其应用于生产环境,还需结合实际业务需求,仔细阅读相关文档并进行深入研究和实践。

 

注:本文中代码片段及配图来自 https://www.elastic.co/

 

参考文档

 

l Enterprise Search Guide [8.2]:

l https://www.elastic.co/guide/en/enterprise-search/current/index.html

l Workplace Search Guide [8.2]:

l https://www.elastic.co/guide/en/workplace-search/current/index.html

l App Search Guide [8.2].:

l https://www.elastic.co/guide/en/app-search/current/index.html

 

创作人简介:

朱永生,现任上海闪马智能科技有限公司运维总监,拥有超过十五年技术运维经验,曾服务于多家上市公司和初创企业,负责网络游戏、广告、在线教育、金融科技等业务的全线运维工作和运维团队,擅长数据库和运维系统架构优化、运维自动化平台建设及DevOps 相关的文化理念流程和技术系统。

博客:https://blog.csdn.net/yongsheng0550 

 

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
相关文章
|
9月前
|
人工智能 云栖大会 调度
「2025云栖大会」“简单易用的智能云网络,加速客户AI创新”专场分论坛诚邀莅临
”简单易用的智能云网络,加速客户AI创新“专场分论坛将于9月24日13:30-17:00在云栖小镇D1-5号馆举办,本场技术分论坛将发布多项云网络创新成果,深度揭秘支撑AI时代的超低时延、自适应调度与跨域协同核心技术。同时来自领先企业的技术先锋将首次公开其在模型训练、企业出海等高复杂场景中的突破性实践,展现如何通过下一代云网络实现算力效率跃升与成本重构,定义AI时代网络新范式。
305 4
|
9月前
|
存储
最新款electron38+vite7+vue3.5+pinia3桌面客户端聊天程序
最新原创electron38+vite7+vue3 setup+pinia3+element-plus电脑端仿微信聊天EXE应用。
281 1
|
存储 网络安全 数据安全/隐私保护
docker 安装gitlab,配置邮件,备份全流程
docker 安装gitlab,配置邮件,备份全流程
779 0
|
监控 安全 网络安全
|
存储 移动开发 算法
分布式数据库系统期末复习
分布式数据库系统期末复习
513 0
|
Unix Android开发 iOS开发
操作系统的历史演变过程
【10月更文挑战第15天】操作系统的历史演变过程
811 2
|
C# 开发者
【捞底干货】C#中equals和==运算符的区别
【捞底干货】C#中equals和==运算符的区别
683 1
|
存储 监控 NoSQL
TDengine 3.3.3.0 版本上线:优化监控、增强 MongoDB 支持
今天我们非常高兴地宣布,TDengine 3.3.3.0 版本正式发布。本次更新引入了多项重要功能和性能优化,旨在为用户提供更高效、更灵活的数据解决方案。
474 0
ThinkPHP6模型中的获取器,修改器及搜索器的简单使用
本文介绍了ThinkPHP6模型中的获取器、修改器和搜索器的使用方法。获取器用于对模型数据进行自动处理,修改器用于处理模型设置的数据,搜索器用于封装字段的查询条件表达式。文章通过示例代码展示了如何在模型中定义和使用这些方法,以及如何通过控制器调用模型方法进行数据操作。
|
XML Java 网络架构
Webservice使用
Webservice使用
506 2

热门文章

最新文章