20刀好兄弟PolarDB:论数据库该卖什么价?

昨天一篇中标新闻引起关注与热议:《IT 行业烂了。。。1610 万大单。。。290 万(中)。。。维保 0.01 元。。。PolarDB 单价 130 元》。刚看到这个标题时,我也没特别惊讶,因为云上 PolarDB 数据库的单价我是非常清楚的,每vCPU·每月的价格在 ¥250 - ¥400,考虑到大客可以干到两三折的折扣也就是 50 ~ 120 块钱,“单价” 130 ¥ 并不算是什么离谱的报价数字。

所以当我看到 PolarDB 130块单价计费单位是 ”节点“ 时,绷不住了。这个“单价”指的不是云上常用的 ”每vCPU·包月“ 单价,而是线下私有化部署数据库部署,每个物理机节点的许可证单价,这就挺离谱。

PolarDB V2.0 不是什么魔改换皮的野鸡数据库,也算是正儿八经通过两次国测的国产信创数据库。这样一门Oracle能卖上亿的生意,现在卖出了总价两千块的白菜价。这让几万块一个节点的国产数据库友商们情何以堪?国内 IT 已经卷到这个阶段了吗?

今天我们就来聊一聊,数据库到底应该卖什么价?

商业数据库卖多少钱?

数据库管理系统软件,曾经(现在依然)是一门非常有利可图的生意。

作为商业数据库软件的标杆,Oracle 数据库的许可证授权 ,以常规买 Enterprise + RAC (47500 $ / 4vCPU + 23000 $ / 4vCPU) 计,约合 50 万人民币。一次性购买许可后,还有每年 22% 的服务费

但是请注意,Oracle 上面单价的 “计费单位” 是 Processor,等于两个 Intel 物理核,4 线程 vCPU 虚拟核。也就是说如果折算成当代常用单位 vCPU·月,那么单个 vCPU 核的价格就是 12.7 万的一次性许可 + 2.8 万/年的服务费。

1 Oracle Processor = 2 Intel Core = 4 vCPU Thread-

假设你有一台 64 核的服务器用于跑 Oracle 数据库,那么许可证成本就是八百万,然后加上每年两百万的服务费。对了,所谓服务就是你有问题提个工单,原厂的人给你答疑。如果你要找人上门来服务,还有单独的人天费用。

当然众所周知,Oracle 使用 Paper License,你可以随便下载用(盗版)。当然 Oracle 最强大的部门 —— 法务也不是吃素的 —— 对中小用户来说还没这么快 —— 你可以先买一份 50万的许可证交个保护费份子钱,然后这事暂时就过去了。然后等肥了,这些欠下的保护费可是一分都少不了的。

https://www.oracle.com/a/ocom/docs/corporate/pricing/technology-price-list-070617.pdf

总的来说,传统商业数据库的定价模型就是这样的,按 processor 计费,单价几十万。

Oracle: y = a * x + b, a = 28K, b = 127K

当然,要我说的话,这种商业模式已经不合时宜了 —— 硬件已经今非昔比:当年处理器也就几核,现代物理机动辄就是小几百核;更重要的是,软件也有了开源平替:开源的 PostgreSQL 和 MySQL(划掉)已经足够好了。

开源数据库卖多少钱?

Oracle 的 CEO Larry 说过:“一旦开源替代变得足够好,与其竞争是疯狂与愚蠢的”。而现在,Oracle 的开源替代 “PostgreSQL” 已经远远超过 “足够好” 的程度了,实际上,它正如当年 Linux 横扫操作系统领域一样,正在疯狂吞噬着整个数据库世界,并且在最近已经隐晦地喊出了 “干翻 Oracle” 的口号。

PostgreSQL / MySQL 为代表的的开源数据库,可以省掉软件 许可证 的费用。也就是说,你爱跑多少核就跑多少核,软件本身的成本归零了。实际上,这正是互联网繁荣的核心原因之一:Linux ,MySQL,PG,Apache,PHP 这样的开源软件让建设网站的软件边际成本无限趋近于零。

