带你读《Elastic Stack 实战手册》之64:—— 3.5.18.3.App Search(上)

本文涉及的产品
Elasticsearch Serverless通用抵扣包,测试体验金 200元
简介: 带你读《Elastic Stack 实战手册》之64:—— 3.5.18.3.App Search(上)

3.5.18.3.App Search

创作人:赵凯

审稿人:亢伟楠

 

概述

Elastic App Search 是 Elastic Enterprise Search 的一部分,和 Elasticsearch 一起使用,是免费使用的。

App Search 可以轻松实现高级搜索,通过完善的 API 集合以及直观的仪表板,Elastic App

Search 为你的公司网站、电子商务网站或应用带来了 Elasticsearch 的强大功能。获得无缝的可扩展性、可调的相关性控制、详尽的文档、经过良好维护的客户端和强大的分析能力,为你的客户打造领先的搜索体验。

image.png



image.png


亮点

 

l 轻松完成索引

l 不限平台,不限数据,不限位置,通过不区分模式的数据采集方式以及直观的仪表板,你马上就能完成准备工作并开始查询。只需使用网络爬虫或经过良好维护的 API 客户端之一对你的数据加以索引,然后便可开始查询啦。

 

l 功能强大的搜索

l 相关性高,容错性优异,Elastic App Search 由 Elasticsearch 提供支持,其相关性模型已针对实际搜索情况进行优化。“允许拼写错误”、词干提取、双连词等功能均可直接使用。

 

l 搜索分析

l 实时数据,可付诸实践的见解,Elastic App Search 的分析结果能够让你洞悉用户的全部行为,并为你提供改进建议以及达到目标的方式。

 

l 相关性调整

l 定义你自己的搜索方式,使用直观界面调校搜索的相关性。创建同义词组,针对特定查询对结果进行重排序,以及分配权重和系数,这些都有助于对整体精准度进行微调。


 l 爬取过程便捷

l 高效索引所有公开的网站内容。只需点击鼠标——无需代码——用户便可自定义网络爬虫规则,从而指定入口点,并且/或者将特定页面、内容或词汇排除在外。


部署

 

因为 App Search 是 Enterprise Search 的一部分,所以只需要部署 Enterprise Search 即可使用 App Search。

以 Docker 部署举例

 

1、拉取镜像

docker pull docker.elastic.co/enterprise-search/enterprise-search:7.12.0


2、用 Docker CLI 启动

 

docker run \
  -p 3002:3002 \
  -e elasticsearch.host='http://host.docker.internal:9200' \
  -e elasticsearch.username=elastic \
  -e elasticsearch.password=changeme \
  -e allow_es_settings_modification=true \
  -e secret_management.encryption_keys='[4a2cd3f81d39bf28738c10db0ca782095ffac07279561809eecc722e0c20eb09]' \
docker.elastic.co/enterprise-search/enterprise-search:7.12.0

allow_es_settings_modificationsecret_management.encryption_keys 必须配置。


3、或者用 Docker Compose 启动

 

docker compose up --remove-orphans


docker-compose.yml 文件内容如下:


version: "7.12.0"
networks:
  elastic:
    driver: bridge
volumes:
  elasticsearch:
    driver: local
services:
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:{version}
    restart: unless-stopped
    environment:
      - "discovery.type=single-node"
      - "ES_JAVA_OPTS=-Xms512m -Xmx512m"
      - "xpack.security.enabled=true"
      - "xpack.security.authc.api_key.enabled=true"
      - "ELASTIC_PASSWORD=changeme"
    ulimits:
      memlock:
        soft: -1
        hard: -1
    volumes:
      - elasticsearch:/usr/share/elasticsearch/data
    ports:
      - 127.0.0.1:9200:9200
    networks:
      - elastic
  ent-search:
    image: docker.elastic.co/enterprise-search/enterprise-search:{version}
    restart: unless-stopped
    depends_on:
      - "elasticsearch"
       environment:
      - "JAVA_OPTS=-Xms512m -Xmx512m"
      - "ENT_SEARCH_DEFAULT_PASSWORD=changeme"
      - "elasticsearch.username=elastic"
      - "elasticsearch.password=changeme"
      - "elasticsearch.host=http://elasticsearch:9200"
      - "allow_es_settings_modification=true"
      - "secret_management.encryption_keys=[4a2cd3f81d39bf28738c10db0ca782095ffac07279561809eecc722e0c20eb09]"
      - "elasticsearch.startup_retry.interval=15"
    ports:
      - 127.0.0.1:3002:3002
    networks:
      - elastic
  kibana:
    image: docker.elastic.co/kibana/kibana:{version}
    restart: unless-stopped
    depends_on:
      - "elasticsearch"
      - "ent-search"
    ports:
      - 127.0.0.1:5601:5601
    environment:
      ELASTICSEARCH_HOSTS: http://elasticsearch:9200
      ENTERPRISESEARCH_HOST: http://ent-search:3002
      ELASTICSEARCH_USERNAME: elastic
       ELASTICSEARCH_PASSWORD: changeme
    networks:
      - elastic


