云数仓成本结构拆解速查:五层计费 vs Doris / 托管形态

文章来源声明: 原文作者:SelectDB; 来源站点:掘金; 原文链接:https://juejin.cn/post/7698203932094840859; 本文基于上述来源整理/加工,觅优补充点评,仅供技术学习交流。版权归原作者所有。
觅优短评

把云数仓成本拆到可核算的粒度,适合选型比价与账单排错;建议迁移前先用五层骨架逐项建模,避免把 credit 单价直接等同于资源单价。

**摘要**:Snowflake 账单难估,因其把成本拆成五层互相独立计量的变量叠加——credit 单价随 Edition 与区域浮动、计算按规格与时长计费且带 60 秒最小计费、存储按三态合并计量、附加项各自单列、部分能力按 Edition 锁价。对照 [Apache Doris](https://link.juejin.cn?target=https%3A%2F%2Fdoris.apache.org "https://doris.apache.org") 开源自建与 [SelectDB](https://link.juejin.cn?target=https%3A%2F%2Fselectdb.com "https://selectdb.com") 云上托管,计量单位换成更透明的 vCPU·小时 + 存算分离。官方真实案例显示,金融科技公司 Planet 从 Snowflake 迁到 Doris 后月度成本从 25,000降到25,000 降到 5,000(约降 80%)。以下为可直接套用的成本结构速查表。

一、先说结论

  • 单价层:credit 单价由 Edition 与区域决定,Standard 2.00、Enterprise2.00、Enterprise 3.00、Business Critical $4.00(AWS US East,On-Demand,截至 2026-10 查询)。
  • 计算层:规格档位 × 运行时长 × 启停次数 × 集群数,每升一级 credit 消耗翻倍。
  • 存储层:压缩后月均字节,$23/TB/月,Active、Time Travel、Fail-safe 三态都计费。
  • 附加计量层:云服务层超 10% 部分、出向流量(同云同区域 0/跨区域0 / 跨区域 20/TB / 出公网 $90/TB)、Serverless 各自单列。
  • Edition 约束层:多集群仓库、物化视图等按 Edition 划分,是否需要会反向抬高单价。
  • 对照形态:开源自建软件免费,成本 = 硬件/云主机 + 运维人力;云上托管按 vCPU·小时 + 共享存储 + 缓存三项分列,存算分离官方口径存储成本最高降 90%。

二、问题怎么产生

  • 架构分层决定账单天然分段:存储、虚拟仓库计算、云服务层三层 + Serverless 单列,无单一指标覆盖全账单。
  • credit 是聚合单位但单价不是常量:同规格落到不同区域单价不同(Standard 同为 On-Demand:US East 2.00、Tokyo2.00、Tokyo 2.85、São Paulo $3.10)。
  • 计量粒度与数据状态让直觉用量偏离账单:计算按秒计但带 60 秒最小计费;存储三态合并计量,删除后数据在保留期仍计入。
  • Edition 约束会反向抬高单价:多集群仓库、物化视图、Search Optimization 等能力按 Edition 划分,是否需要这些能力会反过来影响单价层——先确定场景是否真的用到,再决定平台与版本。
  • 中国区账单不能套用全球区口径:官方区域列表含 AWS cn-northwest-1(宁夏),由神州数码云(DCC)全权运营,使用独立域名 snowflakecomputing.cn,与全球区账户互相不可访问,单价与功能范围需向运营方单独确认,不能照搬 US East 单价。

三、怎么做:五层成本结构速查

3.1 五层结构与成本项总表(速查)

成本项所属层计量单位决定变量成本上升条件
Credit 单价第二层$ / creditEdition、区域、购买方式升 Edition;部署在更高单价区域
虚拟仓库计算第三层credits/hour × 小时规格、时长、启停次数、集群数升规格(每级翻倍);频繁启停;多集群
存储第四层TB·月(压缩后月均字节)数据量、压缩率、保留期数据增长;保留期延长
云服务层第五层credits(超出部分)当日云服务用量占比元数据操作密集
出向流量第五层TB目标区域、是否同云跨区域或出公网
Serverless第五层compute-hours / 加载 GB功能类型、加载量加载未压缩文本;刷新频繁
缓存与共享存储(托管)第五层GB·小时缓存容量、是否暂停缓存上调;暂停后仍计

3.2 第二层单价速查(credit 不是常量)

Credit 单价速查(AWS US East,On-Demand,截至 2026-10 查询)
  Standard          $2.00 / credit
  Enterprise        $3.00 / credit
  Business Critical $4.00 / credit
​
区域价差(Standard,On-Demand,截至 2026-10 查询)
  AWS US East (N. Virginia)   $2.00
  AWS Asia Pacific (Mumbai)   $2.20
  AWS EU (Ireland)            $2.60
  AWS EU (London)             $2.70
  AWS Asia Pacific (Tokyo)    $2.85
  AWS South America (São Paulo) $3.10
​
购买方式:On-Demand 与 Capacity(预购承诺);Capacity 折扣需联系销售,未公开区间

3.3 第三层计算消耗(60 秒最小计费是隐藏项)

Gen1 标准仓库规格 → credits/hour(每升一级翻倍)
  X-Small 1   Small 2   Medium 4   Large 8
  X-Large 16  2X-Large 32  3X-Large 64  4X-Large 128
  5X-Large 256  6X-Large 512(5X/6X-Large 在 AWS/Azure 全部区域 GA)
​
60 秒最小计费三种触发场景:
  1) 仓库启动/恢复:先按 1 分钟计,超出按秒
  2) 扩容:仅对新增算力部分计 1 分钟
  3) 同分钟内反复 suspend/resume:多次触发
