海量日志接入Serverless应用可降本70%以上

更新时间:2025-03-28 10:17:10

随着互联网业务的迅猛发展,日志数据量持续激增,传统日志处理方法面临成本高和扩展性差等困境。为了应对这一挑战,越来越多的企业开始转向更为先进的解决方案——阿里云Elasticsearch Serverless。本文我们将探讨在日志处理场景中,使用阿里云Elasticsearch Serverless相比自建ECS Elasticsearch集群的成本和性能优势,并展示如何通过Serverless架构实现超过70%的成本节约。

特性对比

传统方案:基于ECS自建Elasticsearch集群

  • 资源利用率低:在非高峰时段,可能会出现资源浪费。而在高峰期,可能出现资源不足的问题。

  • 维护成本高:除了硬件成本外,还需投入大量人力资源进行集群的日常运维,包括集群监控、数据备份、安全防护及版本升级等。

  • 扩展性不足:在面对突发流量或数据量激增时,通常需要手动调整集群规模,这不仅耗时,还存在一定的风险。

阿里云Elasticsearch Serverless方案

  • 按需付费:仅需为实际使用的资源支付费用,无需预先购买大量固定资源,从而有效降低了初期投入成本。

  • 自动扩缩容:根据业务需求自动调整计算与存储资源,以确保服务的稳定性,同时有效避免资源的浪费。

  • 免运维:阿里云负责底层基础设施的管理与维护,同时能够提供监控、备份实例服务。帮助您专注于业务逻辑的开发,无需担心复杂的运维事务。

场景模拟

本文将通过真实的日志业务数据,进行一天的日志写入场景模拟:

  • 集团内某应用在特定日期的业务曲线和压力曲线如下所示:(每日12:00~13:0022:00~23:00为高峰时段),写入用量为:1.2K~5.4K 数据级QPS的单次 Bulk 3MB写入,不涉及查询操作。

    image.png

  • 根据上述业务体量,若采用基于ECS的自建方案,按照CPU水位上限取70%以上条件下,采取选型规格 ECS:24 C48 G的规格和数据盘:2048 GiBESSD PL1(50000 IOPS) 云盘的方案,在此前提下,集群单小时价格 ECS为¥4.68、数据盘为¥4.3008(系统盘、LB等在此不做计入) 因此,6节点ES自建集群单日价格:24*6*(4.68+4.3008)=1293.2352

    若需对应其他规格,请自行计算费用比较。

    ESSD PL0承接以上写入吞吐有瓶颈,会导致自建集群在高压下写入队列堆积请求拒绝。吞吐上限见:块存储性能

    以下为PL1云盘的吞吐量监控:

    image

    当日自建ES所在某ECS负载如下:

    image.png

    现将同样的业务数据接入到Elasticsearch Serverless应用中,请求监控数据如下:

    image.png

    Serverless应用在202502090时前后写入计算资源增加是因为开启了数据整理功能(定期通过无损的Force Merge对索引进行整理,提升查询性能和优化存储空间,会带来额外的写入CU消耗)。

    单日价格结算为312.5778元,单日价格详细数据见本文下方表格。

产品优势

性能更加稳定

阿里云Serverless性能相比自建更加稳定

  • 相同QPS、吞吐下,自建ES的请求响应即使在低压时也存在上下波动、不稳定的情况。

  • 22:30写入压力到高峰时,自建ES RT上涨明显,而Serverless ES几乎不受影响。

  • 高压下自建集群出现请求失败情况,原因为写入线程池队列满集群拒绝新请求。

下图为客户端写入请求指标图:

image.png

按照需求规划

Serverless应用能够根据实际业务需求进行资源规划,以匹配使用曲线。

日志分析型集群的主要特征体现在索引主分片数量的变化上:

image.png

由上图可知:

  1. point 1可看出,在水位下降后,主分片数将保持一段时间的高水平。这是因为主分片数不会影响资源消耗,以便应对突发流量。经过一段时间后,主分片数将降至该时间段内可降至的最低值。

  2. point 2可看出,当水位高于当前已有的主分片数量时,如果处于可控范围内,将在一定时间后升高至该时间段判断所需的值。

  3. point 3可看出,若水位超出可控范围,将会加快分片数升高的速度。

名词

含义

名词

含义

预期主分片数

系统对当前写入水位做出的主分片建议数。

当前主分片数

当前正在写入的索引主分片数。

节省存储成本

存储数据的压缩率相比于自建方案显著提升,从而进一步节省了超过80%的存储成本。

image.png

如上图所示,每日数据量总额达百亿级。可见,该数据集在Serverless日志分析型集群总存储空间占比约为自建ES集群的六分之一。

成本显著降低

成本相比自建显著降低超过70%。

根据Serverless日志分析型应用的收费标准,场景模拟每小时收费CU统计如下:

说明

该场景测试未发起查询压力,Serverless应用将默认按照5 CU查询进行最低查询资源计费,其中,Serverless ES日志分析型集群的规格为:自适应。自建 ES 集群的规格为: 6*24 C 、48 G,收费标准为按需付费,详情请参见在售的实例规格族。以下价格计算中,读CU消耗为1.2087元/CU/时,例如:18:00-19:00计算小时价格为:1.2087*5=6.0435,写CU消耗为0.4544元/CU/时,存储消耗为0.00021元/GB/时,总小时价为单价*消耗数据之和,即读CU消耗+写CU消耗+存储消耗。单ECS小时价:4.68元/时,2T PL1数据盘:4.3008 元/时。

