热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

中国核心数据对美国的依赖可能真要结束了

阳振坤一手打造的OceanBase数据库,今年搞了个大新闻。在被誉为“数据库领域世界杯”的国际权威TPC-C测试中,蚂蚁集团的OceanBase跑出了7.07亿tpmC的成绩,意思

作者:观察者网

原文链接:https://mil.news.sina.com.cn/zhengming/2020-09-03/doc-iivhuipp2251784.shtml


阳振坤一手打造的OceanBase数据库,今年搞了个大新闻。在被誉为“数据库领域世界杯”的国际权威TPC-C测试中,蚂蚁集团的OceanBase跑出了7.07亿tpmC的成绩,意思是每分钟可以创建7.07亿次订单。

这个成绩,是去年OceanBase自己创下的世界纪录的11倍,是第三名甲骨文(Oracle)的23倍。

刚满一周岁的科创板,可能就要见证新“股王”的诞生了。

根据上交所公告,即将上市的蚂蚁集团拟在科创板募资480亿元,大概相当于中芯国际的2.5倍。

市场普遍认为,这还是一个相当保守的数字。彭博社消息称,蚂蚁集团寻求的IPO估值至少为2000亿美元,约合1.37万亿人民币。

而中国股民向来不惮于给民族企业更高的溢价。按照中芯国际上市首日200%的涨幅来算,蚂蚁集团市值将达到4.11万亿人民币。即使溢价幅度稍低,也有机会超过目前A股市值最大的茅台(2.2万亿)。

不过,选择在科创板上市的蚂蚁集团,究竟是一家科技公司,还是金融公司?

招股书显示,蚂蚁集团的营收主要有两个来源,分别是数字支付与商家服务、数字金融科技平台。

图片来源:蚂蚁集团招股书

数字支付与商家服务,简答说就是支付宝业务,向用户和商家收取手续费,这项业务的占比今年已经降到了35.86%。

数字金融科技平台收入占比63.39%,占据最大头。这项业务说白了,就是通过促成小微贷款、理财产品以及保险产品的销售,按照销售规模百分比向相关金融机构收取“技术服务费”。

图片来源:蚂蚁集团招股书

看上去,尽管顶着“技术”的名义,蚂蚁集团目前更像是互联网上的金融中介,远没有中芯国际那么硬核。

那么,蚂蚁集团真的只是一家金融公司吗?

阳振坤一定不会同意这句话。

在蚂蚁集团的主营业务中,还有一项不起眼的业务,叫做“创新业务及其它”,营收占比仅有0.75%。招股书解释,这项业务主要包括区块链和数据库。

其中,阳振坤一手打造的OceanBase数据库,今年就搞了个大新闻。

今年5月,在被誉为“数据库领域世界杯”的国际权威TPC-C测试中,OceanBase跑出了7.07亿tpmC的成绩,意思是每分钟可以创建7.07亿次订单。

这个成绩,是去年OceanBase自己创下的世界纪录的11倍,是第三名甲骨文(Oracle)的23倍。

近日,中国政府更新禁止出口技术目录,疑似纳入TikTok算法,计算机软件系统被提升到前所未有的战略高度。数据库,正是软件领域最核心的基础设施之一。

而且,与芯片制造领域尚有多国竞争不同,数据库领域,长期以来就是美国一家独大,甲骨文一家独大。

中国数据库居然能吊打甲骨文了?

很多人注意到,在TPC-C测试中名列第三的甲骨文,是在十年前,也就是2010年做出的数据,因此质疑排名的权威性。

的确,自2010年以后,甲骨文再也没参加过这项测试,因为甲骨文已经独孤求败,再也不需要用打榜证明自己的实力。

1970年,IBM科学家科德博士发表了一篇题为《大型共享数据库的关系数据模型》论文,奠定了现代数据库的理论基础。然而限于当时的计算机水平,IBM认为这种数据库没有商业价值,居然直接将论文锁进了故纸堆。