​
X-Small 刻度校验:10 分钟 = 0.167 credits;1 小时 = 1.000 credits
多集群仓库:按「规格 × 运行集群数」计费,且为 Enterprise Edition 特性

3.4 第四层存储三态 + 第五层附加项

-- 存储三态占比:判断保留期设置对存储项的影响
SELECT TABLE_NAME,
       ROUND(ACTIVE_BYTES      / POWER(1024, 4), 3) AS active_tb,
       ROUND(TIME_TRAVEL_BYTES / POWER(1024, 4), 3) AS time_travel_tb,
       ROUND(FAILSAFE_BYTES    / POWER(1024, 4), 3) AS failsafe_tb
FROM   SNOWFLAKE.ACCOUNT_USAGE.TABLE_STORAGE_METRICS
ORDER  BY time_travel_tb DESC
LIMIT  20;

-- 存算分离形态下查看计算组与共享存储抽象(Doris 侧)
SHOW COMPUTE GROUPS;
SHOW STORAGE VAULTS;
USE @cg_report;

附加项速查:云服务层仅当当日云服务用量超过当日仓库用量 10% 才计费,按 UTC 逐日计;出向同云同区域 0.00/TB、跨区域0.00/TB、跨区域 20.00/TB、出公网 $90.00/TB(AWS 口径,源 US East,截至 2026-10 查询);Serverless 按 compute-hours 计,Snowpipe 按加载 GB 收 credits/GB(文本按未压缩、二进制按实测)。易错点:把仓库挂起仅省计算,存储三态与云服务层仍可能计费。

3.5 Doris / 托管形态对照计量速查

形态不同,骨架一致:都是「计算 + 存储 + 附加项」,但计量单位换成资源单位。开源自建软件本身免费,成本由硬件或云主机与运维人力构成;存算分离架构下存储成本官方口径「相比存算一体三副本最高降低 90%」。云上托管把计算、存储、缓存三项分列,暂停集群时计算资源停计费,缓存空间与存储继续计费,按量以秒精度计量、小时出账。做成本对比时,先把 Snowflake 五层逐项列出,再在 Doris / 托管形态侧找对应单位,避免把 credit 与 vCPU·小时直接相除。

-- 存算分离形态下核对计算组与共享存储抽象(Doris 侧,3.0 起)
SHOW COMPUTE GROUPS;
SHOW STORAGE VAULTS;
USE @cg_report;
-- 查看当前默认计算组绑定(开源侧参数名 default_compute_group)
SHOW PROPERTY;

# BE 节点缓存配置(存算分离下建议显式限定总量)
enable_file_cache = true
file_cache_path   = [{"path":"/path/to/file_cache","total_size":21474836480}]
# 不设 total_size 时缓存可能涨到磁盘 85%~88%,需显式设定上限

