成本最高可降 40%!揭秘 DataWorks 资源组的 Serverless 进化之路
导读
在当今数据驱动的时代,高效、灵活地处理和分析海量数据成为企业数字化转型的关键。阿里云一站式智能大数据开发治理平台 DataWorks 具备强大的数据建模、数据集成、数据开发、数据分析和数据治理等功能,为企业提供了从数据接入到价值洞察的全链路解决方案,并不断在大数据开发治理领域推陈出新。其中,资源组的 Serverless 化,则标志着 DataWorks 在用户使用灵活度与成本效率提升到了新的高度,是 DataWorks 架构的重要演进。本文将深入揭秘 DataWorks 资源组的 Serverless 进化之路,探讨这一转变背后的技术逻辑、带来的变革以及对用户和行业的影响。
一、Serverless:云计算的新篇章
广义定义:Serverless 强调的是一种架构理念和服务模型,所谓的“无服务器”并不是“没有服务器”,而指构建和运行不需要服务器管理的应用程序概念。它描述了一种更细粒度的部署模型,其中将应用程序打包为一个或多个功能,上传到平台,然后执行、扩展和计费,以响应当时确切的需求。
—— CNCF WG-Serverless Whitepaper v1.0
Serverless 架构这种新的模式,意味着开发者可以更加专注于业务逻辑,而非基础设施的运维,从而极大地提高了开发效率和资源利用率。在费用方面,Serverless 通常采用按需付费模式,仅在代码实际运行时计费,进一步降低了成本。
二、DataWorks 资源组的挑战与战略选择
DataWorks 资源组属于 DataWorks 的基础服务,是管理和隔离计算资源的逻辑单位,为 DataWorks 上的各个功能模块如数据开发、数据集成和数据调度等提供计算资源,资源组的状态将影响到相关功能的稳定运行,资源组的调度,将影响任务或服务运行的效率。
旧版资源组根据支持的功能模块不同分为不同的类型,涉及公共数据集成资源组、公共调度资源组、独享数据集成资源组、独享调度资源组、独享数据服务资源组五类,对用户来说计费逻辑复杂,购买管理不统一,使用过程中学习成本较高体验较差,同时资源预分配模式导致资源利用率低、弹性伸缩能力有限、以及运维成本较高,用户需要根据预测的工作负载手动配置和调整资源,这不仅增加了资源规划的难度,也难以应对突发流量或作业的快速变化,影响了整体的处理效率和响应速度。
面对这些挑战,DataWorks 团队开始探索如何将 Serverless 的理念融合到资源组的管理中,依托于 ASI 统一资源调度架构,全面升级 DataWorks 的资源调度模型,旨在为用户提供一个灵活经济、安全高效的使用体验
三、资源组 Serverless 化的转型之旅
数据调度完全 Serverless 化带来使用和付费方式转变
资源组转为采用 Serverless 的架构,调度任务完全 Serverless 化后能够根据实际需求自动管理和分配计算资源,用户无需根据任务波动预先或临时调整资源的大小,平台能够根据任务负载动态调整资源,从而大幅降低空闲时间和资源浪费,将成本节省直接回馈给用户。Serverless 架构也带来了付费方式的转变,用户只需按实际使用的计算量付费,很大程度上无需预估或预留资源,极大地简化了成本管理和优化过程,单个场景计费案例下成本最高可减少 40%。
任务类型完全区分驱动调度效率和使用体验提升
将调度型任务和计算型任务完全区分开来,解决计算任务带来的资源消耗影响调度任务的资源问题,这种方式使得任务调度能力获得进一步的提升,相比原先公共资源组最大任务并发数提升了 4 倍。完全解决了数据集成任务调度和计算资源冲突问题,平台通过异步链路模式,彻底屏蔽集成任务调度资源损耗,提升客户使用体验。
统一资源配额 Quota 管理实现资源平滑扩缩和高效利用
当业务波动时需要进行资源扩缩容,原有基于 ECS 架构下,由于需要对涉及到的物理或虚拟机实例进行手动配置,导致可能会遇到服务中断或性能波动的问题。为了解决这一问题,升级到 Serverless 架构后,通过 Quota(资源配额)管理来控制资源使用,可以在不影响现有业务运行的情况下实现无缝的资源扩缩。同时这种机制下,扩缩容操作对用户是透明且无感的,能够极大程度的确保服务的连续性和稳定性。
同时,原有 ECS 架构下,会出现受限于单个 ECS 节点的资源上限和碎片化问题。Serverless 架构下通过统一资源配额 Quota 管理的方式,实现对资源进行更精细化的管理,可以精确到每个任务级别的资源分配:
最小任务资源管理为 0.25vCPU 的资源使用,相比原先最小 4Core8G 作为起始计算资源售卖,用户可以更加的充分灵活使用资源,资源利用更加高效;
避免了因 ECS 规格的单点资源限制导致的任务调度瓶颈或阻塞,同时也提高了整体系统的响应能力和资源利用率;
容器运行时技术保障安全隔离
在 Serverless 架构下,如何保障数据和任务的安全隔离是不可避免要面临的问题。DataWorks 通过采用如 runD 这样的容器运行时技术,使得每个任务都在独立的执行环境中运行,实现了资源、网络和环境的隔离。这种情况下,即使在同一租户内,不同任务间也无法互相干扰,减少了潜在的安全风险和数据泄露的可能性,相对于原有单租户内节点资源共享的资源组模型,安全性获得显著提升。这种任务级别的隔离机制是云原生安全实践的重要组成部分,为敏感应用和数据提供了更强的保护屏障。
四、Serverless 资源组的核心优势
通用型:不区分用途,DataWorks 任何能力都可以使用
付费形式灵活:支持按量、包年包月两种付费形式,其中可购买资源抵扣包抵扣按量计费
支持运行中扩缩容(即将上线):扩缩容时不影响已有任务的运行
支持扩缩容定时计划(即将上线):可根据业务运行规律,设置扩缩容计划,定时扩缩容,保障业务运行的同时最大限度减小开销
按需使用无浪费:用多少买多少,避免无效的资源限制,最小购买粒度为 1CU
高隔离性安全保障:属于用户的独享资源,网络控制也完全由用户做主,提升了安全性和隔离性
五、Serverless 资源组的快速使用与旧版迁移
目前 Serverless 资源组已经上线各大 Region,用户可登陆 DataWorks 控制台在资源组列表的独享资源组页签下进行创建和使用,详细指导步骤可参见新增和使用Serverless资源组。如果用户已使用 DataWorks 的旧版资源组,并计划切换为 Serverless 资源组,可在切换前评估各项已有任务的资源消耗情况,然后切换到足够承载所有任务的 Serverless 资源组。为了能够平滑迁移,可参考不同任务所需 CU 的评估示例、切换前后可能的影响以及从旧版资源组切换到 Serverless 资源组的操作指导来进行操作。
在此,DataWorks 推出 300CU*H 额度的资源抵扣包,DataWorks 新用户可首月免费试用,抵扣按量付费的资源组使用,欢迎体验。
评论