tencent cloud

云函数

动态与公告
产品动态
产品公告
新手指引
产品简介
产品概述
相关概念
工作原理
产品优势
应用场景
相关产品
购买指南
计费概述
计费方式
计费项与计费方式
函数算力支持
免费额度
产品定价
计费示例
欠费与停服说明
快速入门
使用控制台创建一个事件函数
操作指南
配额管理
函数管理
Web 函数管理
日志管理
并发管理
触发器管理
函数 URL
自定义域名
版本管理
别名管理
权限管理
运行实例管理
插件管理
监控与告警管理
网络配置
层管理
执行配置
扩展存储管理
DNS 缓存配置
资源托管模式管理
近离线资源托管模式
工作流
触发器
触发器概述
触发器事件消息结构汇总
API 网关触发器
COS 触发器
CLS 触发器
定时触发器
CKafka 触发器
Apache Kafka 触发器
MQTT 触发器
触发器配置描述
MPS 触发器
CLB 触发器说明
云 API 触发器
开发指南
基本概念
测试云函数
环境变量
依赖安装
使用容器镜像
使用 Docker 安装依赖
错误类型与重试策略
死信队列
云函数接入数据库
自动化部署
云函数状态码
常见错误码解决方法
开发者工具
Serverless Web IDE
函数间调用 SDK
第三方工具
代码开发
Python
Node.js
Golang
PHP
Java
Custom Runtime
使用镜像部署函数
Web 框架部署
通过命令行完成框架部署
快速部署 Egg 框架
快速部署 Express 框架
快速部署 Flask 框架
快速部署 Koa 框架
快速部署 Laravel 框架
快速部署 Nestjs 框架
快速部署 Nextjs 框架
快速部署 Nuxtjs 框架
快速部署 Django 框架
实践教程
最佳实践概述
云产品联合解决方案
业务开发相关实践
实时音视频 TRTC
对象存储 COS
消息队列 CKafka
日志服务CLS
负载均衡 CLB
视频处理 MPS
内容分发网络 CDN
云数据仓库 PostgreSQL
云点播 VOD
短信 SMS
Elasticsearch Service
定时任务
视频处理
客户案例
腾讯在线教育
在线教育行业案例
游戏聊天系统
腾讯互娱国际(IEGG)
API 文档
History
Introduction
API Category
Making API Requests
Other APIs
Namespace APIs
Layer Management APIs
Async Event Management APIs
Trigger APIs
Function APIs
函数和层的状态说明
Data Types
Error Codes
SDK文档
常见问题
通用问题
Web 函数相关问题
计费相关问题
网络相关问题
日志相关问题
SCF 工具相关问题
事件处理相关问题
API 网关触发器相关问题
相关协议
Service Level Agreement
联系我们
词汇表
文档云函数实践教程Elasticsearch Service SCF + ES 快速构建搜索服务

SCF + ES 快速构建搜索服务

PDF
聚焦模式
字号
最后更新时间: 2024-12-02 21:14:29

搜索服务

搜索服务广泛的存在于我们身边,例如我们生活中用的百度、工作中用的 wiki 搜索、淘宝时用的商品搜索等。这些场景的数据具有数据量大、结构化、读多写少等特点,而传统的数据库的事务特性在搜索场景并没有很好的使用空间,并且在全文检索方面速度慢(如 like 语句)。因此,Elasticsearch 应运而生。
Elasticsearch 是一个广泛应用于全文搜索领域的开源搜索引擎,它可以快速地索引、搜索和分析海量的文本数据。腾讯云 ES 是基于 Elasticsearch 构建的高可用、可伸缩的云端托管 Elasticsearch 服务,对结构化和非结构化的数据都有良好的支持,同时还提供了简单易用的 RESTful API 和各种语言的客户端,方便快速搭建稳定的搜索服务。
本文将针对搜索场景,使用腾讯云 ES 官方文档作为语料,介绍如何使用腾讯云 ES+SCF 快速搭建搜索服务。

资源准备

只需要一个 ES 集群。在腾讯云购买一个 ES 集群,集群的规模根据搜索服务的 QPS 和存入的文档的数据量而定。具体可参考 集群规格和容量配置评估

部署搜索服务

使用腾讯云 SCF 部署搜索服务的前端界面和后台服务。
1. 云函数 > 函数服务 界面左上角首先选择您购买 ES 集群的地域。

2. 单击新建,创建一个函数服务,操作详情请参见创建函数
3. 函数创建完成后,单击函数名称进入函数详情页。
4. 函数配置页单击右上角的编辑,开启内网访问,并选择您创建 ES 所选的 VPC,然后单击保存


5. 单击 代码 zip 包 将示例文件下载到本地。
6. 函数代码页的提交方法中选择上传本地 zip 包,并选择刚下载的 zip 包,单击部署


7. 函数代码页修改代码。需要修改的文件有 index.pyindex.html
index.py 中的 es_endpoint 修改为您的 ES 集群的内网地址,填写格式如:http://10.0.3.14:9200
index.py 中的 es_password 修改为白金版 ES 密码,如果不是白金版则不修改。
index.html 中的 server_name修改为您创建的 SCF 函数的函数名称,默认为 myserver
注意:
样例默认使用 es_corpus_0126 作为索引名,请确保该索引没有业务在使用。如需修改,可在 index.py 中修改 es_index 变量。
8. 触发方式页单击添加触发方式,按下图添加 API 网关触发器,并启用集成响应,然后单击保存

9. 触发方式中查看函数的“访问路径”,单击此路径即可访问页面。

10. 上传 腾讯云 ES 官方文档 样例数据。单击搜索框上方的文字,自动导入数据。
11. 至此,一个简单的基于腾讯云 ES 的问答搜索服务后台已部署完成。

了解更多

停用词和用户词典导入

停用词不会被 ES 检索,用户词典在分词时将保留该词。在上面的案例中,我们导入了默认的 停用词库用户词典,您也可以在 ES 集群详情页的插件列表 > 更新词典导入自己的停用词和用户词典。

同义词配置

同义词配置需要在创建索引时指定,支持 Solr 和 WordNet 两种同义词格式,具体可参考 Solr synonyms 对格式的介绍。

帮助和支持

本页内容是否解决了您的问题?

填写满意度调查问卷,共创更好文档体验。

文档反馈