然而,这对于绝大多数的公司与企业来说并不是一个可行的选择。因为真正能玩转开源数据库的专家要比商业数据库 DBA 稀缺得多,而且大多数这类专家都集中在互联网公司中且待遇优惠,薪资不菲。对于许多中小公司来说,第一;很难找得到,认得出对的人;第二:不一定付得起这个钱,专家也不见得愿意去那里。

开源真正的 “商业模式”其实是:免费的开源软件吸引用户,用户需求产生开源专家岗位,开源软件专家作为企业的代理人,从开源世界公共软件池中汲取力量,并作为产销合一者产出更好的开源软件。所以,开源模式中,软件是不卖钱的,卖的本质上是专家服务。

买 RHEL,EDB 名义上买的是 “操作系统”,“数据库”,本质上买的是专家服务,更具体的说就是答疑咨询与人天。用开源数据库的成本,核心是人的成本。开源数据库卖多少钱,取决于专家应该卖多少钱。有人觉得用开源就一分钱不用花了,这就纯属YY —— 能把开源数据库用到商业数据库水平的专家可真不便宜。

专家的定价,取决于专家的质量水平,供需关系。有一种简单可靠的锚定方法就是,对标 Oracle / SQL Server 那个每年加收许可 20% 的“支持服务”,这一部分实际上就是市场对专家服务的定价。我们可以看到像 EDB,Fujitsu 这样的公司就是按照这个思路来定价的。

例如,富士通卖 PG 服务支持的价格是 3200 $ / 物理Core,也就是每 vCPU 1.1 万¥/年。EDB 的价格没有公开,但据我所知的单价比富士通贵一倍,也就是差不多与 Oracle 每年 20% 那个支持费用接近。

PostgreSQL: y = a * vCPU , a = 11K ~ 22K

当然,专家可以从专业服务公司租,也可以直接去市场上租 —— 只要你的规模足够大,直接买断专家总是更合算的 (例如弄两个年薪百万的专家 = 2000K / 20K = 100 vCPU )你可以直接把数据库的成本模型从与 vCPU 的线性增长,转变为对数增长或固定常数 —— 前提是你真的能找到,人家也愿意。但即使如此,绝大部分中小公司也是不愿意或者没有能力支付这个最小规模的启动成本的,于是就有了云数据库。

云数据库卖多少钱?

无论是雇佣专家,还是购买专业数据库服务,都有一个启动成本与最小规模 —— 在时间上是一年起步,在空间上一般好几个核起卖,起步成本在十几万到几十万这个数量级。云数据库用于解决这个问题:它用批发的方式采购专家,然后揉碎进行零售,极好地解决了中小型企业起步的需求。

云数据库的计费模式与商业数据库/开源服务支持一脉相承,采用与 CPU 规模绑定的做法。即定价模型为:

y = a * vCPU

这个 a ,就是云数据库的核月单价。国际上,云数据库的单价,在 150 $ ~ 250 $ / vCPU·月 上下浮动,再加上存储部分的钱,也就是这个 a 大概会在 13K ~ 21K 这个范围内。基本与开源数据库公司提供的服务支持在一个范围。考虑到 AWS 这些云厂商还提供了硬件,起步规模更小,也更省事,不挑客户,在中小规模的竞争力还是非常显著的。

当然,国内云厂商比较卷,专家的平均水平也比国际同行拉垮不少,所以云数据库也卖的便宜些。例如:国内,以阿里云为例,RDS / PolarDB 的单价在 250 ~ 400 ¥ / vCPU·月 上下浮动。那么这里的 a 就是 3K ~ 5K。

总体来说,云数据库的定价依然锚定的是专家服务费用,更具体的说就是盯着传统企业级市场数据库专业服务的定价设计的。只不过针对 SMB 极小微场景会有一些优待 —— 因为凑补的超卖实例反正也没啥成本。像 Neon / Supabase 干脆就对这种场景直接免费了。