但几年之后,美国中情局看上了数据库的重大战略意义,既然IBM不接单,只好求助于民间高手,最后盯上了拉里·埃里森,和他的初创公司甲骨文。

这位落魄程序员从此开启了自己的传奇人生。

随后的几十年中,看到“钱景”的IBM和微软纷纷加入数据库市场竞争,甲骨文并不缺少挑战者。直到2010年。

那一年,甲骨文在TPC-C测试中跑出3024万的成绩,是同年IBM的3倍,IBM再无还手之力。尤其是在产业起步较晚的中国,人们提起数据库,几乎只能想到甲骨文。

巧合的是,甲骨文王朝的衰落,也在那一年埋下种子。

硅谷天才埃里森,不久之后就要见识到中国工程师的“恐怖”了。

2018年,埃里森接受福克斯商业新闻采访,渲染“中国威胁论”

2010年,45岁的百度高级科学家阳振坤,应阿里云之父王坚的要求,从北京辞职南下杭州。他的新工作,是为阿里研发一款自己的数据库。

彼时,淘宝网的电商业务正在席卷中国大地,如火山般爆发的用户数据让阿里成为甲骨文最大的亚洲客户,也挑战着甲骨文的极限。

淘宝首先遇到的问题是,数据库的成本实在是太高了。

在数据库领域有一个“IOE”的说法,意思是一个完整的数据库系统,软件加硬件,需要IBM服务器、Oracle数据库、EMC存储设备“三驾马车”。为了保证数据不出错,Oracle数据库必须运行在高端服务器和存储硬盘上。

然而随着淘宝流量的爆发,阿里算了笔账,未来采购这“三驾马车”的费用,甚至会超过公司的全部利润。寻求低成本的数据库解决方案势在必行。

更紧迫的问题是,甲骨文数据库已经要崩溃了。2010年,是“双11”启动第二年,当天23时59分30秒,眼看“双11”就要结束,支付宝核心账务系统突然报警,数据库资源即将耗尽。当技术人员砍掉最后一个非关键应用的时候,距离整个系统崩溃只剩下4秒。

为此,阿里首席架构师王坚提出了一个去IOE计划:以廉价PC服务器替代IBM小型机,以基于开源的自研数据库替代Oracle数据库,不再用高端存储设备。

于是就有了那个著名的军令状:“淘宝2010年起不再购买小型机”。

最初,王坚提出的“基于开源的自研数据库”,是指以当时流行的国外开源数据库MySQL为基础自行改造,这是中国软件行业最常见的自主化路径。

这条道路后来衍生出2016年开源的AliSQL,比原版MySQL有70%的性能提升。

但阳振坤选择了一条更艰难的路——自己开发一种全新的分布式数据库。

事实证明,这个选择是极其明智的,因为不久以后,Oracle就收购了MySQL,不再完全开源。

阳振坤

所谓分布式数据库,是指区别于Oracle传统的集中式数据库,不再将数据储存在一台服务器上,而是直接运行在云上。

这是一个颠覆性的变化。

一个合格的数据库,必须满足ACID特性。简单地理解,当A给B转账100元钱时,数据库必须做到:

原子性(Atomicity):A的账户减少100元,B的账户增加100元,这两件必须同时发生,像原子一样不可分割;

一致性(Consistency):转账之后,A和B的账户总和必须跟转账前一致;

隔离性(Isolation):A和B之间的转账不影响其它任何账户;

持久性(Durability):转账记录必须长久存在,即使发生断电等故障也不能消失。

甲骨文等传统数据库,被称为集中式数据库,运行在一个单一的服务器上,因此可以最大程度上保证ACID特性。即使服务器出现故障,也可以保证一个任务要么都发生,要么都不发生,不会出现A的账户少了100块钱,B的账户却没收到的情况。

但是对于分布式数据库来说,如果A、B两个账户处在不同的机器上,其中一台机器出现故障,另一台却在继续执行任务,原子性和一致性就没法保证了。