4、启动成功后,可以通过 kibana -> Enterprise Search -> App Search 访问,或者访问单独的地址:http://localhost:3002

 

image.png


《Elastic Stack 实战手册》——三、产品能力——3.5 进阶篇——3.5.18.Enterprise Search —— 3.5.18.3.App Search(下) https://developer.aliyun.com/article/1226729

相关实践学习
以电商场景为例搭建AI语义搜索应用
本实验旨在通过阿里云Elasticsearch结合阿里云搜索开发工作台AI模型服务,构建一个高效、精准的语义搜索系统,模拟电商场景,深入理解AI搜索技术原理并掌握其实现过程。
ElasticSearch 最新快速入门教程
本课程由千锋教育提供。全文搜索的需求非常大。而开源的解决办法Elasricsearch(Elastic)就是一个非常好的工具。目前是全文搜索引擎的首选。本系列教程由浅入深讲解了在CentOS7系统下如何搭建ElasticSearch,如何使用Kibana实现各种方式的搜索并详细分析了搜索的原理,最后讲解了在Java应用中如何集成ElasticSearch并实现搜索。  
相关文章
|
数据采集 JSON API
带你读《Elastic Stack 实战手册》之64:—— 3.5.18.3.App Search(下)
带你读《Elastic Stack 实战手册》之64:—— 3.5.18.3.App Search(下)
254 0
|
算法 数据库 索引
App Inventor 2 算法之二分算法(Binary Search)实现,快速查找定位
二分算法(Binary Search)是生活中非常常用的折半算法,能解决快速查找、快速定位的问题,主要用到数学和逻辑代码块。 本示例程序演示了采用普通遍历的方式和二分的方式分别需要几次能够猜中随机给出的数字。
347 0
App is not indexable by Google Search; consider adding at least one Activity with an ACTION-VIEW in
App is not indexable by Google Search; consider adding at least one Activity with an ACTION-VIEW in
159 0
|
9天前
|
移动开发 小程序 Android开发
基于 uni-app 开发的废品回收类多端应用功能与界面说明
本文将对一款基于 uni-app 开发的废品回收类多端应用,从多端支持范围、核心功能模块及部分界面展示进行客观说明,相关资源信息也将一并呈现。
37 0
|
3月前
|
人工智能 文字识别 小程序
旅游社用什么工具收报名 + 资料?不开发 App 也能自动收集信息
本文探讨了旅游行业中报名信息收集的常见痛点及解决方案,重点介绍了二维码表单工具在提升信息收集效率、简化操作流程方面的优势。通过对比多种工具,分析其适用场景与实际应用逻辑,为一线旅游从业者提供高效、低成本的执行参考。
|
4月前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:外卖App
仓颉语言实战分享,教你如何用仓颉开发外卖App界面。内容包括页面布局、导航栏自定义、搜索框实现、列表模块构建等,附完整代码示例。轻松掌握Scroll、List等组件使用技巧,提升HarmonyOS应用开发能力。
|
4月前
|
人工智能 小程序 JavaScript
【一步步开发AI运动APP】十、微调优化内置运动分析器,灵活适配不同的应用场景
本文介绍了如何通过【一步步开发AI运动APP】系列博文,利用`ISportOptimizer`对内置运动分析器进行微调优化。相比小程序,APP框架(如uni-app)因技术差异,无法直接修改运动分析器参数,因此提供了统一的优化机制。开发者可通过`ISportOptimizer`获取和更新检测规则、动作样本等,灵活适应不同场景需求,如全民运动赛事的宽松模式或学生体测的严格模式。文中还提供了示例代码,展示如何对具体运动项目(如仰卧起坐)进行优化。需要注意的是,微调优化适用于标准动作的小范围调整,若动作变化过大(如花式跳绳),可期待后续自定义扩展功能。
|
4月前
|
IDE 开发工具 开发者
使用DevEcoStudio 开发、编译鸿蒙 NEXT_APP 以及使用中文插件
# 使用DevEcoStudio 开发、编译鸿蒙 NEXT_APP 以及使用中文插件 #鸿蒙开发工具 #DevEco Studio
314 1
|
4月前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:健身App
本期分享一个健身App首页的布局实现,顶部采用Stack容器实现重叠背景与偏移效果,列表部分使用List结合Scroll实现可滚动内容。代码结构清晰,适合学习HarmonyOS布局技巧。
|
4月前
|
容器
HarmonyOS NEXT仓颉开发语言实战案例:银行App
仓颉语言银行App项目分享,页面布局采用List容器,实现沉浸式体验与模块化设计。顶部资产模块结合Stack与Row布局,背景图与内容分离,代码清晰易懂;功能按钮部分通过负边距实现上移效果,圆角仅保留顶部;热门推荐使用header组件,结构更规范。整体代码风格与ArkTS相似,但细节更灵活,适合金融类应用开发。