当然,一核数据库一年一两万(PolarDB 大约三五千)听上去不贵,但考虑到现在一个机柜就能塞下小几千核的服务器,对于那些有着很大规模数据库的用户来讲,每年几千万与上亿的成本就很骇人了 —— 毕竟单从健全直觉来讲,这样的事找两个数据库专家用硬件自建,也就千万出头。

例如最近由雷锋网爆料的《独家丨米哈游或将大幅「下云」,对某云大厂预算减半》就讲到一个鲜活的案例 —— PolarDB 的标杆案例米哈游在数据库上暴砍近四亿预算……

换个角度看,云上年消费过百万的公司,就应该开始仔细算帐了;过千万就该全面下云了;云上年消费上亿的公司如果还不自建,那真的就是在头上顶着一个 “人傻钱多” 的肉猪 Flag,招杀猪盘。米哈游下云,亡羊补牢为时未晚,至于这种规模还要往云上搬的小红书,那就祝他们好运了。

数据库自建要多少钱?

无论是商业数据库的订阅支持,还是开源数据库专业服务,还是云数据库,都不难看出这里的核心生产要素是 “专家”,而不是 “软件” 和 ”硬件“。

从成本上看,当下的综合硬件单位成本约 60 ~ 300 ¥/ vCPU · 年,在数据库服务中的成本可以说微不足道。因为开源数据库的出现,绝大多数商业数据库产品的许可证价值直接归零;很多国产数据库也就是 PG 换皮,没有什么研发成本;所以核心成本就是专家和销售的成本。

因此在2024年的当下,靠 许可 赚钱的数据库,要么是垄断/供应商锁定的保护费,要么是认知不对称的杀猪钱。要么本质上还是挂羊头卖狗肉,把专家费摊丁入亩抹入到许可费用中。

数据库公司,真正出售的不是软件,而是专家的服务支持。从上面的例子不难看出,专家的服务支持价格与数据库规模绑定,国际市场公允售价为 1 ~ 2 万人民币 / vCPU 每年。无论从数据库服务公司采购,还是从云厂商采购,都差不多是这个范围。

当然,如果你的数据库规模足够大,vCPU 核数足够多,那么最经济的做法就是直接雇佣数据库专家,而不是从别处租赁。比如,如果你有 100 vCPU 规模的数据库,那么就对应着 100 ~ 200 万的专家维护预算,在当下招聘一个足够好的数据库专家是完全可行的。如果你有 10000 vCPU,也许需要两到三个数据库专家,但他们的工资相比上亿的采购费用可是有数量级的差距 …

当然,理想很美好,现实很骨感。实事求是的讲,数据库专家也并不是那么好招的。别说小厂小甲方了,大云厂商巨头也照样找不到留不住这些人。

例如,Apple 当年在上海招聘一个 PostgreSQL 专家的坑位,一直找了两年没有找到合适的人选。其实逻辑也很简单,真正牛逼的专家干嘛不自己开个公司赚上面的 1~2 万 ¥/vCPU 每年的钱,而跑过来给雇主打工呢?

最典型的例子就是 PolarDB 的创始人曹伟,花名鸣嵩,前年就从阿里云跑出来单干,搞了个数据库管控公司 Kubeblocks。此外还有斗佛叶正盛的九章科技等。根据投中网报道:一位早期投资人告诉我们,最近一两年,她接触的从阿里出来做数据库创业者已经达到两位数了。

回到二十块好兄弟

回过头来看我们单价二十刀乐好兄弟 PolarDB ,按照市场定价,每 vCPU 每年费用在 1 ~ 2 万是体面数据库服务的公允价。咱们就考虑比较低端的场景,(挺好玩的事:很多云厂商把 4c8g 的规格标记为“入门企业级服务器”),弄个 4c8thread 低端服务器,那一个节点的报价也应该在10万块左右(前提是含对应的专家支持服务)。130 块钱那纯属倒贴,还不够销售收钱的打车钱呢。

