数据库和操作系统、芯片一样,长期以来都被海外卡脖子。如今,经过一批人和一批企业的努力,国产数据库已开始了全面替代。但需要正视的现实是,甲骨文、IBM这些巨头依然在金融等行业拥有着绝对的统治力。
本文来自微信公众号:数智前线(ID:szqx1991),作者:一支芙蓉王,题图来自:视觉中国
俄罗斯乌克兰激战正酣,国内网友的情绪撕裂得厉害。支持俄罗斯的和支持乌克兰的,都互相觉得对方不可理喻。立场不同,不相为谋。
但当美国甲骨文等一批科技巨头制裁了俄罗斯之后,让不少人意识到,自主可控在21世纪对一个国家是多么重要。而甲骨文作为数据库的标杆企业,它的动作看似与中国毫无关联,却也牵出人们对国产数据库的担忧。
2018年,中兴通讯被美国列入实体清单后,《科技日报》总结出了中国35项被外国“卡脖子”的关键技术,数据库位列其中。它和操作系统、中间件被称为基础软件三大件。
数据库通俗讲就是放数据的房子,是IT系统必备的要素,里面可以想象成一张张的表,但难度在于海量的数据下如何快速存储和检索。
以前,数据库行业有甲骨文、IBM和微软三座大山。如今,尽管国内数据库市场依然是欧美企业占有绝对优势,但相比于操作系统和芯片,数据库已经取得了不错进展。
而每一项关键技术的突破,都有一批人和一批企业在不懈努力。按照时间线索,大体可分为四个阶段:
1978-2000年海外垄断:美国三巨头在全球攻城略地,90年代席卷中国;
2000-2009年国产萌芽:第一批国产数据库成立和艰难生长;
2009-2014年星星之火:国内互联网和IT巨头涌入,“去IOE”浪潮兴起,国产替代开启;
2014至今百花齐放:国产数据库进入更大的政策和市场红利期,百花齐放,集中效应初显。
一
2008年,中国联通被甲骨文惩罚了。作为数据库龙头,甲骨文要求联通缴纳6000万元的罚款,才给它供应最新版的数据库产品,理由是联通多年来不交服务费。
数据库行业的商业模式比较独特,客户不仅要付费买产品,每年还要交大概20%的服务费,以此获得厂家的软件系统维护和升级服务。当时,中国联通几乎所有与业务相关的系统都是架构在甲骨文数据库上。
但那些年,联通嫌贵,觉得没有服务的时间甲骨文还要收费,太不合理。另外联通也觉得自己的IT技术还可以,容灾备份投入也很大,就没支付服务费。两家公司也因此一直在拉锯式谈判。
这件事有点像后来高通与魅族的纠纷。当年,魅族就觉得高通不应该收这么高的专利授权费,但高通不愿意自己的商业规则被打破,要么交钱,要么断供。所以,那些年魅族一直用的是三星和联发科的芯片。
但当时联通在数据库上几乎没得选。国内数据库市场长期被甲骨文、IBM和微软三巨头垄断。联通不是没有考虑换一个数据库平台,但如果迁移,带来更多不可控的风险,谁都不敢这么干。
这么多年来,金融业和电信业都被拿捏得死死的。
联通这事只是冰山一角。此前还有客户就反馈,甲骨文的议价策略不透明,有钱的大企业就多要点,比如同样一套产品,运营商买就要40万元,小企业买可能十几万元就行,这些都是在他们的合理收费范围内,还拿它没办法。
IBM也差不多。大型银行大多依赖IBM,这也让一向气场强大的银行在IBM面前也变得唯唯诺诺,任人宰割。赛迪顾问数据表明,2011年,中国关键应用大型机系统平均售价已经达到了美国的2.4倍。
甲骨文是第一家进入中国的世界软件巨头,上世纪80年代就把数据库产品卖到了大陆,因为高薪高福利,人称“西二旗养老院”。用微博CEO王高飞的话说,他毕业那些年,甲骨文是最好的去处,起薪比互联网高一倍,而且每年还涨。
能让人养老的企业,都有个特点:赚钱太容易。
软件这种东西,几乎没有什么复制成本,利润又高。20多年前,甲骨文老板埃里森一年就给自己发7亿美元的工资和奖金,放到现在都足以冠绝全球,更别提还是购买力超强的20年前。这就是知识的力量,而知识需要在市场变现。
甲骨文在中国也赶上了好时代。当时中国电信系统正在推进“九七工程”,要求县以上的邮电局,在1997年底前让通信系统完全实现数据共享。
也在此时,电信资费和电话初装费大幅度降价,市话开始普及,各地都在抢着安装电话,邮电局门口排起长龙。1998年,全国新增固定电话用户1800万户,“楼上楼下,电灯电话”的生活,从梦想照进了现实。
数据量猛增的同时,对IT设施的需求也非常旺盛。之前电信系统的计费方式比较原始,还是脱机读带,靠人工整理,长途和国际业务,甚至需要2~3个月才能结算出来,引入先进的数据库,并搭建起一套完整的服务系统,就成为了迫切的任务。
甲骨文就趁着这个机会,轻松拿下了东三省邮电管理局五期工程的大单,此后不断渗透,成了中国电信行业最大的数据库供应商。到了2008年,甲骨文已经拿下了全国18家省级以上的通信公司,包括中国移动和中国联通总部。
2001年,在深圳市长的热情邀请下,甲骨文把全亚洲第一家研发中心放在了深圳。次年,甲骨文又把全球技术大会首次弄到了北京,并在北京建立研发中心。
甲骨文给开拓中国市场的计划起了一个响亮的名字——金色中国,给自己定的目标是“3年赶上韩国,5年超过日本”。不知道甲骨文董事长埃里森来之前是不是看了《马可波罗游记》,觉得中国遍地黄金。
埃里森虽然不太喜欢中国,但对中国的这个判断大体是准确的。此后20年时间,政府、金融、能源、电力等关键部门的数据库生意基本被甲骨文、IBM和微软所垄断。中国市场也给这些软件巨头贡献了庞大的营收和利润。
二
1999年,国内第一家数据库公司人大金仓成立,当时还是中国人民大学的老师集资53万元筹办的校企,牵头人是人大教授、国内数据库的领军人物王珊。王珊是国内数据库学科奠基人萨师煊的弟子,两人曾合著出版了国内第一本数据库教材《数据库系统概论》,成为数据库专业的必读科目。
虽然数据库不是我们发明的东西,但国内在改革开放初期就引入了这门学科,并且早早意识到重要性,所以几乎在每一个重大科研工程项目里,数据库都是重点支持的对象。比如“863计划”设立了“数据库重大专项”,“核高基”重大科研专项中的基础软件也包括了数据库。
但科研归科研,运用到产业和市场,光靠政策行不通。上世纪90年代初,中软总公司牵头,研制了国产基础软件平台COSA,其中就包括了数据库系统。当时集结了几家高校,花了4年时间。数据库做出来了,但产业化程度不高,缺乏应用实践,并没有在市场上获得成功。
所以,不难发现,最早一批成立的数据库公司多与大学或者科研院所有关。除了人大金仓,武汉达梦诞生于华中科技大学,南大通用是南开大学的背景,神舟通用则是中国航天和浙江大学支持的项目。上面四家被称为国产数据库的“四朵金花”,通过办校企的方式,把科研成果产业化,一是为了接受市场检验,产业报国,二也顺带赚点钱。
但这一批数据库公司走的大多是甲骨文这种集中式路线,技术上没有自己的东西。
想用魔法打败魔法,在软件行业行不通。关键是,你的魔法又不如别人深厚。无论是人才还是资本,根本没办法与有着数万工程师的甲骨文和IBM竞争,所以差距越来越大。大家都很同情国产数据库,但除了政府,很少客户真正买单。
原401工程的总工程师陈咨兮曾说过一句很精辟的话:用国外软件好比“抽大烟”,上了瘾,戒不了;而用国产软件好比吃中药,开始苦,后来甜。这句话其实也反映了另一个事实:国外数据库在产品质量上确实让客户放心,国产软件多少差点意思。
所以说,愿意“抽大烟”的人还是比中吃药的多。国产数据库努力了十几年,在能源、电信和政企有了些市场,但最有钱也最重要的大型银行,依然在采买外国数据库。
直到2012年,国产数据库的“四朵金花”加在一起所占市场份额仅到4.47%。
美团的王兴都观察到了这种现象:“在美国,科技业的一半是to C的公司,他们占了一半的市值,to B的这些公司占了另外一半市值,比如说Oracle。所以其实to B还有很多很牛逼的公司,但是我们把这个来看中国的话,发现中国to C的公司都很牛逼,最大的是阿里,然后是腾讯、百度,to B的公司居然找不到,或者说有活着的,但是活得很惨。”
当时业内看着国产数据库身板这么脆弱,一度有“造不如买”的说法,希望以市场换技术。当年达梦数据库曾拜访了近千家国内企业,感兴趣者寥寥。
但现实证明,国外是靠不住的,核心技术全都拽在自己手里,系统都是黑盒子。甲骨文唯一一次是把Oracle10的版本拿出来,卖给了国内四家厂商,允许在它的代码基础上进行开发,但其实那是它的落后版本。这基本也是欧美企业的套路,好东西不分享,总是拿一些过时产品和技术来吊吊胃口。
2019年,甲骨文干脆裁掉了北京研发中心的500名员工。甲骨文走到这一天也不奇怪,一方面是甲骨文在中国的业绩在走下坡路;另一方面是埃里森的傲慢和偏见,他之前说过一句很现实的话:“中国工程师绝不能超过美国工程师,因为中国是美国最大的竞争对手”。
小了,格局小了。
IBM在“棱镜门”之后,也首次将旗下Informix数据库技术授权给了南大通用。作为中国人民的老朋友,IBM看起来下了血本。但其实DB2才是IBM的重点和核心,最重要的东西依然被别人紧紧拽在手里。
所以说,无论是芯片、操作系统的国产化发展史,还是数据库的国产化经历,都在提醒着我们,核心东西没有捷径,市场换技术在绝大多数时候都是一厢情愿,你能依靠的永远只有自己。
三
2021年6月,中国邮政储蓄银行公布了一则采购成交公告,价值高达1.45亿元,投标人和中标人都只有一家:甲骨文。
估计是意识到会有争议,邮储银行还专门解释了原因:当前多个核心生产系统使用甲骨文数据库进行数据存储和处理,无法替换。换句话说,采购从一开始就只有甲骨文一个选项,非它莫属。
这事在当时引起了广泛讨论,很多人不理解,去“IOE”和国产化喊了这么多年,嗓子都喊冒烟了,结果到头来,甲骨文还是单一采购源。
所谓的IOE是IBM的小型机+Oracle的数据库+EMC的高端存储,这三家美国企业一直是IT系统的黄金搭档,江湖人称“IOE”,在过去一二十年几乎没有对手,赚得盆满钵满。
更让人无奈的是,不仅是邮储银行,中国进出口银行、中国农业银行和乌鲁木齐银行等都在此前后采购了甲骨文的产品和服务。大家嘴上说不要,身体却很诚实,一纸采购公告就扒了国产数据库的底裤。
但有一说一,金融行业也有自己的难处。这么多年来,银行等金融机构用的都是IBM和甲骨文那一套。巅峰时期,甲骨文拥有超过2.5万家中国客户和1500家合作伙伴,国内中大型银行基本被它收入囊中。而IBM在国内的第一个大客户就是中国工商银行。
根据信通院的调研数据显示,2018年,甲骨文在银行各类数据库的应用占比超过60%,遥遥领先。
原因在于,人家的数据库不仅系统稳定、技术强,还全球接轨,显得高大上。导致大家跟风似的选择甲骨文或者IBM,不一定最合适,但不会出错,反正也“不差钱”。别看银行在储户面前是一副爱答不理的高冷御姐范儿,但在这些IT巨头面前,还真的是弱势群体。
那为何其他比如电信、电力这些基础设施行业近几年都陆续用了国产数据库?比如2010年,中国联通的综合结算业务抛弃了甲骨文,选择了神舟通用;2012年,国家电网调度中心放弃甲骨文,选择了国产的达梦数据库。
因为搞金融的最怕风险,银行里放的都是一家人或一家家企业的资产,账要是错了,干脆回家种地。而IOE的IT架构被使用验证了几十年,非常成熟稳定。而国内数据库底子薄,技术不太行,如果迁移,潜在的风险是他们无法承受的。比如业务架构和代码的调整,复杂不可控;由于不同数据库之间的语义语法上有差异,很难平滑迁移,不兼容的话风险也高。
金融行业向来倡导“无损运维”,宕机是非常严重的事故,得上报证监会。
2013年,宇宙行发生了一起严重的宕机事故。中国工商银行在全国多地的柜台、ATM、网银业务无法正常使用,故障持续1个小时,波及北京、上海等多个城市。此事据说是由于交易量过大,CPU超载发生故障导致。事后,工行出了一份调查报告,工信部也专门组织专家进行了研讨。
从那时起,金融及关键行业数据库国产化被进一步重视。不过,金融行业更多还是在办公系统和业务系统层面,大家试试水,而对核心交易系统的数据库国产化还多少有点犹豫。
2020年,全国人大代表檀结庆说,中国几千家银行,核心交易系统几乎都采用了甲骨文或IBM的数据库产品。而这一年,中国数据库软件市场规模200亿元,甲骨文等海外厂商市场占有率超过了80%。
新王换旧王,远非一日之功。一下切换过来,造成巨大的成本浪费不说,既不实际也无必要。但国产替代的趋势已经如潮水般涌来,这是毋庸置疑的。
电网作为基础设施,在2008年,也是由于甲骨文太过强势,国家电网总工程师决定破釜沉舟,寻找国产数据库替代方案,几家国产数据库企业获得了宝贵的测试机会。经历了测试和小范围试运行,国产数据库在国家电网的调度业务中铺开了。
万事需要契机,外力也在推动着这一切。2013年,棱镜门事件爆发,有着世界公民意识的斯诺登,揭露了美国利用电信巨头在监控数百万人的事实,恼羞成怒的美国政府一直想抓捕斯诺登。但这件事更大的意义在于,让各国开始更加深刻地意识到,信息安全的紧迫性以及自主可控的必要性。
国产数据库也在这个阶段获得了广泛关注,融资的融资,给项目的给项目,国产数据库开始迎来黄金岁月。以前都是产学研这条线,现在互联网和IT巨头也参与到国产数据库的开发之中。
如今,一些中小银行的核心交易系统也在用国产数据库,比如南京银行选择了阿里的OceanBase,连云港银行选择了腾讯的TDSQL,梅州客商银行选择了达梦,贵阳银行选择了易鲸捷。而即便是五大行也开始转向国产数据库,尽管更多从非核心系统的数据库开始,但历史进程总算已经开始了。
四
2013年5月17日,阿里巴巴的最后一台IBM小型机在支付宝下线。当时团队还专门拉了个横幅,合影留念。2个月后,淘宝广告系统使用的甲骨文数据库下线,这也是整个淘宝最后一个甲骨文数据库。
阿里是国内第一个喊出“去IOE”的公司。想当年,甲骨文可是阿里巴巴的心头好,阿里巴巴也是甲骨文亚太区最大的客户,名副其实的金主爸爸。
但时过境迁,小甜甜变成牛夫人,各行各业掀起了“去IOE”的运动。“去IOE”也不是拍脑袋决定的,阿里提出的时候就很无奈,电商兴起,淘宝的用户数激增,产生的数据也呈指数级增长。甲骨文已经把单机性能做到了极致,稳定性和兼容性都非常强大,但系统极限也非常明显,可扩展性不高,而且维护成本很高。
另外,甲骨文的系统都是黑盒子,不知道什么情况就出问题了,手册上也查不到。而外企都有一个通病,本地化做得很糟糕,有问题经常要总部才能解决。阿里发现,当你把问题翻译成英文发给对方时,1个月以后才能收到回复,效率实在感人。
出于自身业务需要和节省成本的考虑,最终阿里决定砍掉IT系统里的IOE架构。
2009年底,当时负责淘宝技术预算的刘振飞向王坚汇报,提出淘宝“2010年不会购买IBM小型机”。结果,那个被阿里人喷为“骗子”的王坚说:“既然2010年可以不买小型机了,为什么还要给自己留后路以后还可能购买呢?你要在给董事会看的PPT上明确写一句:淘宝2010年起不再购买小型机了。”
其实,去IOE也有个先后次序。最先去掉的是IBM的小型机,选择X86的通用服务器。然后去掉的是EMC的存储,采用分布式存储。最后,去掉的是Oracle的数据库,替代的是开源数据库。
不难发现,数据库是最难的一个环节。阿里做关系型数据库的人叫阳振坤,北大数学系博士,师从王选,2010年加入阿里搞数据库OceanBase的研发。在大厂做事的好处是,有大量场景和数据可以实践。
OceanBase的第一位客户是淘宝收藏夹,后来整个团队并入了支付宝,支付宝拿出1%的交易库存数据出来练手。2015年,支付宝的整个交易库都换成了 OceanBase。两年后,阿里云又发布了通用数据库PolarDB,并且在第二年成功进入Gartner数据库魔力象限,这是该榜单首次出现中国公司。
一般情况下,阿里巴巴有的,腾讯也有。而且这两家的数据库产品都是从自身需求延伸出来。
2007年,腾讯的社交和游戏业务蓬勃发展,腾讯的分布式数据库系统也开始在内部孵化,这就是后来的TDSQL。时任腾讯CTO张志东提出一个要求:腾讯所有的账户都要像银行一样做到一笔都不差,一分都不差。
到了2014年,TDSQL已经支持了腾讯内部90%的计费业务。后来,腾讯数据库也拓展到了银行,先是在自己家的微众银行,后来觉得不够有说服力,又拿下几个城商行的核心数据库系统。
华为的GaussDB数据库(高斯数据库)则是在2019年推出。当时有媒体报道说,GaussDB出货量超3万套。两年后,openGauss正式对外开源。不过,华为做数据库的时间其实不短了。2011年底,华为成立了2012实验室,里面除了我们熟悉的海思芯片,也有高斯实验室和GaussDB。
互联网巨头和IT巨头的加入,不管是声量还是实际成果都更加显著。
数据库的发展演进主要两条路线:一条是走封闭的集中式路线,像甲骨文、IBM旗下DB2和微软旗下的SQL Server都是属于这类;另一条是开源路线,PostgreSQL和MySQL数据库开源系统就是属于这种。
一个主流的观点是,在通用数据库领域,不属于任何组织的开源数据库与自研数据库将是未来的主流。无论是阿里腾讯,还是华为浪潮,选择的都是在开源代码上进行的研发。
这也是国产数据库的机会,就像华为鸿蒙系统也有很大一部分借鉴了安卓开源代码。但在云数据库领域,终于迎来了赶超的机会。而且甲骨文的数据库是集中式的,现在的云数据库都搞分布式。相比于之前跟在别人屁股后面跑,现在的数据库总算走了一条自己的路。
但不得不面对的一个现实是,集中式数据库在中国依然是主流,国内存量至少600万套,而这又是甲骨文和IBM的地盘。
不能消灭你,那就融入你。现在国产数据库都把兼容甲骨文当成优势来宣传,比如阿里云2019年发布的数据库版本,就号称业内首个兼容甲骨文的云原生数据库。2021年,腾讯云也发布了“全新Oracle兼容引擎”,号称兼容度高达98%以上。
2021年,根据国家机关数据库采购的成交公告,入围企业除了依然强势的甲骨文和微软,其余的30家均为本土企业,国产数据库份额占90%以上,而这正是一批批数据库人努力的结果。
2018年,南大通用创始人崔维力突发心脏病去世,业内一片震惊和悲痛。他是早年回国创业的海归精英,致力于数据库的自主创新,但出师未捷身先死,甚至在去世前一天还在分享雷军回答小米为什么而奋斗的文章。
如今,国产数据库从之前的荒草丛生,现在已是百花齐放。
除了传统数据库厂商(人大金仓、达梦、神舟通用、南大通用等),也有大厂的“云数据库”(阿里云、腾讯云、华为云等),还有新兴数据库,比如PingCAP的通用数据库TiDB,涛思数据的时序数据库TDengine、欧若数网的图数据库Nebula Graph。此外还有巨杉、中兴、浪潮、易鲸捷等的数据库产品,都登上了国内外流行度榜单。
数据库的发展,总算让人们看到了从欧美巨头下突围的可能。
很早之前,曾有人批评达梦创始人冯玉才,说企业做了十几年,还这么小,不见长进。但冯玉才说,只要没有死,就有活的希望。
参考资料:
Oracle:在甲骨文的故乡淘金,电器制造商,2002
达梦数据库冯玉才:背着数据库闯天下,武汉晨报,2006年
联通面临Oracle 6000万罚款?电讯行业已被其垄断,IT168,2008年
国产数据库的出路与前途,IT168,2010年
中国数据库40年历史:隐秘的江湖与恩怨,虎嗅,2017年
甲骨文败走中国始末,钛媒体,2019年
信创项目大量落地,国产数据库快速崛起,新华网,2020年
国产数据库的“自我博弈”,雷峰网,2021年
Oracle 的成功无法复制,国产数据库该如何突破?,CSDN,2021年
本文来自微信公众号:数智前线(ID:szqx1991),作者:一支芙蓉王