深度解读阿里云 Elasticsearch Serverless 服务如何实现超高性价比

本文涉及的产品
检索分析服务 Elasticsearch 版,2核4GB开发者规格 1个月
简介: 阿里云 Elasticsearch Serverless 商业化版本正式上线,在帮助用户快速构建数据检索与分析应用的同时,提供按实际资源用量付费的付费体验,与自建相比大幅降低成本,助力用户快速上云!

阿里云 Elasticsearch Serverless 正式版上线,基于云原生 Serverless 技术,致力于为用户打造更低成本、弹性灵活、开放兼容、开箱即用的云上 Elasticsearch 使用体验。Elasticsearch Serverless 服务提供按实际资源用量的付费体验,相较于自建 Elasticsearch 固定规格的付费方式,可以大幅降低使用成本,最低仅需1元/天。


立即开通>>



1.背景介绍

1.1 关于 Elasticsearch

Elasticsearch 是业内最主流的信息检索、分析引擎,DB-Engine 指数排行“全球热度No.7数据库,全球热度No.1检索引擎”,被广泛应用于日志观测、检索与分析(如:运维监控、APM等)、结构化/非结构化数据检索(如:全文、图片、语音等)、数据分析和可视化(如:安全/业务/交易数据等)、结构化信息查询(如:ERP/CRM等系统)、空间检索(LBS/地图/O2O)等场景。不论是开发者,还是企业客户,都可以在以上场景使用Elasticsearch 。阿里云检索分析服务 Elasticsearch 版是基于开源 Elasticsearch 构建的全托管云服务,100%兼容开源功能。不仅提供云上开箱即用的 Elasticsearch、Logstash、Kibana、Beats 在内的 Elastic Stack 生态组件,还与 Elastic 官方合作提供免费 X-Pack(白金版高级特性)商业插件,集成了安全、SQL、机器学习、告警、监控等高级特性。近几年阿里云检索分析服务 Elasticsearch 版积累了非常多的用户,也基于用户使用产品过程中遇到的问题,持续打造优化产品能力,帮助用户更好的体验产品。


1.2 什么是 Serverless ?

广义定义:Serverless强调的是一种架构理念和服务模型,所谓的“无服务器”并不是“没有服务器”,而指构建和运行不需要服务器管理的应用程序概念。它描述了一种更细粒度的部署模型,其中将应用程序打包为一个或多个功能,上传到平台,然后执行、扩展和计费,以响应当时确切的需求。

—— CNCF WG-Serverless Whitepaper v1.0


用户不需要进行服务器配置、维护和更新,也不需要根据业务本身的流量做容量规划,可以专注应用程序业务逻辑本身,将机器的运维、部署、扩缩等工作交给云厂商进行统一的运维和管理,以便更好的进行业务开发。所以 Serverless 架构本质上是将基础资源抽象成各种服务,然后以API接口的方式提供给用户调用。它主要包含三个特征:

  • 弹得快:自动弹性伸缩,资源与负载动态匹配
  • 开发效率高:资源解耦和服务化,无须关注底层资源,降低开发与运维复杂性
  • 成本低:按服务的使用量计费


1.3 Elasticsearch 面临的业务挑战

上图列举了用户在使用 Elasticsearch 过程中面临的常见挑战。第一个是流量波峰问题。不管是游戏行业还是电商行业,经常会因为大促、发版等带来蜂拥请求,此类突发读写流量,在业务规划之初较难预估,大部分客户的解决方案是发现流量变高或者集群受到影响后再去扩容,众所周知,无论是自建还是云上Elasticsearch 扩容,都会面临机器调度问题,此外,在数据搬迁过程中扩容时间非常慢,很难在短时间内完成资源扩缩,就会对业务的稳定性造成影响。


与波峰对应的是由于业务波谷的成本浪费,因为有高峰期业务流量,用户不得不按照高峰期的业务水位评估集群资源,大部分时间就会面临业务低谷期,导致大量资源冗余。从云上数据来看,目前用户整体资源存在大量冗余,可能不到20%的资源使用率,带来成本的大量浪费。


无论是个人开发者还是企业客户,无论是自建还是云上Elasticsearch ,成本都是核心考量因素,很多企业内部也在强调降本策略,在保障业务稳定性的同时,进一步优化服务器资源成本的诉求日益强烈。


此外,很多企业在使用 Elasticsearch 的过程中,偏向于使用检索业务场景,项目团队没有专属运维支撑,开发团队既要保障业务需求快速迭代,又要承接意外不断的高强度运维工作,人力投入大, 开发门槛高。


