构建长久可持续的良性数据库生态,要有个“打持久战”的准备 | 对话沃趣科技联合创始人
未来十年将会是 基础软件 发展的黄金十年,也将是基础软件逐渐支撑起行业数字化转型的关键十年。与此同时,基础软件的研发周期长、研发难度大、应用广泛,是组织、企业、团队技术力量的重要象征。
目前,国内数据库市场百花齐放,据权威机构统计截至 2022 年,国内共有 200 多款数据库产品,相比于作为操作系统和中间件这另外两大基础软件,数据库这个赛道异常火热。
那么,数据库未来发展方向又在哪里?影响国产基础软件发展的因素又有哪些?企业面对数据库选型时该如何做决策?对于多云异构、跨云流转等数据库行业共性问题,沃趣科技的解决方案又是什么?InfoQ 希望借助对沃趣科技联合创始人 &COO 李建辉的采访为以上问题找到答案。
杭州沃趣科技股份有限公司创建于 2012 年,是一家专注为企业用户提供基于高性能、高可用、可扩展的开放数据库云平台解决方案的国产厂商。公司创始团队为原阿里巴巴数据库及运维团队核心骨干,为行业客户提供数据库云产品及软硬件一体化解决方案。
李建辉: 我个人的经历有两段,第一段是毕业后去了阿里,2003 年进入阿里,2012 年从阿里出来,在阿里工作了 10 年左右,这 10 年的工作经验围绕的都是基础设施、基础软件这方面。但在阿里的最后两三年,我认为做基础软件技术已经发展到头了,所以那时我们就想出来自己做一些事,重新接触一些用户需求。当然,我们走了以后,阿里的基础软件发展也很迅速。
刚开始从阿里出来后,我们也想做一些不同的事,但实际上自己的基础能力以及同事资源等等各方面因素,最终还是把我引导到了基础软件方向。
第二段经历是从 2012 年到 2022 年,我出来创业也做了 10 年左右。大家在实践中不断地学习总结,总结出了一句很朴素的话:做生不如做熟,主要原因是因为从一开始到现在,我们团队人员所有的经历,更多的是在这个领域。当然,过程中有很多契机在促进我们更好地发展,包括最近几年 AI、5G、IoT 等技术的蓬勃发展,也很大程度上促进基础软件迎来新生机。
InfoQ:您从阿里出来以后,当时的基础软件市场现状是怎样的?
李建辉: 为什么我们会笃定基础软件赛道呢?因为从一开始出来我们看到,在基础软件方面,传统市场相对于互联网公司,差距还是比较大的。我们出来以后看到的问题是,大量的传统企业在使用落后的商业软件,抛开开源、自研软件不谈,很多商业软件在生产力、生产价值上来讲都是偏低的,所以我们认为这方面有很多事能做,希望以我们微薄之力为基础软件的发展添砖加瓦。
李建辉:我认为数据架构的很多问题,与业务发展有关,同时又与业务软件发展有关。业务发展是什么样的一个模式呢?可能最开始的业务是集中式业务,就像大家要去办银行业务,只有一个地方可去,就是银行柜台或者银行网点。但是,随着手机发展起来,业务模式、App 变了以后,业务规模就会变大,随时随地面临各种挑战。所以当业务变了以后,就会带动业务软件跟着变。比如原来银行的业务软件只要做好柜员系统、网点交易系统就够了,但是实际上,业务变了以后会导致整个业务开发模式的变化,进而带来整个数据结构的变化。
同样,业务变了以后,就意味着基础数据结构也要跟着变,由最开始的集中式大型数据库,变成自动化程度更高、伸缩扩容弹性更大的数据库。
我认为整个变化模式,是由前向后推导的,当然后端也可以向前推导,当我们把后端数据库做得更强壮,前端的业务能够开展得更自由。所以从这个角度来看,业务模式决定了业务软件,业务软件又决定了基础软件的变革,基础软件反过来做得很好,又能释放前端的整个业务价值,那么做业务的人更能施展拳脚。所以现在整体上,整个数据架构的模式在朝着柔性、弹性、灵活、自由,随时供应,随时满足的这种商业模式发展。
所以,要做出一款能满足上述诸多要求的数据库,并不是件容易事。
李建辉: 我认为一个生产系统或者一个快速发展的系统,从目前情况来看,在选择数据库时最主要的需求是,业务开发人员对于什么数据库的掌握程度高,或者什么数据库对于未来业务发展的阻力小。这样的选择会导致一个跟以前不一样的结果:以前业务开发选择数据库时基本上很单一,即固定的厂商选择固定的数据库,比如长期做 Oracle 就选 Oracle,长期做 SQL Server 就选 SQL Server。但现在对于业务开发方以及最终用户来说,选择的时候是有困难的,困难在于商业数据库后面的成本以及发展阻力问题。
那用户应该怎么选?用户首先应该 立足于自己业务发展本身去选择数据库。在选择的时候,可能说脱离了老牌强大且功能丰富的商业数据库以后,挑战就归到用户和业务开发方,当然也会归到数据库供应商身上,大家会承担更多选择以及运维的压力。当你做了一个正确的选择的时候,或者做了几个承受压力的选择的时候,这个收益是显而易见的,成本会大幅度下降。
所以,如果用户原本使用一个 Oracle 就满足了自身业务发展,那么就选 Oracle。但是,随着业务的发展,如果原来一个 Oracle 就能解决所有问题,现在却需要借助MySQL、Redis 至少两种数据库,甚至第三种数据库的组合来解决这个问题,业务确实更累了,但这个问题也容易解决——谁干更多的活,谁接受更多的挑战,谁就应该拿收益。
原来很多传统的数据库大厂拿到的收益,尤其是以 Oracle 为典型代表的收益,会与业务开发商有一个价值重新分配的过程。通过价值重新分配又能促进软件厂商的能力朝前发展,我们基础平台厂商的基础赛道也会获得收益,往前发展。实际上就是借助业务发展我们是不是能够让一些新兴的基础软件厂商获得相应的收益。在这个过程中,你能扛事,愿意努力,就能重新分到软件上相应的收益。我认为挑战是必须接受的,可能是比原来的世界更丰富、更复杂,但是一定是有收益的。
更具体点,对于企业数据库选型来讲,如果企业的业务规模很大,整个业务系统都可以改成了微服务分布式,如果业务规模中等,就选择一个接近于 Oracle 的,比如开源的或者国产的数据库,再用一点点适当的技术去补偿它。如果业务规模很小,那就选与 Oracle 高度接近的,或者业务规模大就大改,业务规模小就小改。但如果架构不改或者“躺平”,就可能错过后面业务发展以及软件升级、基础架构升级的机会。
从现在来看,微服务化、开放式的业务,包括向云而生是不可避免的趋势。集中式架构完全要用 Oracle 这种架构的模式,我认为是一去不复返的。
李建辉: 我认为要从两个维度来看待这个问题,第一,从企业本身来看,如果数字化转型能给企业带来巨大收益,那这条路是必须走的。
第二,站在个人发展的角度,也是必须要走这条路。如果作为技术人员不去促进这个事情发展,那么就可能没有发展的机会了。当然,其中可能会有这样的情况,有些企业 IT 系统很小,对数字化依赖并不是很大,这个时候就不能一概而论。但是从整体大趋势上来讲,数字化改革,数字孪生肯定是逃不掉、必然要往前走的趋势。
李建辉: 虽然国产软件、国产系统以及云计算在往前发展,但其实中间存在一些问题。举例来说,比如整个 IT 科技怎么发展,我的比较浅薄的建议是,从业务发展角度来看,从用户友好角度来看,业务应该模块化,比如 IBM 做算力、Oracle 做数据库、EMC 做存储,大家要进行专业化分工,并且定义好接口,这样大家就能够很好地配合起来。但是,在国内做接口化、做模块化的时候又面临另一个挑战,因为现在做的云计算的整个商业模式并不是一个非常好的模式,所有都是云上的东西,意味着大家无法进行模块划分。比如我是做整个云平台数据库基础设施的,但问题在于云计算厂商并不给你接口,他希望这些事情自己全做掉,所以说是有挑战、有压力的。
中等规模的企业可能能够往上发展,但是像我们这种中小规模的 IT 公司能够做专业化、垂直化的道路,就依赖于一个接口的问题。关于接口问题,我认为传统的 IOE、传统的海外 IT 做得非常好,大家每个人把自己最专业的一方面做好,然后再慢慢往上延伸,而并不是一开始就全部是云,里面所有的事情都由云来搞定。这对于用户下一步选择,对于 IT 下一步的发展是有不确定性的。很多用户上了云的第二、三年就会出现问题。
云计算虽然好,但是更应该有充分的云市场、充分的销量,大家有互相的沟通、配合,各把各的事做好,各把各的接口做好。但实际上国内整个云包括公有云、私有云,对于模块化的对接市场并不友好,这是我们所面临的压力。意味着所有做中间件、数据库的厂商,都是在云的压力之下生存。
好在,近几年这种情况有所改善,比如阿里提出来合作集成、被集成,各个云厂商也在朝这一步走。当利润变薄以后,大家想把所有的事情都做下来是有压力的。因为国内的 IT 一旦做起来以后,最开始并不是特别模块化、专业化的模式,而是赢者通吃,希望一两家把所有的事情吃掉,这对用户来说并不友好。他不可能为小用户定制,很多中小用户用起来会非常难受。为大用户定制,可能前两年还挺友好,到第三年以后定制的费用又变得非常高昂。这种商业模式不是一个能持久的模式。
李建辉: 从现在整个发展情况来看,我认为 数据库在未来五年,可能会进入一个求真务实的阶段,但这个求真务实的阶段会变成一个怎么用国产的数据库解决的问题,至于国产的数据库到底是分布式,还是集中式并不重要。因为现在的问题在于大家找不到抓手,老的数据库实在也换不掉,于是就开始讲分布式。
但是分布式的数据库应用场景到底有多少?从我们来看并不多,只有头部 1% 左右的用户用得到。但实际上大量、很务实的问题在于,牵扯国计民生的大量行业、机会,会出现在国产化的阵营里头。大家既要搞国产化,又要把老的业务切过来,还要搞分布式,我认为难度很大。所以,我们求真务实一点,老老实实让用户能以比较低的成本把老的 Oracle 换掉,什么好换就上什么,我认为最近几年可能会进入这种状态。
当然,也有些大厂可能将分布式、国产化一起搞定。但是作为一般厂商,或者专业厂商,是要循序渐进地走。但是站来务实和落地的角度来讲,99% 的市场需要的是国产替换而不是分布式,所以既然现在阶级压力很大,大家业务压力也很大,我认为要务实一点,先把 Oracle 换掉,不管大小,尽量用简单易于落地的架构把它换掉,而不是用高大上的、面向未来的架构把它换掉,面向未来的架构是下一桶金,我们这一桶做完以后再做下一桶。
李建辉:我认为生态的问题就在于大厂是否开放。现在看起来生态好了很多,整个华为的生态很开放,阿里的核心数据库也慢慢地走向开源,我认为生态是越来越开放了。但是另外一个问题是与国际接轨的问题,假设我们把 MySQL 定义为不能用的产品以后,就意味着我们也可能会和国际脱轨,因为当大家互相不承认以后,就很可能会发生这个问题。现在已经有行业把 MySQL 定义为不信任的数据库,以前没有定义它是可信的,也没定义它属于纯商业的,只是说也能用,不算信创,也不算是不可控,可能是介于中间。但是现在一旦把 MySQL 划到不可控,就意味着大家脱钩,这就很难再去判断这个问题了,需要看整个行业的方向是什么样的。
从我们从业来看,毕竟有一些用户基于业务发展以及成本考虑,多多少少付点钱,也不改业务,还是选择长期用商业的。有部分用户没那么激进,没有能力全部换成自主可控,但是我愿意按照国际趋势发展,不愿意全部用 Oracle、SQL Server 这种全商业的,于是我就选一个开源的。但是这种需要得到政策层面以及行业层面的认可,不能加分但也不减分,然而如果定义成减分,从技术层面大家可能就会出现脱离。因为如果去研究 PostgreSQL,或者公司做 MySQL,没有市场或者市场受影响了,如果继续研究,没有用户买单,我肯定不会去研究,而是要做更国产化的东西。
李建辉: 我认为开源是一个非常好的模式,开源的模式能够让伙伴们加入其中,能够让整个生态往前走。所谓的生态包括我们这样的做数据库基础设施的生态,也包括软件开发生态。比如东软或者某个做 ERP 的,当然希望整个数据库生态是开放的,开放意味我的业务价值能得到保障,对于大家来说是友好的。
整个数据库生态开放依赖于特别大的大厂对这件事的处理方式。如果大厂是封闭的,大家就都需要找其他数据库,无法形成配合。如果大厂是开放的,大家就能一起走,进而就会形成数据库软件的新的收益模式,它可能会通过订阅,通过数据库服务来收取长远且合理的费用。有很多新型的数据库软件在收取长远且合理的费用方面做得挺好,比如 MongoDB,比较友善、合理地去收取专业的技术服务费,Red Hat、Linux 也是开源的,你也可以随便用。收取技术支持费是一个能够把规模做得很大,而且很长远、生态又很健康的一个模式。
我认为现阶段应该朝着软件是开源的、整个服务是专业化的、订阅化的这种模式往下走,这是一个长久可持续的模式。因为这样能够建立不同的梯队,对于资金不足的用户,可以完全采用免费的方式做;对于有部分资金的用户,可以采用买专业服务公司的方式做;对于资金好的、质量要求高的用户,可以采用买原厂服务、定制开发的方式去做。
李建辉: 从软件本身来讲,只有两种模式,一种是纯粹的商业版,比如我们做的是商业版,我们基础的设施平台就是商业版的东西。另一种是开源,开源的本身从软件角度来讲,是希望这些商业公司不断地去发现问题并去修改问题。因为只有这样,他们自己的整个软件才会向前发展。对于开源公司,他们有专业的服务公司,开源版和商业版都在做。
李建辉,沃趣科技联合创始人,现任沃趣科技首席运营官,负责公司运营成本控制,新产品的市场开拓,商业模式的尝试创新,以及公司层面的产品战略合作。李建辉拥有 16 年 Linux 系统管理经验,曾在阿里巴巴从事系统、存储、维护、管理工作 9 年。
点击底部阅读原文访问 InfoQ 官网,获取更多精彩内容!
“睡车间”、削减一切,马斯克为SpaceX定制的文化,不能照搬到互联网公司
写“毁灭人类计划书”、错误太多被Stack Overflow封禁,好玩的 ChatGPT 还不能替代程序员
微信扫码关注该文公众号作者