在2010年,这是一条从未有人成功过的道路,阿里方面深知其难度之大。

有报道说,当时阿里集团的技术负责人吴泳铭告诉阳振坤:“阳老师,我可以给你两年的时间来证明‘分布式数据库’是可行的。”

手下只有十几个人的阳振坤,实际上只用了一年就做出OceanBase 0.1,用在了淘宝收藏夹上,成功经受住2011年“双十一”的考验。

整个2012年,阳振坤的时间主要都花在向其它部门推销自己的产品上——是的,即使有了收藏夹的成功,依然没人敢用。

图片来源:史中

转折点发生在那年秋天,力挺阳振坤的王坚,把OceanBase团队从淘宝调入支付宝,打算直接用在离钱更近、对ACID要求更高的支付宝上。

OceanBase解决ACID问题的方法,主要是靠增加备份,将三套OceanBase绑定在一起运行,一个主库,两个备库。只有当至少一个备库也完成任务时,主库才会完成这个任务,这样,任何一个任务至少被保存在两台服务器上,极大降低了事故概率。

这个理论虽然看上去简单,但能否在数以亿计的交易中保证不出错,大家心里仍然没底。

时势造英雄,阳振坤的机遇在2014年不期而至。

2014年的“双十一”,支付宝决定将1%的流水交给OceanBase承担,剩下的99%,还是使用Oracle。

但是在临近“双十一”的压力测试中,Oracle数据库居然屡次崩溃,只有将数据量降低到90%才能稳定运行——支付宝的体量已经突破了Oracle的极限。

顺理成章地,OceanBase的承担比例,被上调到10%。

一篇专访这样描述了当时的情景:

11月10日晚,蚂蚁金服CEO彭蕾专门来到OceanBase的作战室,问阳振坤:“阳老师有信心吗?”

阳振坤指指窗户,窗外深秋的树叶正在风中婆娑。“不成功我们就跳下去。”他平静地说。

OceanBase当然成功了。2015年,阳振坤团队获得了蚂蚁金服最重磅的奖项——SUPER MA。

阳振坤团队获得蚂蚁金服CEO大奖

在阿里以外,美国数据库积威犹在,特别是在对数据库要求最高的金融、电信等领域。

早在上世纪90年代,国内就逐渐形成了Oracle垄断电信行业,IBM垄断金融行业的格局。2013年的斯诺登事件,让中国政府意识到使用美国数据库的巨大安全风险,全力推进去IOE化,但实际进展缓慢。

到目前为止,尽管很多大型银行已经基于MySQL等开源系统,对非核心业务进行替换,但核心业务仍然在使用IBM DB2系统。

截至2019年,国外厂商仍占据我国数据库市场80%以上份额。传统的关系型数据库市场中,Oracle、IBM、Microsoft、SAP四家厂商共占据市场份额六成,其中Oracle占比超过三分之一。

2019年国内传统关系型数据库市场占比 图片来源:民生证券

这一方面是因为,美国人的优势实在太大。

从1978年萨师煊在人大开设“数据库系统概论课”算起,国产数据库已经走过了四十多个年头,形成了以人大金仓、武汉达梦、南大通用、神舟通用等四家供应商为代表,依托科研院校的国产数据库产业。

根据公开数据,入选“核高基”课题的人大金仓,仅2011年就获批至少1.2亿人民币的政府资金支持。

但这些国产数据库,大多只能应用在要求较低的政府采购项目上,至今不敢说在技术上逼近Oracle。

另一方面,数据库是一个需要下游配套的复杂系统,多年以来,各种办公系统都是各自依托Oracle、IBM开发,互相之间无法兼容。

所以,即使是技术上全面领先的Oracle,也往往很难让银行放弃原有的IBM系统。甲骨文CEO马克-赫德就曾抱怨,“如果迁移数据库这么容易,DB2的市场份额可能就变成零了。”

在这种情况下,阳振坤的分布式数据库,想要取得各大金融机构的信任就更难了。