以上是众多企业用户,包括中小型企业用户,在使用Elasticsearch的过程中所遇到的业务挑战。


2. 阿里云 Elasticsearch Serverless 介绍

2.1 阿里云 Elasticsearch Serverless 概述

2017年,阿里云与 Elastic 开展开源战略合作,发布云上 PAAS 版本 Elasticsearch,规模化支撑万核云上用户,并基于开源及云上用户使用 Elasticsearch 过程中的痛点问题,持续优化产品能力,升级产品形态。


2020年,阿里云 Elasticsearch 团队基于云原生内核进行了深度优化,在大规模计算、高读写QPS等场景下,成本和性能稳定性有了大幅度提升。


2023年,基于云原生技术架构打造的 Elasticsearch Serverless 服务化产品正式商业化,兼容 Elasticsearch 原生 API 及生态组件,提供简单易用、弹性灵活、开箱即用的产品体验。用户无须管理集群资源及配置,即可实现负载与资源的动态匹配,在快速响应业务变化的同时,合理优化使用成本。


对比 PAAS 版本,Elasticsearch Serverless 服务正式版即买即用,无需感知部署环境下的实际机器资源,应用可以实现自动扩缩容,只需为实际占用的资源付费,实现成本优化。


2.2 阿里云 Elasticsearch Serverless 核心能力

2.2.1 自动弹性扩缩

传统意义的弹性扩缩,是指当现有集群的资源无法承载压力时,通过手动调整集群的规模、分配相对应的资源;当集群负载较低时,系统可以尽量降低集群的资源配置从而减少闲置资源的浪费,以进一步节约成本开销。但实际上往往因为业务流量无法预测而无法及时扩容,另外在业务高峰期频繁的扩容可能会影响业务稳定性,另一方面,缩容策略通常相对保守,很难控制闲置资源的产生,所以传统扩缩容实施起来是有困难的。


阿里云 Elasticsearch Serverless 自动弹性扩缩,在用户侧的表现,取消了ES集群本身的容量规划过程,不再需要手动分配资源,不需要为服务的运行指定需要的资源(比如使用几台机器、多大的带宽、多大的磁盘等)平台会根据业务流量波动,自动调度决定资源的增加或缩减,秒级实现弹性扩缩,过程平滑,业务请求无需中断。


现阶段仍然需要用户指定固定的应用扩容范围,未来将进一步支持应用资源与配额的同时自动扩缩,理想情况是通过某些学习算法来进行完全自动的自适应分配作为 Serverless 架构带来的核心技术红利之一的弹性伸缩能力,在一定程度上也是提升资源利用率,朝着绿色计算的方向不断前进的过程。



2.2.2 低成本按量付费

Elasticsearch Serverless 打破了传统按规格计费方式,采用全新计费方式,根据计算资源和存储空间的实际使用量计费。


使用 Elasticsearch Serverless 服务,用户只需为业务负载实际消耗的资源支付费用。系统对计算资源用量和存储空间用量分别收费,其中计算资源用量由写入计算资源用量和查询计算资源用量组成。即单个Elasticsearch Serverles应用费用=写入计算资源费用+查询计算资源费用+存储空间费用。


Elasticsearch Serverless 服务默认使用按量付费的方式,按量付费是一种先使用后付费的计费方式,费用按每小时出账。


计费案例

某用户在小型网站建站场景使用Elasticsearch Serverless服务提供信息检索能力,Serverless应用一天内经历了8个小时的业务高峰,计算资源每小时平均使用了1.2 CU,最高峰值可达到2CU;其余时间写入和查询计算资源每小时均各使用了 0.1 CU,存储空间使用量始终为1 GB。


在此场景下,Serverless 一天总费用 = 计算资源费用+存储费用 = 5.1384 元(1.2 × 8 × 0.3975 + 0.2 × 16 × 0.3975 +1 × 0.0021 × 24); 对应业务流量,需自建ES 2核4GiB单节点实例才可完成任务,ECS自建一天费用= 9.6元(2核4GiB规格:0.407698/时售价)。使用Serverless成本节省高达50%!


2.2.3 简单免运维

对比自建 Elasticsearch,从资源准备到研发部署再到运维,Elasticsearch Serverless 版本可以快速交付业务,简化维护,降低人力资源投入。真正做到用户无感知、业务无影响、服务持续可用。


2.2.4 开放兼容

阿里云 Elasticsearch Serverless 支持 Elasticsearch 原生 API 和 Kibana 等生态组件对接,保留用户原有使用习惯,支持快速迁移至 Serverless 版本,助力业务快速上云