时段

Serverless ES日志分析型集群

自建 ES 集群

CU消耗

CU消耗

存储消耗

Serverless ES日志分析型集群小时价

自建ES集群小时价

时段

Serverless ES日志分析型集群

自建 ES 集群

CU消耗

CU消耗

存储消耗

Serverless ES日志分析型集群小时价

自建ES集群小时价

18:00-19:00

¥6.0435

¥7.2704

¥0.0067

¥13.3206

¥53.8848

19:00-20:00

¥6.0435

¥9.0880

¥0.0235

¥15.1550

¥53.8848

20:00-21:00

¥6.0435

¥10.2240

¥0.0428

¥16.3103

¥53.8848

21:00-22:00

¥6.0435

¥11.5872

¥0.0650

¥17.6957

¥53.8848

22:00-23:00

¥6.0435

¥12.7232

¥0.0900

¥18.8567

¥53.8848

23:00-24:00

¥6.0435

¥12.7232

¥0.1142

¥18.8809

¥53.8848

00:00-01:00

¥6.0435

¥8.6336

¥0.1327

¥14.8098

¥53.8848

01:00-02:00

¥6.0435

¥4.7712

¥0.1449

¥10.9596

¥53.8848

02:00-03:00

¥6.0435

¥3.4080

¥0.1535

¥9.6050

¥53.8848

03:00-04:00

¥6.0435

¥4.0896

¥0.1594

¥10.2925

¥53.8848

04:00-05:00

¥6.0435

¥2.7264

¥0.1649

¥8.9348

¥53.8848

05:00-06:00

¥6.0435

¥2.7264

¥0.1701

¥8.9400

¥53.8848

06:00-07:00

¥6.0435

¥3.1808

¥0.1758

¥9.4001

¥53.8848

07:00-08:00

¥6.0435

¥4.0896

¥0.1829

¥10.3160

¥53.8848

08:00-09:00

¥6.0435

¥5.4528

¥0.1924

¥11.6887

¥53.8848

09:00-10:00

¥6.0435

¥6.3616

¥0.2043

¥12.6094

¥53.8848

10:00-11:00

¥6.0435

¥6.8160

¥0.2175

¥13.0770

¥53.8848

11:00-12:00

¥6.0435

¥6.8160

¥0.2312

¥13.0907

¥53.8848

12:00-13:00

¥6.0435

¥10.2240

¥0.2483

¥16.5158

¥53.8848

13:00-14:00

¥6.0435

¥7.4976

¥0.2671

¥13.8082

¥53.8848

14:00-15:00

¥6.0435

¥5.6800

¥0.2800

¥12.0035

¥53.8848

15:00-16:00

¥6.0435

¥5.4528

¥0.2915

¥11.7878

¥53.8848

16:00-17:00

¥6.0435

¥5.6800

¥0.3031

¥12.0266

¥53.8848

17:00-18:00

¥6.0435

¥6.1344

¥0.3152

¥12.4931

¥53.8848

总计(元)

---

---

---

¥312.5778

¥1293.2352

通过对比可见,Serverless方案在成本上具有显著优势,1293.2352-312.5778=980.66 ,一天可以节省980.66成本相比自建显著降低。

等比大流量估算

上述内容为单日写入统计。在日常应用场景中,需要考虑长期数据存储,例如3天的热数据和14天的冷数据存储等。基于这一特点,Serverless的成本依然有较大的压缩空间。

如何开通Elasticsearch Serverless服务

Step 1:开通服务

第一次使用ES Serverless服务时,需要进行服务开通。

  1. 登录Elasticsearch Serverless服务控制台

  2. ES Serverless服务页面,单击立即开通

  3. 进入服务开通页面,选中服务协议,单击立即开通

Step 2:创建应用

  1. 进入创建Serverless应用的页面,选择创建实例的区域。

  2. 单击应用管理

  3. 进入应用管理页面,单击创建应用,配置应用的基本信息。

    (示例)本示例选择应用选型为检索通用型,其他参数保持默认或自定义。

  4. 配置应用的访问设置。

    1. (示例)本示例选择网络访问方式公网访问,在公网访问白名单中添加本地设备的IP地址,以便使用本地设备访问Serverless应用的Kibana。

      说明

      配置应用公网访问私网访问,请参见配置Serverless应用公网或私网访问

    2. 输入用户密码,登录Kibana时需要。

  5. 单击立即创建

您可以在应用管理页面查看已创建的应用列表。请等待应用状态变为运行中,这表示应用已成功创建。随后,您可以根据个人需求,尝试体验更多功能。

  • 本页导读
  • 特性对比
  • 场景模拟
  • 产品优势
  • 性能更加稳定
  • 按照需求规划
  • 节省存储成本
  • 成本显著降低
  • 等比大流量估算
  • 如何开通Elasticsearch Serverless服务
  • Step 1:开通服务
  • Step 2:创建应用