对话腾讯云数据库技术负责人:得益于开源的深入和云厂商的崛起,数...
腾讯云数据库
共 7358字,需浏览 15分钟
·
2022-02-09 01:23
2020 年以来,企业数字化转型进入深水区,行业数字化场景爆发式增长,数据以指数级数量增长。就在去年,我国也明确了数据在市场化配置过程中成为了继土地、劳动力、技术、资本之后的第五大生产要素,数据在社会发展进程中的重要性不言而喻。
先是数据仓库 Snowflake 以史上最大软件 IPO 的 700 亿美元上市,接着 PingCAP、思维纵横等数据库科创公司接连刷新融资纪录,传统大厂如腾讯、华为等也在数据库产品上不断发力。纵观国内数据库市场,可谓百花齐放、欣欣向荣。
那么,在过去的 2021 年,数据库领域又有哪些重要进展?在未来的发展中又面临着哪些机遇与挑战?1 月 13 日,InfoQ 大咖说栏目特别邀请到了腾讯云数据库技术负责人潘安群,请他来和大家聊聊 2022 年数据库的技术趋势。
潘安群,腾讯云数据库技术负责人,2007 年研究生毕业于华中科技大学,同年加入腾讯,早期主要作为核心技术负责人开展企业级分布式数据库 TDSQL 自主研发,拥有超过 14 年分布式计算和分布式数据库研发经验,研发成果多次入选国际顶会 VLDB 等,历年多次代表腾讯出席 CNCC、VLDB、SIGMOD 等重要大会。
以下内容节选自当天的分享,InfoQ 做了不改变原意的编辑:
2021年,数据库产业现状
融合、开源和井喷是 2021 年数据库领域的三个关键词。
InfoQ:如果让您用三个关键词来形容 2021 年数据库的产业现状,会是哪三个词?
潘安群:从技术角度来看,第一个词是融合。举个例子,比如现在比较流行的 HTAP,就是事务型负载跟分析型的负载混合在一起,在同一个数据库里面去实现这两种负载,这是一种融合;第二种融合是多引擎,或者是多模态的融合,就是在同一个数据库里可以支持多种数据模型;第三种融合是软硬件间的融合,随着新硬件的发展,数据库里面的红利也逐渐能够显现出来,这是一个大的融合的趋势。
今年数据库领域的第二个关键词,我觉得可能是开源。今年很多厂商都在做数据库的开源,包括 PingCAP 的 TiDB、蚂蚁 OceanBase、阿里 PolarDB 以及腾讯云数据库 TDSQL,这些厂商大力地把数据库产品以开源的方式推出来,是想去培养他们整个的开源生态的,无论是创业公司还是大厂,无疑都非常看好开源这一趋势的。
第三个关键词我认为是井喷。数据库行业正以大爆发、井喷的方式在增长。这种井喷之势体现在两个方面:一方面是数据库厂商和数据库产品都出现了大幅增加,整个行业玩家变多了;第二个方面是整个市场的需求出现了一个井喷,在产业互联网和数字化浪潮之下,产生了对新型数据库的大量需求,也出现了很多存量市场,原本这些被 Oracle、IBM 所垄断的市场开始有了国产数据库发展的空间,很多传统企业也开始积极地去使用国产的、新型的数据库去替代原来的数据库。
InfoQ:您给出的这三个关键词,也正说明了这个行业是欣欣向荣的,据您的观察,这一年中,数据库技术取得了哪些进展?
潘安群:数据库本身不是一个新鲜事物,它已经发展了四五十年的时间,整个数据库理论体系基本已经成型了,所以目前来看,在理论体系上并没有非常大的突破。最近几年,数据库的变化体现在整个架构层面,主要是云原生架构的进一步深化,就像腾讯云数据库 TDSQL 推出的 Serverless 版本,还有亚马逊 AWS Serverless 版本,都是以云原生架构去做,然后越来越深入了。
InfoQ:您提到数据库的进展主要体现在架构上。现在云原生和分布式架构特别火,您认为云原生数据库有哪些特征?
潘安群:云原生这个概念已经火了很久了。为什么强调云原生呢?我觉得更多的是说它的极致弹性,我们过去使用的传统型数据库,它的弹性或者资源利用率是非常低的。云原生数据库,像腾讯 TDSQL 这样的刚需产品,它在最开始做的时候,它的存储层就可以做到无限地去扩展,在使用过程中它就像一台一台的单机数据库,下面底层挂着一个无限大的一个磁盘一样,这是第一个阶段。
到了 2020 年的时候,腾讯推出了自己的类似 Serverless 的东西。也就是说,我们不仅仅在存储层可以做到弹性,在计算资源、CPU、内存上同样可以做到极致弹性。我觉得云原生核心的两个特质,一个是资源的池化,另一个是在可扩展上做到了极致弹性。
InfoQ:您提到云原生数据库具有极致弹性的特质,那云原生和分布式之间的关系是怎样的?两者是绑定在一起不可分割的吗?
潘安群:严格意义上来说,两者不存在必然的关系。但是云原生的数据库,一定是基于 x86、或者 Arm 这种体系架构下的芯片去构建的,但是这个数据库它本身不一定是分布式的,它可能采用分布式的技术去构建起来的,而底层的基础架构,可能不是分布式。
InfoQ:我之前看到过一篇文章说,价值 75 亿美元的 GitHub 也没有采用分布式数据库,有人认为分布式数据概念仅在国内市场很火,但在全球并没有特别火,您怎么看待这个问题?
潘安群:GitHub 没有使用分布式,并不是说它在全球不火,因为分布式数据库的概念也不是中国发明的,不是中国特有的。这种分布式架构在很早之前就有了,像 Google Spanner 也采用的是分布式。那为什么分布式数据库在中国特别火?我觉得很重要的一点是,中国的市场确实是非常庞大的,像过年过节时腾讯微信支付、红包,双十一的电商交易体量都是非常大的,当然海外也有黑色星期五,但那种体量和中国社交软件、电商平台根本不在一个量级上,所以面对中国这么庞大的市场,一定对分布式数据库是有需求的。
但如果说不用分布式数据库可不可以?当然也可以支持,但它在成本和效率方面远不及分布式数据库,所以随着时间或者市场的发展,分布式是必然的一个趋势。
InfoQ:我之前了解到的一组数据,到 2022 年,所有数据库中有 75% 将部署或迁移到云平台,只有 5% 曾考虑返回到本地。而 IDC 认为,到 2025 年,全球超过 50% 的数据库将部署在公有云上;在中国市场,这个数据更为夸张,达到了 70% 以上。如果这个云原生数据库注定是下一个风口,传统数据库还有没有喘息的空间?
潘安群:目前来讲,在国内,线下部署的数据库,还是有比较大的市场的,像金融机构和很多政务机构,会要求数据库是部署在线下的,线下数据库还是有一个长期需求在的,而这部分市场我觉得可能会是各个厂商持续去发力的一个点。
为什么未来可能有 75% 的数据库部署或迁移到云平台上, 我觉得还是我们之前提到的存量和增量市场的问题。也就是说,未来,像金融机构和政务机构,他们过去使用 Oracle 或者 IBM,而渐渐转向国产数据库,另一方面,一些不那么敏感的、没有受监管要求的数据会逐步上云,云上数据库更多的是吃的新兴市场的机会,而这个新兴市场,未来一定会越来越大的。
云上数据库真的安全吗?
一定程度上来说,采用云数据库比用户自己去运营和维护的数据库更加安全。InfoQ:即使数据库上云是大势所趋,但在云数据库真正落地时,客户又有很多顾虑,比如云上数据库是否真的可靠,是否真的安全,那我们该如何消除客户的这些顾虑呢?
潘安群:一定程度上来说,云数据库比用户自己去运营维护的数据库更加安全。为什么这么说?因为删库跑路的情况时有发生,一旦公司的关键数据丢失,那是非常致命的。
就云数据库而言,各个云厂商都会提供非常完善的配套体系,比说数据备份、数据加密、数据权限管理以及数据审计等,整个配套体系就是一套安全机制,所以我们可以认为云数据库的安全技术是走在行业的最前沿的。
一些中小企业客户,他们在自建数据库时,如果想要做到云厂商这么高级别的安全能力,成本是非常高的。而云厂商早已配备了完善的安全机制,客户的数据能够得到更安全的保障,也是一个非常重要的一个点。
InfoQ:云数据库这两年特别火热,业内也有许多开源数据库,既然开源数据库这么香,为什么很多企业还在自研数据库?
潘安群:毋庸置疑,国外和国内的云厂商都享受到了开源这个红利了。那为什么还有很多厂商要去做自研呢?原因在于开源严格意义上来并不是一种通用的东西。很多开源软件并不能直接拿过来用,而要针对硬件去做优化。
当去做优化的时候,很难去做到极致的优化,因为它必须要考虑到兼容性的问题,而云厂商则可以针对特定的场景去做定制优化,在这种情况下,云厂商就必然要去走自研这条路。
因为云厂商最关键的是成本,如果我可以为客户提供价格更低的产品,那就会非常有竞争力。哪怕降低一个点或者两个点的成本,那最终的收益可能是好几个亿,所以云厂商都在追求极致的成本,在这种情况下就要针对很多底层硬件去做更深度的优化,这也是云厂商要去做自研的非常重要的驱动力。
但为什么云厂商也会提供非常多的开源产品呢?因为很多客户是喜欢使用开源产品的,以 MySQL 为例,无论是国内还是海外,MySQL 都是销量最好的数据库,因为它的受众非常广,而且它是一个比较标准的东西,可以在各个云厂商之间随意切换,不会受限于特定的产品架构。所以开源和自研是并不冲突的,而是相互去协助,去发展的。
技术要发展,
突破点在哪里?
DB 与 AI 的结合目前还没有特别成功的案例,我相信可能未来会有一些突破。InfoQ:云原生数据库已经发展到一定阶段了,您认为下一代云原生数据库发展的突破点是什么?
潘安群:云原生数据库很重要的一点就是要做资源的池化。目前,存储的池化、计算资源的池化都已经做到了。当然还要做很多更细致的优化,包括像刚才前面提到的 CPU 的池化,计算资源的弹性等。
比如,当客户业务负载达到高峰的时候,我们怎么能够快速地给它扩容,当业务负载降下去的时候,我们又该怎样快速地缩容,我们预测的曲线跟它实际业务的曲线是否切合,这对云数据库来说是比较大的挑战。
我觉得未来比较大的趋势是整个内存会进一步池化,未来会分为三层,第一层是 CPU;第二层是内存;第三层是存储,这三层都能够做到独立的扩缩容,在此基础上,未来云原生数据库的体量一定会越来越大。
在云数据库体量增大的情况下,随之而来的问题就是智能化运营。云厂商会非常关心成本,它肯定不能依靠人工去做维护和故障诊断等工作,那这时候就需要采用 AI 技术去帮助我们做智能优化。
但就目前来说,AI 和数据库的结合程度并不是太高。AI 和 DB 的结合,会有两种情况,一种叫 DB for AI,一种是 AI for DB。DB for AI,是指我们用 DB 去解决 AI 场景中的一些问题,就像有人用 SQL 去解决很多 AI 的问题,把 AI 的算法或者场景融入到 DB 里面去,像使用 DB 一样去使用 AI 平台、机器学习平台等。
第二种是 AI for DB,也就是我们通过 AI 的手段去提升 DB 产品的能力。目前 AI for DB 相对来说比较成熟,我们能够通过 AI 技术去做智能的参数调优或故障诊断,AI 是一种辅助手段。
此外,我们也会把 AI 的技术用到数据库的关键路径上面,通过 AI 去做查询计划的优化,包括代价评估等。就目前来看,我觉得在 AI for DB 在应用层面最成功还是通过 AI 去辅助 DB 来提升运营水平,这是比较成功的。但前面说的场景优化还面临着很多问题,包括 AI 算法上的稳定性的问题,以及 AI 算法会不会导致 DB 的延迟等一些问题。
在这种情况下,AI 与 DB 的结合更多是偏向于实验室的产品,或者说是处在一个摸索的阶段,目前来讲,应该没有看到一个非常好的、非常成功的应用,更多厂商及学术界也在积极进行探索,我相信可能未来会有一些突破。
InfoQ:您觉得除了现有的场景外,未来云数据库还会迎来哪些新的应用场景?
潘安群:云数据库,实际上有非常多的应用场景,很多场景甚至我们是意料不到的,包括像 IoT 这样的场景下,一定会产生大量的数据,那么就会对数据库架构带来新的挑战。我觉得未来云数据库一定会是一种多模态、多引擎的形式,但我们呈现到客户面前的时候,是一个数据库,并不是各种各样的数据库,我相信客户也不想在各种各样的数据库间去做选择。所以在底层,我们可以帮助他们做智能的选择,你的应用场景需要哪个数据库,我们就能够帮你把成本降到最低,这是未来所有云厂商要不断去思考的问题。
InfoQ:过去一年,我观察到了一个就是比较明显的现象——数据库作为三大基础软件之一,它吸引了越来越多的资本进入,您觉得资本进来以后,会对数据库行业产生怎样的影响?
潘安群:我觉得资本进入对于数据库行业来说是个利好。数据库发展了有半个多世纪了,如果没有云厂商的发展,没有开源,那数据库的圈子就会越来越小,没有太多新的东西了,它就没法吸引更多的人才,没有人才,想做更多的事情也就不可能了。
得益于开源的深入,让我们这群做数据库的人又重新回到了聚光灯下。另一方面,云计算的发展和云厂商的迅猛崛起为数据库的发展提供了新的机会,市场和需求都在驱动着数据库的变革,这是一个很正常的现象,也是所有数据库从业者非常愿意看到景象。
2022年数据库
面临的挑战及趋势展望
如何构建完整的生态,包括人才的生态、服务的生态、产品的生态等,是国内数据库厂商将会持续面临的一个挑战。InfoQ:2021 年已经过去了,对于数据库行业从业者来说,2022 年数据库将面临的最大的挑战是什么?
潘安群:就整个国产数据库来说,目前云上数据库已经可以为互联网上的应用提供比较好的支持了。但就像我们前面提到的,像 Oracle、IBM 这种老牌数据库厂商他们在线下仍然占据着大片市场。他们耕耘了这么多年,其技术能力和产品的整个生态服务体系都是非常完善的,现在我们国内数据库厂商也在持续地、铆足了劲儿地去冲击这块市场,去争夺这块市场。以腾讯云数据库为例,它在很多标杆的项目里已经做得很不错了,在一些大行、股份制银行都有核心应用落地的案例。
接下来的一个挑战就是如何把已经落地的产品做到大规模、批量化复制的阶段,我们的整个生态怎么能够做到像 Oracle 那样完善,能让越来越多的人帮我们销售我们的产品,或者帮助我们去服务我们的产品等等。如何构建完整的生态,包括人才的生态、服务的生态、产品的生态等,我相信是国内数据库厂商将会持续面临的一个挑战。
InfoQ:您也提到了,我们国内的各家云厂商都在紧盯着全球这块市场,目前 Oracle 在全球市场依然占据着很大的比重,虽然我们国产的数据库相比 Oracle 可能是质优价廉,但 Oracle 是一个老品牌,受信赖程度更高,业务人员即便使用 Oracle 数据库出现了问题,也不会受到太多指责。但如果选择了国产数据库,他们就会有顾虑(一旦出现问题风险谁来承担),您觉得应该怎样解决这样的问题?
潘安群:这就考验我们如何给到客户信心,如何让我们与客户建立起信任。我们跟很多客户去交流的时候,客户会告诉我们,以前他们选择 Oracle 是不需要承担太多⻛险的,因为大家都知道 Oracle 是全世界最好的数据库产品,如果它都有问题,那其他产品可能也好不到哪里去,这个是过去的一个观点。但现在来讲,无论从大环境,还是从 IT 发展趋势,以及国产数据库产品能力,还有实际成功案例来看,很多企业一定程度上都会去选择国产的数据库, 这是大趋势。
我觉得,现阶段整个国产数据库跟 Oracle 这种国际巨头最大的差距就是前面提到的生态的问题。比如我们有客户,经常会问这个点,我选择 Oracle 的时候,懂 Oracle 的人非常多,可能在国内 的某个网站上面去发一个帖子,说明遇到了什么样的问题,然后就会有很多专家去帮他解决,或者是说可以付费请几个专家过来来帮他解决。但如果选择了我们国产的数据库,会不会出现只有 我们自己原厂的人懂这个技术,其他人不懂的情况呢。其实客户会有这样的担心,也是整个生态 不够完善的问题。就像腾讯云,在去年一整年都在大力发展生态,包括服务商的生态、人才培养 的生态等,2022 年将有两万人左右会通过我们的初级认证,通过高级认证的人会稍微少一点, 至少要到几千人。我相信各个厂商也都在做这样的一些事情,比如培养一些懂我们国产数据库技术的人才,把这个生态体系建立起来,这样客户才能够更加放心地去使用我们的产品,如果只是你自己懂你们的技术,所有的问题都得由你自己原厂的人来解决,严格意义上来说,客户在使用中会有一些心理负担。
InfoQ:如果中小企业想考虑数据库上云,他们应该如何做选择?您有什么建议?
潘安群:就中小企业而言,我认为如果他们有监管方面的要求,上云是最好的一个选择。在选择云数据库时,比较常见的是先去做很多测试,比如功能性的测试、性能上的测试等。
更重要的是,你所选择的产品给到你的体验是不是透明的,也就是说,你在使用这个数据库产品或服务时,你是否能够看到里面很多的运行状态,如果出现问题是否能及时发现,虽然这个服务不需要你维护,但是你能够全程地、时时刻刻去看到里面运行的状态,了解到它的稳定性是怎样的,这是首先要去考虑的因素。
InfoQ:作为在数据库领域从业多年的老兵,您未来比较关注的数据库领域的趋势和技术更新有哪些?
潘安群:从数据库整个大的架构来看,我相信在云数据库里面,云原生这个路线将会持续走下去。还有很重要的一点就是,新硬件的诞生将会为现有的数据库架构体系带来颠覆性的场景,比如我们现在谈起的非易失性内存(NVM)这种存储介质,或者云的崛起会不会衍生出新的数据库形态,这可能是我们要持续去考虑的点。
第二,在 AI 的体系里,怎么去提升数据库的能力,也是非常值得关注的点。我相信一些新的应用场景会催生出一些新的数据库形态,比如前面提到的 IoT 场景下催生出来的时序数据库等,一些新的应用场景出现,也会带来一些新的机会,这些都是需要我们去重点关注的。
作者 | 李冬梅采访嘉宾 | 腾讯云数据库技术负责人 潘安群
﹀
﹀
﹀
↓↓点击阅读原文,查看视频回放
评论