开源为主,自研为辅是目前国内数据库的发展趋势,云计算也给数据库行业带来新的变化。
7 月 8 日,腾讯云 MySQL 8.0 正式发布,在社区官方版本发布两年之后,腾讯云酝酿许久「姗姗来迟」,原因在于腾讯云不仅是发布一个产品或服务,更重要的是发布腾讯云数据库内核和基于该内核的系列产品生态。
数据库四十年
上世纪 80 到 90 年代之间,Oracle 等传统商业数据库集中诞生;1990 年到 2000 年,我们所使用的大多数开源数据库均在这期间诞生;2010 年以后是云数据库时代的契机,典型产品如微软的 Cosmos DB 和 AWS 的 Aurora。
每十年都是一波开源数据库或者商业数据库的浪潮,2020 年伊始,数据库行业形势更加复杂。
Oracle 于 6 月份发布了一份不及预期的财报,将该财季营收下降 6% 归因于新冠疫情影响,但是 AWS 营收同比增长 33% 达 102 亿美元,同受疫情影响,云计算明显是数据库行业的变量。
与此同时,开源数据库和商业数据库互相取长补短,开源数据库整体更为积极主动,过去在 Oracle 等商业数据库才会看到的 returning 语法,或窗口函数、通用表表达式等一些便捷语法,如今开源数据库慢慢在新的版本里面增加或加强了这方面的能力。
腾讯云 MySQL 8.0 内核与生态
腾讯云上运行的数据库服务统一叫 TencentDB 也叫 CDB(Cloud DataBase),TXSQL 则是腾讯数据库的内核,为什么需要 TXSQL 这样一个数据库内核?
在公有云上提供数据库服务,厂商需要面对的挑战:
第一,稳定性。用户在使用腾讯云数据库的时候,会碰到一些官方 bug 或者稳定性问题,导致线上业务出现故障,腾讯云需要及时处理。
第二,性能。电商用户在做大促或者活动时,数据库会面临很大压力,对性能要求比较高,官方版本达不到要求,腾讯云就需要针对客户应用场景优化,使得性能方面能够满足客户更高需求。