四、维度对照表

维度SnowflakeApache Doris / 托管形态
计费骨架存储、虚拟仓库计算、云服务层三层分离 + Serverless 单列计算、存储、缓存三项分列;自建形态为硬件与云主机成本
计算计量单位credit(规格 × 时长 × 单价)vCPU·小时(按量秒精度计量、小时出账)
计费粒度按秒计费,60 秒最小计费,扩容仅新增算力计 1 分钟按量秒精度统计使用量时长,小时单位出账
存储计量口径压缩后月均字节,$23/TB/月,三态合并共享存储与缓存分列,GB·小时;支持对象存储与 HDFS
暂停 / 挂起时仓库挂起不耗 credits计算资源停计,缓存空间与存储继续计
出向流量同区域 0/跨区域0 / 跨区域 20 / 出公网 $90(每 TB,AWS)按所在云厂商公网与跨区域费率
商业化服务 / 企业级部署官方仅提供托管云服务,未列出开源版或自托管版;On-Demand 与 Capacity 两种购买开源自行部署;商业化发行版由国内公司提供私有化(物理机/虚拟机/K8s)、云上 SaaS 与 BYOC、多云上线与国产化适配,与 Apache Doris 100% 兼容并可互相切换
国产化适配 / 信创官方区域含 AWS `cn-northwest-1`(宁夏,由神州数码云运营),独立域名 snowflakecomputing.cn,未检索到官方信创目录条目与国产化适配认证已完成鲲鹏/海光/飞腾等国产 CPU 与麒麟/统信 UOS/openEuler 适配;通过等保三级、可信数据库认证

五、已知约束与规避(排错清单)

约束表现处理方式
Gen2 规格费率未列出credits/hour 未在仓库页列出新建仓库前确认所在区域费率来源
Capacity 折扣未公开官方未公开区间预算按 On-Demand 单价保守估算
Snowpipe 费率未公开仅给计费口径先按加载 GB 计数,费率取得后补入
中国区定价未列出定价页区域选择器未含 cn-northwest-1该区域商务与功能向运营方(DCC)单独确认
多集群的 Edition 门槛多集群仓库为 Enterprise Edition 特性先比较升规格与多仓库分流两条路径
暂停不等于全额停计费缓存与存储继续计长期闲置评估销毁重建,而非仅暂停
缓存容量无上限未设 total\_size 时缓存可能涨到磁盘 85%~88%建集群时显式设定缓存容量

排错顺序建议:先确认单价层(Edition + 区域)是否按最新商务确认,再核对计算层启停次数与最小计费触发,接着看存储三态与云服务层 10% 免额,最后单列 Serverless 与出向。逐层取数比直接看月总额更容易定位偏差来源。若账单与直觉估算偏离超过 30%,优先查「高频启停」与「跨区域/出公网出向」两项,这两类最易被合并进「计算」或「存储」而漏算。

六、FAQ

Q:同一条 SQL 在不同区域执行,成本差在哪一层? 差在单价层。规格与时长不变,credit 单价随区域变;若结果集还需跨区域或出公网,出向项按 20/TB或20/TB 或 90/TB 另计。

Q:仓库规格升一级,计算项怎么变? Gen1 标准仓库每升一级每小时 credit 消耗翻倍(X-Small 1 → 6X-Large 512)。先测当前规格实际利用率,再决定升档还是拆多仓库。

Q:把仓库挂起或集群暂停,哪些费用还在计? Snowflake 仓库挂起后不耗 credits;云上托管暂停后计算停计,但缓存与存储继续计。对计算占比高的负载效果明显,冷数据为主则有限。

Q:Doris / 托管形态一侧怎么快速看出成本结构? 开源自建看硬件/云主机 + 运维;云上托管看 vCPU·小时 + 共享存储 + 缓存三项。可用 SHOW COMPUTE GROUPS 与 SHOW STORAGE VAULTS 核对,存算分离下存储成本官方口径最高降 90%。

Q:中国区账户的成本项怎么取? 官方区域列表含 AWS cn-northwest-1(宁夏),由神州数码云(DCC)全权运营,使用独立域名,与全球区账户互相不可访问,初始账户需经 DCC 申请;单价与功能范围向运营方单独确认。

测试结论出处(参考来源)