很明显这不是一个符合市场规律的报价,而是想要倒贴钱做标杆案例。毕竟是人民银行,做成了之后销售出去吹牛腰杆都要硬几分。不过价格战可是双刃剑,你报 130 块单价搅乱市场,自然会有各种同行报1块钱倒贴更多,拼老命赔钱也要给你拉下马 —— 绝对不能让你做成这种标杆案例。

这里再解释一下,PolarDB 并不是单一数据库,而是一个数据库品牌。品牌的意思就是这个篮子里有好几个数据库,有 PolarDB for MySQL(拳头产品),PolarDB for PostgreSQL(开源),以及 PolarDB for Oracle (for PG 改),blahblah。这里打人行单子打 PolarDB v2.0 其实是 PolarDB for Oracle ,这是一个在 PolarDB for PG 的基础上修改的 Oracle 兼容版。

当然,PolarDB for MySQL 在云上卖的不错。作为国内早期大规模的 MySQL 用户,阿里在 MySQL 上有很深厚的功力,向输出了许多 MySQL 专家, PolarDB for MySQL 其实是也是 PolarDB 里的拳头产品。作为标杆案例的米哈游,用的也是这个。但线下私有化部署和国产信创的 for PostgreSQL/Oracle 还没有 for MySQL 像米哈游这样的标杆。

但现在,下云开始成为一种潮流,根据雷锋网报道,PolarDB MySQL 标杆大客米哈游一口气砍了四亿(每年)数据库预算 …… 四亿是什么概念呢?虽然阿里云每年营收千亿,但过去一年利润也就是不到九十个亿。数据库的毛利率都是 50% 起步,70% 也不让人惊奇,这一刀下去,确实太伤了。

那么,云上遭遇滑铁卢,自然就要开辟第二战场,打造第二增长曲线,做线下私有化部署。虽然阿里云嘴上喊着公有云优先,但 PolarDB 身体还是很诚实的去搞了那个信安国测,弄了个自主可控国产数据库的身份。看着庶长子 OceanBase 四处收割眼热,教练我也要打篮球!我也要做国产数据库!

数据库老司机评论

作为数据库老司机,我认为庶长子 OceanBase 的技术路线双重押错宝了,首先押分布式,这在当代硬件条件下已经成了一个伪需求;其次押 MySQL 生态,天花板已经锁死了。而阿里数据库嫡子 PolarDB (PG/Oracle)认清现状,在技术路线上拨乱反正,重新回到 RAC 集中式,PostgreSQL 生态的道路上来,很明显在产品/技术路线上前途要光明的多。

当然,有前途没前途都是相对其他“国产数据库“来说的,基于开源数据库主干提供专家服务,发行版,扩展,等增量价值才是正路,土法自研是封闭僵化的老路,魔改开源是改旗易帜的邪路。PolarDB for PostgreSQL 总体来说对 PostgreSQL 的魔改程度不大,基本可以复用 PG 生态的扩展,工具与组件,这一点我觉得是非常明智的。

所以,在我们的开源开箱即用 PostgreSQL 发行版 Pigsty v3.0 中,我们也提供了针对开源的 PolarDB for PostgreSQL 的支持,意思是你可以直接用 PolarDB for PostgreSQL 替换掉原生的 PG 内核,拥有开箱即用的监控系统,高可用,备份恢复,IaC,连接池,负载均衡,故障自愈能力,把一个 RPM 包变成一套本地运行的企业级 RDS 服务。至于 PolarDB for Oracle,因为是基于 for PG 的版本做的,所以也支持,但为了支持国产数据库事业,这个部分就不开源免费了,关于 Pigsty 与 PolarDB v2 打包的国产化本地 RDS 方案,欢迎感兴趣的朋友联系我。

Last modified 2024-11-20: update docs (3c7984b3)