2.3 阿里云 Elasticsearch Serverless 架构解读

阿里云 Elasticsearch Serverless 整体架构主要由应用层、路由层、计算层、存储层、资源调度系统、基础运维系统构成。应用层完全开放给用户,支持 Elasticsearch Client、Kibana、Custom UI 等生态组件对接,兼容 Logstash 等上下游组件。路由层通过统一网关 Serverless Proxy ,主要承载鉴权、路由、流控等工作,提供整体服务的流量入口和访问鉴权控制。


Elasticsearch Serverless 服务的基础服务单元是应用,用户可以通过创建应用基于原生 Elasticsearch API或 Kibana 创建索引和读写数据。而底层的 Elasticsearch 集群资源,会由 Serverless 平台的资源调度系统进行集群和应用的关联分配、并进行相应的配额管控、弹伸控制等。而 Serverless 为用户提供了免运维能力的背后,也依赖着 Serverless 底层的基础运维系统,对底层 Elasticsearch 集群进行统一的生命周期管理、运维监控和升级优化等工作。

2.4 阿里云 Elasticsearch Serverless 演进方向

在弹性方面,Serverless 应用必须具有良好的可扩展性,以应对不断增长的数据量和请求量。目前 Serverless 应用计算资源上限2CU,也会根据计算资源上限有相关使用限制。后续会持续上线支持更高的弹性上限,即将上线的标准版支持最高24CU,并基于存储计算解耦架构,实现扩缩无须数据搬迁,提供高效资源调度、和更高的弹性效率保证


高可用性要求应用必须在任何时候都可以对外提供服务,确保高可用性,因此阿里云Elasticsearch Serverless会持续通过自研引擎特性,提供多维度的资源监控和限流、熔断能力,保证企业场景的服务稳定运行。同时,云上数据安全仍然是各个企业用户重点关注的话题,因此也会持续加固应用访问和数据的安全性,以提供更高的数据安全保证。


在易用性方面,Elasticsearch作为一个通用搜索引擎和数据分析工具,在搜索、信息检索、日志分析、全观测,安全等各种不同场景下,在后端部署拓扑结构、容量和资源大小配置、应用配置、数据类型与管理等方面都有不同,Serverless 服务应该为用户提供对应的场景选择,并根据最佳实践,配置场景对应所需的底层配置和管理。


在提供成熟 Elasticsearch Serverless 服务的同时,对于用于企业搜索、日志分析、全观测性、安全的场景,类似于像采集模块的Fleet集中管理能力、机器学习节点、数据处理管道 Logstash、APM 等,也应进一步提供 Serverless 模式,并且能够在界面上完成 Serverless 应用的端到端的配置,从而提供更多对场景化方案的延续。



3. 快速入门


点此查看视频教程 >>


3.1 创建应用

控制台顶部菜单栏选择地域-杭州


在左侧导航栏单击Elasticsearch Serverless服务


进入 Elasticsearch Serverless控制台,在左侧导航栏单击应用管理


在应用管理页单击创建应用


在创建应用面板,输入应用相关信息;包括应用名称、网络访问方式、公网访问白名单、用户密码等


单击创建按钮后,应用进入「创建中」状态,稍作等待直到应用状态变为「运行中」


单击应用名称进入应用详情页


在应用详情页查看应用基本信息和访问配置信息


3.2 使用 Kibana 创建索引并读写数据

单击控制台「访问kibana」按钮进入 Kibana 页面


在登录页输入用户名密码


在 Kibana 控制台选择 Dev Tools 进入 Console 控制台


通过示例代码创建一个名为 product_info 的索引,索引中包含 productName、annual_rate 和 describe 三个字段


返回结果显示索引创建成功


通过示例代码在索引中创建文档并插入数据


在索引中搜索数据


3.3 查看应用和索引监控数据

返回 Elasticsearch Serverless 控制台,进入监控中心页


刷新并查看应用维度和索引维度各项指标,快速了解应用和索引的读写资源消耗、存储用量情况


3.4 查看应用配额

在配额管理页,查看当前应用资源配额以及服务限制