多年以来,外界对于OceanBase的质疑一直不绝于耳,最常见的看法是,分布式计算无法做到同集中式一样的ACID,因此根本没法在金融业应用。

OceanBase参加TPC-C测试,某种程度上也是为了回应这个质疑。TPC-C测试一个最基本的要求,就是满足ACID原则。

其实,Oracle当初创造世界纪录,也应用了某种程度的分布式技术,将数据库服务器扩展到几十个节点,才能吊打IBM。

因此,OceanBase等国产数据库面临的最大挑战,恐怕还是如何搭建自己的生态系统。

上世纪90年代起,Oracle就大举收购ERP等下游行业公司,建立了完整生态系统,才彻底巩固自己的垄断地位。

好在,个人的努力固然重要,在历史的进程中选对立场,才是决定性因素。

如今,历史站在了云计算一边,在美国,亚马逊、谷歌等数据库的新玩家,也在凭借分布式疯狂侵吞着甲骨文的地盘。传统银行因为线下业务规模有限,尚能继续守旧,但任何有互联网野心的企业,都在纷纷转投分布式。

OceanBase从2017年起对外提供服务,至今已经拿下了不少金融业客户,比如招商银行的互联网业务已经采用OceanBase服务器。OceanBase的服务对象还包括自家的网商银行,以及南京银行、常熟农商行等数十家商业银行和保险机构。

2019年,腾讯的分布式服务器TDSQL,也首次应用于张家港农商行的传统核心业务。

阿里、腾讯这些赚快钱的互联网企业,如今已全面进军基础技术领域,承担起商业之外的国家战略责任。

更重要的是,区别于享受政策红利、远离市场的传统国企,它们在最激烈的市场竞争中厮杀,用丰厚的商业利润来为科研输血,正在为中国蹚出一条更高效的技术进击之路。



