专访丨PingCAP创始人&CTO黄东旭:开源是基础软件成功的唯一道路

2021-04-15 14:16:39来源: 热度:
备受关注的Distributed Cloud|2021全球分布式云大会·北京站于4月7日隆重召开,分布式云是2021年全球十大重要战略科技趋势,利用分布式架构技术创新,连接边缘节点、私有云和公有云的IT资源组成分布式混合云。

全球分布式云联盟力求打造分布式云计算旗舰级技术盛会,本次大会共设有分布式云报告会、边缘计算论坛、Serverless云原生论坛、分布式数据库论坛、分布式存储论坛,跨境SD-WAN咨询会等六大论坛,围绕分布式云、分布式算力、Serverless、云原生、HTAP、IPFS等技术与实践展开。联合阿里云、腾讯云、百度云、金山云等全栈技术引领者与全球分布式云联盟携手打造这场技术饕餮盛宴。

PingCAP创始人&CTO黄东旭在本次全球分布式云大会上分享了他对于数据库变革的前瞻构想,引发了诸多共鸣和思考。全球分布式云联盟也于会后邀请到黄东旭接受专访,让我们一起来看看他对开源分布式数据库的独到见解。

为什么分布式数据库需要开源?TiDB怎么确定要开源的,PingCAP的TiDB在开源上做了哪些努力?

中国传统软件数据库的推广模式,跟传统的软件很像,就是做一个产品,招一堆销售挨家敲门。我们觉得这样效率太低。就现在而言,基础软件好不好关键是在于怎么在最短的时间找到最多人来去用这个产品,能够让它变得更好,变成一个正向循环,因为基础软件产品是被「用」出来而不是做出来的。所以传统软件推广并不是一个特别好的选择,因为扩张速度取决于销售敲门的速度。

所以我们在成立第一天就选择了「开源」。并且把它作为公司的发展战略,坚定地认为开源是当前全球化背景下基础软件领域成功的唯一道路。在我们看来,单纯依靠一个团队开发力量并不能创造出完美的解决方案,一个好的产品应该敢于将自己的代码开放出来,不闭门造车,及时和社区沟通,交流,让整个社区参与进来。

「开源」相当于用一些 to C 的方法论,在工程师的社区里通过病毒式传播让产品被更多人用起来,别人用得不爽一定会 feedback 提 issue。用的人越多,它的质量就越好,质量越好,会变成一传十,十传百的这种效应,让产品正向循环下去。

对于基础软件,我的观点是像数据库、操作系统、云技术,或者云内部的基础软件,未来只有开源一条路,如果不开源,或者说内核不开源的话,产品的生命力是很差的。不像其他的商业软件,基础软件就像在水管、水电煤这样的基础设施的层面上,你的产品生命力差,没人用的话别人也不敢用,这就像一个恶性循环,而开源是打破这个循环的武器。

开源是一个非常大的趋势。大家可以看到一些比较著名的基础软件,基本都是开源的,比如 Docker 或 k8s。很多互联网公司里也会用很多像 MySQL、Hadoop 等这种新一代的大数据处理的数据库等基础软件,且也大多是开源的,正是上面理论的实际例子。

经过五年多的坚持,基于开源文化驱动产品开发和外部推广的方式,PingCAP 在开源上做了很多努力,也取得了成效。

产品开发方面,得益于活跃的国际化社区和全球超过 1200 个社区开发者的参与,TiDB 正以极其罕见的速度进行正向迭代和超高速发展,我记得 TiDB 1.0 GA 的时间是 2017 年底,到现在才短短 3 年,就产生了这样的覆盖率和影响力,这点非常的震撼,而且每一个新 feature / 新版本,都有一大批热情的核心社区用户自发进行测试,每天都有大量全球技术爱好者给 TiDB 提各种产品改进建议,报问题。

开源精神不仅仅在于索取,同时我们也积极回馈开源社区,力争成为全球技术标准的引领者。比如 2020 年 9 月,我们的分布式存储引擎 TiKV 正式从云原生基金会(CNCF)毕业;2020 年 7 月,我们的混沌工程测试平台 Chaos Mesh® 正式成为 CNCF 托管项目;CNCF 2019 年、2020 年度报告提到,PingCAP 已经连续两年在 CNCF 全球代码贡献排行榜中名列第六,已成为全球知名的开源软件厂商。

现在跟过去二十年前不一样,无论是开源软件的质量,还是社区的迭代速度,都已经是今非昔比,所以基本上开源再也不是低质低量的代名词。

中国分布式数据库市场是怎样一个状态市场?为什么TiDB能够获得客户的市场领导者的评价?

过去三四十年,数据库市场都是依赖像 Oracle、IBM 所建立的理论基础运行。但在 21 世纪,Google 提出分布式系统技术后,随着硬件条件的成熟,像 SSD、万兆的网卡,带来的改变就是处理的数据量在持续地变大。数据库市场到了需要去做修订或者说要有个转折的地方了。数据库行业最根基的东西在发生变化,而我们要做的就是找到正确的切入点:就是分布式理论怎么跟传统关系数据库理论融合的点。

