带你读《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并实现搜索。  
相关文章
|
5月前
|
机器学习/深度学习 人工智能 分布式计算
阿里云领跑中国面向生成式AI的数据基础设施市场
IDC发布《IDC MarketScape: 中国面向生成式AI的数据基础设施2025年厂商评估》报告中,从产品能力、战略指标和收入规模三大核心维度评估了24家互联网厂商、云服务厂商、大数据厂商。结果显示,阿里云位居领导者类别,并在产品能力上领先其它厂商。
|
8月前
|
人工智能 弹性计算 大数据
和五所高校一起,我们共同打造了一门 AI 课程!
阿里云、超星尔雅协同北京大学、南京大学、复旦大学、上海交通大学、浙江大学五所高校名师,共同推出的 AI 通识公益系列课程「动手学 AI:人工智能通识与实践」将于 9月 1 日面向全国所有高校、所有专业的师生正式开放。
642 5
|
存储 网络安全 数据安全/隐私保护
docker 安装gitlab,配置邮件,备份全流程
docker 安装gitlab,配置邮件,备份全流程
692 0
|
监控 安全 网络安全
|
人工智能 自然语言处理 程序员
全程不用写代码,我用AI程序员写了一个飞机大战
本文介绍了如何利用通义灵码插件在PyCharm中快速开发一款简单的飞机大战游戏。
7694 7
|
存储 移动开发 算法
分布式数据库系统期末复习
分布式数据库系统期末复习
440 0
|
Unix Android开发 iOS开发
操作系统的历史演变过程
【10月更文挑战第15天】操作系统的历史演变过程
727 2
|
存储 分布式计算 NoSQL
分布式数据库HBase的基本概念和架构之基本数据模型的Cell
HBase是一个分布式数据库系统,基于Google的Bigtable和Apache Hadoop的HDFS构建而成。它是一个分布式数据库的NoSQL数据库,主要用于存储和处理海量数据。HBase的核心特性包括高可用性、高性能和高伸缩性。在阿里云开发者社区中,我们将介绍HBase的基本概念和架构,以及它的基本数据模型Cell。
1058 0
|
存储 监控 NoSQL
TDengine 3.3.3.0 版本上线:优化监控、增强 MongoDB 支持
今天我们非常高兴地宣布,TDengine 3.3.3.0 版本正式发布。本次更新引入了多项重要功能和性能优化,旨在为用户提供更高效、更灵活的数据解决方案。
399 0
|
网络协议 Ubuntu Linux
在Linux中,如何将本地80端口的请求转发到8080端口,当前主机IP为192.168.16.1,其中本地网卡eth0。
在Linux中,如何将本地80端口的请求转发到8080端口,当前主机IP为192.168.16.1,其中本地网卡eth0。

热门文章

最新文章

下一篇
开通oss服务