相关实践学习
使用阿里云Elasticsearch体验信息检索加速
通过创建登录阿里云Elasticsearch集群,使用DataWorks将MySQL数据同步至Elasticsearch,体验多条件检索效果,简单展示数据同步和信息检索加速的过程和操作。
ElasticSearch 入门精讲
ElasticSearch是一个开源的、基于Lucene的、分布式、高扩展、高实时的搜索与数据分析引擎。根据DB-Engines的排名显示,Elasticsearch是最受欢迎的企业搜索引擎,其次是Apache Solr(也是基于Lucene)。 ElasticSearch的实现原理主要分为以下几个步骤: 用户将数据提交到Elastic Search 数据库中 通过分词控制器去将对应的语句分词,将其权重和分词结果一并存入数据 当用户搜索数据时候,再根据权重将结果排名、打分 将返回结果呈现给用户 Elasticsearch可以用于搜索各种文档。它提供可扩展的搜索,具有接近实时的搜索,并支持多租户。
相关文章
|
1月前
|
自然语言处理 大数据 应用服务中间件
大数据-172 Elasticsearch 索引操作 与 IK 分词器 自定义停用词 Nginx 服务
大数据-172 Elasticsearch 索引操作 与 IK 分词器 自定义停用词 Nginx 服务
61 5
|
2月前
|
人工智能 自然语言处理 Serverless
阿里云函数计算 x NVIDIA 加速企业 AI 应用落地
阿里云函数计算与 NVIDIA TensorRT/TensorRT-LLM 展开合作,通过结合阿里云的无缝计算体验和 NVIDIA 的高性能推理库,开发者能够以更低的成本、更高的效率完成复杂的 AI 任务,加速技术落地和应用创新。
149 13
|
22天前
|
存储 人工智能 自然语言处理
Elasticsearch Inference API增加对阿里云AI的支持
本文将介绍如何在 Elasticsearch 中设置和使用阿里云的文本生成、重排序、稀疏向量和稠密向量服务,提升搜索相关性。
65 14
Elasticsearch Inference API增加对阿里云AI的支持
|
1月前
|
存储 运维 监控
Elasticsearch Serverless 高性价比智能日志分析关键技术解读
本文解析了Elasticsearch Serverless在智能日志分析领域的关键技术、优势及应用价值。
Elasticsearch Serverless 高性价比智能日志分析关键技术解读
|
1月前
|
JSON Java 网络架构
elasticsearch学习四:使用springboot整合 rest 进行搭建elasticsearch服务
这篇文章介绍了如何使用Spring Boot整合REST方式来搭建和操作Elasticsearch服务。
121 4
elasticsearch学习四:使用springboot整合 rest 进行搭建elasticsearch服务
|
29天前
|
人工智能 弹性计算 运维
触手可及:阿里云函数计算助力AI大模型的评测
阿里云推出的面向AI服务器的功能计算(Functional Computing, FC),专为AI应用提供弹性计算资源。该服务支持无服务器部署、自动资源管理和多语言支持,极大简化了AI应用的开发和维护。本文全面评测了FC for AI Server的功能特性、使用体验和成本效益,展示了其在高效部署、成本控制和安全性方面的优势,并通过具体应用案例和改进建议,展望了其未来发展方向。
126 4
|
2月前
|
SQL 分布式计算 Serverless
阿里云 EMR Serverless Spark 版正式开启商业化
阿里云 EMR Serverless Spark 版正式开启商业化,内置 Fusion Engine,100% 兼容开源 Spark 编程接口,相比于开源 Spark 性能提升300%;提供 Notebook 及 SQL 开发、调试、发布、调度、监控诊断等一站式数据开发体验!
147 3
阿里云 EMR Serverless Spark 版正式开启商业化
|
1月前
|
自然语言处理 Java Maven
elasticsearch学习二:使用springboot整合TransportClient 进行搭建elasticsearch服务
这篇博客介绍了如何使用Spring Boot整合TransportClient搭建Elasticsearch服务,包括项目创建、Maven依赖、业务代码和测试示例。
95 0
elasticsearch学习二:使用springboot整合TransportClient 进行搭建elasticsearch服务
|
2月前
|
人工智能 运维 大数据
阿里云“触手可及,函数计算玩转 AI 大模型”解决方案评测报告
阿里云“触手可及,函数计算玩转 AI 大模型”解决方案评测报告
95 2
|
8天前
|
存储 安全 数据管理
如何在 Rocky Linux 8 上安装和配置 Elasticsearch
本文详细介绍了在 Rocky Linux 8 上安装和配置 Elasticsearch 的步骤,包括添加仓库、安装 Elasticsearch、配置文件修改、设置内存和文件描述符、启动和验证 Elasticsearch,以及常见问题的解决方法。通过这些步骤,你可以快速搭建起这个强大的分布式搜索和分析引擎。
21 5

相关产品

  • 检索分析服务 Elasticsearch版