计算集群(VCluster)

计算集群(VCluster)是 Lakehouse 的弹性计算资源单元,为 SQL 查询、ETL 任务、流式分析提供 CPU 和内存资源。存储与计算完全分离——数据存储在对象存储中,计算集群只负责计算,多个集群可以同时访问同一份数据,互不干扰。

类比:计算集群像"按需租用的计算引擎"——需要时启动,用完即停,按实际使用时长计费。这与传统数据库不同:传统数据库的计算和存储绑定在同一台机器上,扩缩容需要迁移数据;Lakehouse 的计算集群可以随时创建、调整规格、暂停,不影响任何数据。

集群类型

类型适用场景特点
通用型(GENERAL)ETL 数据加工、离线批处理作业共享资源,公平调度,支持弹性伸缩
分析型(ANALYTICS)BI 查询、即席分析、高并发查询多实例自动扩缩容,支持结果缓存加速
同步型(INTEGRATION)数据同步任务(离线/实时)专为集成任务优化,多个任务共用一个集群

选型建议

场景推荐类型原因
周期性 ETL 任务通用型共享资源,成本低
BI 报表/Ad-hoc 查询分析型多实例并发,结果缓存
数据同步任务同步型专为集成任务优化
Dynamic Table 刷新通用型(低频率大数据量)或分析型(高频率小数据量)根据刷新频率和数据量选择

核心机制

CRU(Compute Resource Unit):Lakehouse 对计算资源的抽象单位,屏蔽了不同云平台、CPU 架构的差异。1 CRU = 1 小时的计算资源消耗。

自动启停:集群可以在空闲时自动暂停(停止计费),有新任务提交时自动启动。推荐配置:

  • ETL 任务集群:自动停止时间设为 60 秒,尽快释放资源
  • BI 查询集群:自动停止时间设为 30 分钟以上,利用缓存加速查询

横向扩容(仅分析型):当并发查询超过单实例处理能力时,自动启动额外副本分担负载,查询完成后自动缩回。

快速操作

-- 创建通用型计算集群(1 CRU) CREATE VCLUSTER my_gp_cluster VCLUSTER_SIZE = 1 VCLUSTER_TYPE = GENERAL AUTO_SUSPEND_IN_SECOND = 60; -- 创建分析型计算集群(2 CRU,最多 2 个实例) CREATE VCLUSTER my_ap_cluster VCLUSTER_SIZE = 2 VCLUSTER_TYPE = ANALYTICS MIN_REPLICAS = 1 MAX_REPLICAS = 2 AUTO_SUSPEND_IN_SECOND = 1800; -- 调整规格 ALTER VCLUSTER my_gp_cluster SET VCLUSTER_SIZE = 4; -- 切换当前会话使用的集群 USE VCLUSTER my_gp_cluster; -- 暂停集群(停止计费) ALTER VCLUSTER my_gp_cluster SUSPEND; -- 查看当前工作空间的所有集群 SHOW VCLUSTERS;

成本影响

计算成本

  • 按 CRU × 小时计费,暂停时不产生费用
  • 运行不足 1 分钟按 1 分钟计费
  • 自动停止时间小于 1 分钟可能导致频繁启停,反而增加费用

存储成本

  • 计算集群本身不产生存储费用,数据存储在对象存储中
  • 分析型集群的 PRELOAD_TABLES 会占用本地 SSD 缓存空间(临时存储)

生命周期管理

创建集群 → 自动启动 → 执行任务 → 空闲自动暂停 → 调整规格/删除 ↓ ↓ ↓ ↓ ↓ 指定类型 新任务唤醒 消耗 CRU 停止计费 需先停止集群

最佳实践

  1. 负载隔离:ETL 任务和 BI 查询使用不同集群,避免资源争抢
  2. 合理规格:从小规格开始测试,逐步调整到满足 SLA 的最小规格
  3. 自动启停:ETL 集群自动停止设为 60 秒,BI 集群设为 30 分钟以上
  4. 大作业隔离:大作业和小作业使用不同集群,避免大作业占用资源导致小作业排队

相关文档

联系我们
预约咨询
微信咨询
电话咨询