推荐阅读
  • REST与RPC:选择哪种API架构风格?
    在探讨REST与RPC这两种API架构风格的选择时,本文首先介绍了RPC(远程过程调用)的概念。RPC允许客户端通过网络调用远程服务器上的函数或方法,从而实现分布式系统的功能调用。相比之下,REST(Representational State Transfer)则基于资源的交互模型,通过HTTP协议进行数据传输和操作。本文将详细分析两种架构风格的特点、适用场景及其优缺点,帮助开发者根据具体需求做出合适的选择。 ... [详细]
  • Java Socket 关键参数详解与优化建议
    Java Socket 的 API 虽然被广泛使用,但其关键参数的用途却鲜为人知。本文详细解析了 Java Socket 中的重要参数,如 backlog 参数,它用于控制服务器等待连接请求的队列长度。此外,还探讨了其他参数如 SO_TIMEOUT、SO_REUSEADDR 等的配置方法及其对性能的影响,并提供了优化建议,帮助开发者提升网络通信的稳定性和效率。 ... [详细]
  • 帝国CMS中的信息归档功能详解及其重要性
    本文详细解析了帝国CMS中的信息归档功能,并探讨了其在内容管理中的重要性。通过归档功能,用户可以有效地管理和组织大量内容,提高网站的运行效率和用户体验。此外,文章还介绍了如何利用该功能进行数据备份和恢复,确保网站数据的安全性和完整性。 ... [详细]
  • Web开发框架概览:Java与JavaScript技术及框架综述
    Web开发涉及服务器端和客户端的协同工作。在服务器端,Java是一种优秀的编程语言,适用于构建各种功能模块,如通过Servlet实现特定服务。客户端则主要依赖HTML进行内容展示,同时借助JavaScript增强交互性和动态效果。此外,现代Web开发还广泛使用各种框架和库,如Spring Boot、React和Vue.js,以提高开发效率和应用性能。 ... [详细]
  • 利用ZFS和Gluster实现分布式存储系统的高效迁移与应用
    本文探讨了在Ubuntu 18.04系统中利用ZFS和Gluster文件系统实现分布式存储系统的高效迁移与应用。通过详细的技术分析和实践案例,展示了这两种文件系统在数据迁移、高可用性和性能优化方面的优势,为分布式存储系统的部署和管理提供了宝贵的参考。 ... [详细]
  • Cosmos生态系统为何迅速崛起,波卡作为跨链巨头应如何应对挑战?
    Cosmos生态系统为何迅速崛起,波卡作为跨链巨头应如何应对挑战? ... [详细]
  • 在使用USB接口的二维条码扫描器时,发现其无法正确识别条码中的中文字符。然而,采用串口连接的方式则能够成功识别。目前面临的问题是如何将通过串口获取的数据在网页中进行实时展示,希望各位专家能提供解决方案,不胜感激。 ... [详细]
  • 在数据存储领域,磁盘介质是至关重要的组件,所有的数据和信息都需要存储在磁盘上。数据读取速度主要取决于磁盘与系统的连接接口。传统的数据存储方案通常采用SCSI或SATA接口的硬盘来实现。然而,随着技术的发展,新的接口类型如NVMe和SAS已经逐渐成为高性能存储的主流选择,这些接口能够显著提升数据传输速率和系统响应速度。 ... [详细]
  • 该大学网站采用PHP和MySQL技术,在校内可免费访问某些外部收费资料数据库。为了方便学生校外访问,建议通过学校账号登录实现免费访问。具体方案可包括利用学校服务器作为代理,结合身份验证机制,确保合法用户在校外也能享受免费资源。 ... [详细]
  • 本文汇集了我在网络上搜集以及在实际面试中遇到的前端开发面试题目,并附有详细解答。无论是初学者还是有一定经验的开发者,都应深入理解这些问题背后的原理,通过系统学习和透彻研究,逐步形成自己的知识体系和技术框架。 ... [详细]
  • 深入解析Linux内核中的进程上下文切换机制
    在现代操作系统中,进程作为核心概念之一,负责管理和分配系统资源,如CPU和内存。深入了解Linux内核中的进程上下文切换机制,需要首先明确进程与程序的区别。进程是一个动态的执行流,而程序则是静态的数据和指令集合。进程上下文切换涉及保存当前进程的状态信息,并加载下一个进程的状态,以实现多任务处理。这一过程不仅影响系统的性能,还关系到资源的有效利用。通过分析Linux内核中的具体实现,可以更好地理解其背后的原理和技术细节。 ... [详细]
  • 本文深入探讨了NoSQL数据库的四大主要类型:键值对存储、文档存储、列式存储和图数据库。NoSQL(Not Only SQL)是指一系列非关系型数据库系统,它们不依赖于固定模式的数据存储方式,能够灵活处理大规模、高并发的数据需求。键值对存储适用于简单的数据结构;文档存储支持复杂的数据对象;列式存储优化了大数据量的读写性能;而图数据库则擅长处理复杂的关系网络。每种类型的NoSQL数据库都有其独特的优势和应用场景,本文将详细分析它们的特点及应用实例。 ... [详细]
  • Swoole加密机制的安全性分析与破解可能性探讨
    本文深入分析了Swoole框架的加密机制,探讨了其在实际应用中的安全性,并评估了潜在的破解可能性。研究结果表明,尽管Swoole的加密算法在大多数情况下能够提供有效的安全保护,但在特定场景下仍存在被攻击的风险。文章还提出了一些改进措施,以增强系统的整体安全性。 ... [详细]
  • PHP预处理常量详解:如何定义与使用常量 ... [详细]
  • 本文将继续探讨 JavaScript 函数式编程的高级技巧及其实际应用。通过一个具体的寻路算法示例,我们将深入分析如何利用函数式编程的思想解决复杂问题。示例中,节点之间的连线代表路径,连线上的数字表示两点间的距离。我们将详细讲解如何通过递归和高阶函数等技术实现高效的寻路算法。 ... [详细]
author-avatar
卡哇伊--欣欣_749
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有