TiDB 设计之初就是一款开源的分布式数据库产品,无论从技术上来讲还是运营模式上来讲,都是分布式数据库非常成功的实践。

从技术上来讲,传统的数据库实现“分布式”的方式无非是通过 Sharding 或者分库分表,或者采用 NoSQL 的思路,但是往往都面临着业务侵入性的问题。如果你的业务是重度依赖 SQL,那么用这两种方案都是很不舒适的。而 TiDB 结合了传统数据库的优点,以 Shared Nothing 这个思路进行开发,可以做到几乎无限的水平扩展,整个系统没有端点,不管是 1 个 T、10 个 T 或者 100 个 T,业务层基本上不用担心扩展能力,同时提供强 SQL 的支持,不需要指定分片规则、分片策略,系统会自动的帮你做扩展。第三是支持像单机数据库一样的强一致的事务,可以用来支持金融级别的业务。

从运营模式上来讲,我们用开源的模式让更多用户能够低成本的用上 TiDB,参与到产品的研发流程中,用户能够及时反馈他们的使用体验和遇到的问题,我们能够快速地响应,根据客户的需求来完善功能,快速迭代。

TiDB天生是有云原生基因吗?TiDB云原生的历史是怎样?数据库云原生有哪些必要性?

从 TiDB 诞生之时就带着云原生的标签,并且底层存储引擎 TiKV 也在 2019 年成为了 CNCF 的孵化项目,并于 2020 年顺利毕业。我们很早就认识到,云提供的基础设施可编程、按量付费等区别于传统数据中心的核心特质,正是释放 TiDB 弹性伸缩潜力的最佳载体。

我们认为云原生是未来的数据库方向。2010 年以来,云计算让低成本无限扩展的互联网基础设施成为了可能,在底层资源无限的前提下,将有更多创造性的软件被开发出来,大大提高我们的生产力。而一款跑在云上的数据库最好是云中立的,在未来的多云场景,AWS、谷歌云、阿里云等等,他们构成现在的公有云世界,而谷歌的K8S又是一个公有云服务的标准。所以,我们 TiDB 只要支持 K8S,每一个公有云都支持这个,对于一个用户来说,你可以采用一种多云的策略,你不受任何云厂商的绑架。这个就是云原生的对未来的价值,客户可以在云上更灵活。

TiDB 5.0 架构和功能上有哪些要点值得关注?

我们把 TiDB 5.0 定义为成为迈向企业级核心场景的里程碑版本:TiDB 5.0 的性能和稳定性得到了显著提升,从而具备更强大的 OLTP 金融级核心场景的服务能力;在原有 HTAP 引擎 TiFlash 的基础上引入了 MPP 架构,使得众多企业的实时/交互式 BI 成为现实,为高成长企业和数字化创新场景提供了一栈式的数据服务底座,加速带动 HTAP 进入更多大型企业的数字化场景。

此外,TiDB 5.0 新增了多项企业级特性,集成更丰富的大数据生态,提供更加简易的运维体验,帮助企业更高效地基于 TiDB 构建和扩展应用。在具体的功能点上,TiDB 通过 TiFlash 节点引入了MPP架构,从而达到加速计算的目的。经过测试,TiDB 5.0 在同等资源下,MPP 引擎的总体性能是 Greenplum 6.15.0 与 Apache Spark 3.1.1 两到三倍之间,部分查询可达 8 倍性能差异;同时引入了聚簇索引功能,TPCC tpmC的性能提升了39%;此外还增加了一部提交、不可见索引能功能,也有很多体验上的优化,在稳定性和安全上均有提升。

责任编辑:徐晓俊

为您推荐

火狐求变:推开源移动操作系统

提起Mozilla基金会,大多数人的第一反应是著名浏览器Firefox的拥有者。几个月后,人们或许对Mozilla会有更多新认识——该公司在刚刚结束的亚洲移动通信博览会上公开展示了其移动操作系统,以及一款标价为299元的智能手机,年底将正式推向市场。乱中求变:从浏览工具到操作系统Mozilla要推出移动操作系统的消息早有传闻,日前该系统在上海终于正式向公众揭开了面纱。似曾相识,这是一款基于Linux、完全由Html5支撑的“网页版”操作系统,可以说与Android师出同门,人们有理由相信,这是与多数号称自主研发的系统一样,只是Android换了身马甲而已,不过,北京谋智网络董事长兼CEO、Mo

云计算开源产业联盟第一次成果发布会在京召开

2016年7月13日下午,由工业和信息化部信息化和软件服务业司指导,中国信息通信研究院和中国通信标准化协会共同主办,云计算开源产业联盟承办的云计算开源产业联盟第一次成果发布会在京召开。工信部信息化和软件服务业司巡视员李颖、中国信息通信研究院党委书记李勇出席会议并致辞,云计算开源产业联盟常务副理事长何宝宏主持会议。会议发布了中国首个云计