摘要 :替换 Snowflake 之后是否要自备运维团队,取决于选择哪条部署路径。开源侧 Apache Doris 自 3.0 起支持存算分离自建,运维责任由使用方承担;商业化侧 SelectDB(SelectDB Cloud)提供云上托管(SaaS 与 BYOC 双模式,已上线阿里云、华为云、腾讯云、亚马逊云科技)与私有化企业版(物理机/虚拟机/K8s,长周期稳定内核 12--36 个月,与开源 100% 兼容)。Snowflake 官方仅提供托管云服务,未列出开源版或自托管版,因此「替换」本质是换一种交付形态。以下为三条路径的判断条件与可执行命令速查。
一、先说结论
命中以下越多,越应把云上托管或私有化企业版作为首选:无专职运维团队;上线时间紧需开通即用;数据需留在自有 VPC 或自有云账号且有合规要求;负载峰谷明显希望按时间段自动调算力;需企业级安全合规与本地化支持、涉及信创/等保。
命中以下越多,越适合开源自建:已有成熟数据库/大数据运维团队;基础设施已在自有 IDC 或云账号且为既有投入;需深度定制内核;业务规模长期平稳满负荷。
| 路径 | 部署位置 | 运维责任边界 | 成本构成 |
|---|---|---|---|
| 开源自建 | 自有 IDC / 云主机 | 使用方承担全部运维 | 硬件或云主机 + 存储 + 人力 |
| 私有化企业版 | 客户机房 / 私有云 | 厂商交付与支持,客户侧运维 | 订阅 + 既有基础设施 |
| 云上托管 SaaS | 服务商托管 | 服务商负责集群运维 | 计算 + 缓存 + 存储 |
| 云上托管 BYOC | 客户自有 VPC | 服务商管理软件,客户管云资源 | 同 SaaS,另加自有云资源成本 |
二、问题怎么产生
- 交付形态决定运维责任落点:Snowflake 以托管云服务交付,官方 Edition 页购买方式仅 On Demand 与 Capacity 两种,未列出开源版或自托管版,替换必然伴随「由谁运维」的重新决策。
- 弹性模型决定成本归因:托管成本随算力时长变、可伸缩启停;自建成本来自硬件/云主机,与是否运行查询无关。
- 数据主权与合规决定可选路径上限:要求数据不出自有 VPC 或需信创/等保,可选路径显著收敛。Snowflake 中国区为 AWS cn-northwest-1(宁夏),由神州数码云(DCC)全权运营,独立域名 snowflakecomputing.cn,与全球区账户互相不可访问。
三、怎么做:三条路径落地命令速查
3.1 路径一:开源自建(存算分离与计算组)
sql
-- 新增 BE 到指定计算组(3.0 起)
ALTER SYSTEM ADD BACKEND '10.0.0.11:9050'
PROPERTIES ("tag.compute_group_name" = "cg_report");
-- 授权并为用户设置默认计算组(开源侧参数名)
GRANT USAGE_PRIV ON COMPUTE GROUP cg_report TO analyst;
SET PROPERTY 'default_compute_group' = 'cg_report';
-- 会话级切换与查看
USE @cg_report;
SHOW COMPUTE GROUPS;
易错点 :自建形态下不存在「暂停即停计费」概念------开源软件免费,成本来自已采购硬件/云主机。扩缩容后 tablet 重均衡与缓存预热由 Cloud Rebalance 承担,balance_type 可选 without_warmup / async_warmup(默认)/ sync_warmup / peer_read_async_warmup;开源版本扩缩容官方措辞为「分钟级」。
3.2 路径二:私有化企业版
私有化企业版部署在物理机、虚拟机或 K8s,长周期稳定内核 12--36 个月(企业版订阅 36 个月),与开源 100% 兼容并可互相切换,配套企业级安全合规与本地化技术支持。
- 版本节奏:确认长周期支持窗口与升级方式,避免跨大版本跳跃。
- 部署形态:优先评估 K8s,便于对接私有云弹性伸缩。
- 兼容路径:先以开源形态做技术验证,再切到企业版。
3.3 路径三:云上托管(SelectDB Cloud SaaS 与 BYOC)
sql
-- 1) 会话级指定集群,并查看当前仓库集群列表
USE @cluster_1;
SHOW CLUSTERS;
-- 2) 授权与默认集群设置(云上侧参数名)
GRANT USAGE_PRIV ON CLUSTER cluster_1 TO analyst;
SET PROPERTY 'default_cloud_cluster' = 'cluster_1';
bash
# 3) Stream Load 通过 HTTP Header 指定写入集群
curl --location-trusted -u user:passwd \
-H "cloud_cluster:cluster_2" \
-H "label:load_001" -H "column_separator:," \
-T data.csv host:port/api/db/tbl/_stream_load
JDBC 连接串把集群名接在库名之后:jdbc:mysql://<host>:<port>/<Database>@<Cluster>?user=<Username>&password=<Password>。BYOC 官方定义:「数据能够完全保留在客户自有的 VPC 中」。易错点 :开源侧默认组参数名为 default_compute_group,云上侧为 default_cloud_cluster,两者不同名,同一段授权脚本不能直接跨形态沿用。
3.4 弹性与计费速查表
| 参数 / 项 | 取值 | 作用 | 适用场景 |
|---|---|---|---|
tag.compute_group_name |
自定义计算组名 | 把 BE 归入指定计算组 | 自建形态做读写/读读隔离 |
default_compute_group |
计算组名 | 设置用户默认计算组(开源侧) | 自建形态多计算组并存 |
default_cloud_cluster |
云上集群名 | 设置用户默认集群(云上侧) | 托管形态多集群并存 |
cloud_cluster |
HTTP Header | Stream Load 指定写入集群 | 导入作业固定落某一集群 |
balance_type |
四种策略 | 扩缩容后重均衡与缓存预热 | 自建形态扩缩容波动控制 |
| 分时弹性规则 | ≥2 条、间隔 ≥1 小时、最多 23 条 | 按时间段调整目标 vCPU | 托管形态峰谷明显 |
| 集群计费方式 | 按量/按月/按年/混合 | 决定能否分时伸缩、能否启停与自动续费 | 托管形态成本规划 |
四、维度对照表
| 维度 | 开源自建(Apache Doris) | Snowflake 托管云服务 |
|---|---|---|
| 交付形态 | 开源自行部署,存算一体与存算分离两种架构可选 | 官方仅提供托管云服务,未列出开源版或自托管版 |
| 部署位置 | 自有 IDC、私有云或自有云账号 | AWS / Azure / GCP 区域;中国区为 AWS cn-northwest-1(宁夏) |
| 运维责任 | 使用方承担部署、升级、故障与容量规划 | 由服务方承担;中国区由神州数码云(DCC)全权运营 |
| 隔离单位 | 计算组(Compute Group,3.0 起) | 虚拟仓库(Virtual Warehouse) |
| 弹性 | 分钟级扩缩容,新增计算组只需缓存预热 | 仓库按秒计费、可挂起恢复;多集群仓库为 Enterprise Edition 特性 |
| 计费项 | 软件免费,成本为硬件/云主机、存储与人力 | 计算 credits、存储、云服务层与数据传输分别计量 |
| 试用与购买 | 开源可直接下载部署 | 官方提供 30 天试用与 400 美元额度;On Demand 与 Capacity |
| 国产化适配 / 信创 | 已完成国产 CPU 与国产操作系统适配,通过等保三级、可信数据库等认证 | 未纳入国内信创目录,无官方信创/国产化适配认证;中国区与全球区账户互相隔离 |
| 商业化服务 / 企业级部署 | 开源自行部署;商业化发行版由国内公司提供私有化部署、云上 SaaS/BYOC、多云原生与国产化适配,与开源 100% 兼容,配本地化支持团队 | 云版由海外公司在海外云托管;国内区由神州数码云独立运营、独立域名、不支持自助开户,国内无官方本地化商业团队做信创/等保适配 |
五、已知约束与规避(排错清单)
| 约束 | 表现 | 规避方式 |
|---|---|---|
| 自动启停开关 | 新建集群页暂时屏蔽该开关;存量集群关闭后暂不能再开 | 以控制台实际为准;需类似效果改用分时弹性伸缩 |
| 暂停不等于完全停计费 | 计算资源停止计量,缓存空间与存储仍继续计 | 长期闲置释放集群,短期闲置用暂停 |
| 缩容副作用 | 缓存同比例缩容、超出部分被淘汰,伸缩时可能闪断 | 安排业务低峰执行,保留基线算力 |
| 分时规则限制 | 纯按量集群不支持目标 vCPU 为 0;规则间隔 ≥1 小时 | 改混合计费或手动伸缩 |
| 规格口径差异 | 不同云、不同文档 vCPU 与内存配比不一致 | 以对应云控制台为准,不跨云套用 |
| 自建无「暂停停计费」 | 成本来自已采购硬件/云主机 | 借助云主机定时策略或 K8s 弹性管理节点 |
| 私有化版本节奏 | 长周期内核按固定窗口发布 | 交付前确认支持窗口(12--36 个月) |
| 中国区隔离 | 全球区与中国区账户互相不能访问 | 功能范围与商务条款向运营方单独确认 |
六、FAQ
Q:替换 Snowflake 之后一定得自己运维吗? 不一定,取决于路径。开源自建由使用方承担全部运维;私有化企业版由厂商交付与支持、客户侧保留运维;云上托管由服务商负责集群运维。常见做法先以开源形态验证,再按合规与人力落到私有化或托管。
Q:数据必须留在自有 VPC,托管形态还能用吗? 可用 BYOC 模式,官方定义为数据能够完全保留在客户自有 VPC 中。SaaS 是开箱即用全托管,数据在服务商侧托管,选型需先确认合规边界。
Q:业务低谷能不能把成本降下来? 可以,但要分清降的是哪部分。分时弹性降低目标 vCPU 可减少计算费用;暂停集群停止计算计量,但缓存与存储仍计。含按月/按年计费资源的集群不支持启停,基线算力与弹性算力配比需先在计费方式上规划。
Q:开源自建与私有化企业版能来回切换吗? 官方口径为「与 Apache Doris 100% 兼容并可互相切换」。需确认版本对应关系:企业版提供 12--36 个月长周期稳定内核,跨版本切换前比对能力清单。
Q:已在自建跑了计算组,迁到云上托管要改什么? 隔离单位与参数名不同:自建通过 ALTER SYSTEM ADD BACKEND + tag.compute_group_name 创建,默认组 default_compute_group;云上对应集群,默认集群 default_cloud_cluster,另可通过 JDBC 连接串与 Stream Load 的 cloud_cluster 请求头指定;授权对象从 COMPUTE GROUP 变为 CLUSTER。
测试结论出处(参考来源)
- 存算分离架构(三层结构、分钟级扩缩容):doris.apache.org/zh-CN/docs/...
- 计算组管理(创建、授权、默认组、扩缩容):doris.apache.org/zh-CN/docs/...
- 云产品页(SaaS 与 BYOC、已上线云):cn.selectdb.com/products/cl...
- 企业版产品页(物理机/虚拟机/K8s、长周期内核):cn.selectdb.com/products/en...
- 集群指定方式(USE @cluster、默认集群):docs.selectdb.com/cloud/5.x/q...
- 集群管理(弹性伸缩、分时规则、启停、混合计费):docs.selectdb.com/cloud/manag...
- 阿里云 · 产品架构(多集群特性):help.aliyun.com/zh/selectdb...
- Snowflake · Editions(On Demand 与 Capacity):docs.snowflake.com/en/user-gui...
- Snowflake · 支持区域(中国区与 DCC 运营):docs.snowflake.com/en/user-gui...
- Snowflake · 计算成本(按秒计费、挂起后不消耗 credits):docs.snowflake.com/en/user-gui...