2022年1月6日,备受关注的DC2021分布式数据库开发者大会于线上正式召开,由中国电子技术标准化研究院指导,CSDN主办、OceanBase承办,多个知名社区协办。几年前,分布式数据库技术还是大家津津乐道的明日新星,随着2021这一数据库技术的变革之年,回首望去,未来已来,分布式数据库的时代大幕已然悄然拉开。
本次大会以“数聚未来”为主题,邀请了一众业内知名人士,包括MySQL之父、MariaDB创始人以及PostgreSQL全球开发组联合创始人,同时还有OceanBase、TDSQL、GuassDB、PingCAP、巨杉等国内顶级分布式数据库行业先行者,技术专家带来精彩的演讲分享,为开发者们贡献了一场分布式数据库领域的盛宴。
分布式数据库产业现状
分布式数据库发展的如火如荼,在面对各种海量数据的场景化需求时,分布式数据库更能为企业业务提供良好支持,而优秀的数据库产品可以为企业发展插上翅膀,推动行业腾飞。
通过大会上专家们的分享可以发现,目前分布式数据库的现状主要是从单一化向多样化去发展。随着应用场景和数据量的增加,并发和吞吐量的要求也越来越高,用一款数据库去适用所有场景逐渐变得不可能。这也就带来了一个数据库的趋势,即一种数据库适应一种或者多种场景,数据库的种类会越来越多,呈碎片化趋势。除此之外,数据库也从单机转向分布式.目前的分布式数据库已经相当普及了,从原来的关系型数据库到面向分布式的数据库,这种趋势和浪潮下,面临的是数据库的碎片化。
中国电子技术标准化研究院研究室主任杨丽蕴表示,随着分布式数据库的发展变革,技术进步和数字化的深入,数据正在以指数计数速度增长。在去年,国家明确表示数据已成为第五大生产要素,这代表数据越来越重要了。这一趋势对于数据管理、分析的数据库软件,既是重大的发展机遇,也是重要挑战。国内不乏以OceanBase、TDSQL、巨杉为主的国内优秀分布式数据库产品正在去承担创新的数据库业务,并在逐步进入核心系统领域。
在全球范围内,伴随着互联网的快速发展,中国分布式数据库发展突飞猛进,并快速拓展应用到各行各业。2010年,OceanBase正式成立,从淘宝到支付宝,从支付宝走向更广阔的世界,逐渐成为全球知名的自研数据库。
OceanBase创始人阳振坤详细的介绍了数据库的诞生、发展以及目前面临的挑战,风趣幽默的用“小马拉大车”的形象比喻,让与会者对分布式数据库的了解更加清晰。通过对HTAP和OLTP的简单介绍,一方面说明了两者的根本差异,一方面说明HTAP目前面临一些挑战。在阳振坤眼里,一个好的分布式数据库,是“一个”可水平扩展且一份数据存储既进行交易处理又进行分析处理的数据库。它具备“一个数据库”、可水平扩展和HTAP的三个重要特性。
阳振坤引用了Google Spanner论文的一句话:尽管有人说one-fits-all,但包含交易处理、分析处理和全文搜索的单个系统是客户最高优先级的需求,人类的智慧是无穷的,HTAP的这些挑战部分已经在克服,在不久的将来所有的这些挑战都将会被克服。
腾讯分布式数据库TDSQL首席架构师李海翔介绍了TDSQL的关键技术《数据异常体系化技术研究》,其主要讲解了为什么要定义数据异常,为什么要成体系化的定义数据异常;是怎么成体系化的去定义数据异常;怎么用数据异常来讲清楚数据异常和隔离级别的关系;讲清楚数据异常与一致性之间的关系。把整个数据库事务处理领域里面几个重要的概念都讲的比较清楚,用数据异常这个角度讲清楚什么叫做一致性,什么叫做隔离级别。
近几年,随着云计算的不断发展,分布式数据库与云计算也可谓是形影不离,华为数据库首席架构师冯柯现场分享解读了《华为云GaussDB深耕创新,打造根技术竞争力》,帮助与会者了解华为在数据库的战略,以及基于这个战略确定的六大基础研究方向:高可用、软硬协同、混合负载、云原生、安全可信、智能化。
在确定六大基础研究方向之外,同时华为对于数据库战略有三点优势:研发能力、全站能力、生态建设,基于以上三点优势,最终确定了华为在数据库的战略,通过应用软硬件协同,打造开放生态,打造GaussDB全场景的云服务。
最后,OceanBaseCEO杨冰分享了《最好的时代,共建分布式数据库未来》,通过回顾过去一年行业及OceanBase的发展,再次印证了分布式数据库发展势不可挡。
主论坛专家们的对话环节,主题是传统数据库向分布式数据库转型的价值及趋势。在各位国内分布式数据库的顶尖行业代表的精彩分享下,可以窥见分布式数据库的发展以及产业的现状更加清晰,时代的大潮不会无风而起,无数优秀的开发者、创新者就是这场大潮的推动人。
OceanBase在行业中的实践与方法
在上午的活动中,值得关注的当属OceanBase CTO杨传辉对于分布式数据库整体的技术发展进行的解读。从2010年开始蚂蚁集团便致力于OceanBase的研发,如今不论在性能、可扩展性、兼容性还是开源方面都取得了不错的成果。
一体化架构
作为原生分布式数据库的佼佼者,OceanBase背后的主要核心技术就是一体化架构。通过一体化架构,OB能够发挥出双重技术优势:
分布式:底层是原生分布式架构,依然拥有分布式技术无限扩展,动态增减服务器的技术红利。
集中式:完全兼容集中式数据库功能和单机性能,同时支持OLTP和OLAP,简称HTAP。
OceanBase一体化架构的核心技术理念那就是既要分布式,又不能牺牲性能,用一个通俗的话来讲就是两手抓,两手都要硬!每一个数据库都离不开SQL、事务和存储三个技术模块,如果将事务层和存储层分离,再抽取一个单独的分布式KV系统,可以简单直接的实现一个分布式数据库,但是会牺牲单机性能,造成系统高延迟,不适合在核心业务系统使用;然而,OceanBase通过一体化架构将事务层和存储层有机结合,不牺牲单机性能的同时又能做到与集中数据库相当的水平,完全可以适用于核心业务场景。
OceanBase的一体化架构包括了三个核心技术模块:
原生分布式:底层是基于Paxos的灵活容灾架构,其上一层是一个一体化架构,兼具单机性能优势,易用性以及扩展性,并且保证全机的强一致性。
HTAP:OceanBase在一套HTAP引擎中同时支持OLAP和OLTP混合负载,并且做到了良好的资源隔离。
两种兼容模式:同时兼容两种SQL使用接口,商业数据库Oracle和开源数据库MySQL,保证集中式数据库到分布式数据库的平滑迁移。
OceanBase的核心理念是把简单留给客户,把复杂留给数据库,因此选择了对客户更加友好,更加简单的一体化架构。
开源版本
在2021年6月份,OceanBase正式面向全球开源开放,每一个用户都可以通过下载OceanBase社区版快速学习和使用。OceanBase在开源上与其他项目可能不同,十年内核能力的积累,大量的代码开源,必然花费了很多心思和努力。开源是为了更好的发展,相信点点滴滴将汇聚成满天星河,开源会越做越好。
同时,OceanBase在社区建设上也是大力发展,一个好的社区必然离不开开源的支撑,能够加速生态建设。通过开源,能够更快速让更多的数据库管理者,使用者或者说学习者,都能够参与到这个分布式数据库生态里面,这样能够比以前Oracle建设生态要更快,通过开源能够更快的完成生态建设。
技术路径
OceanBase自2010年立项以来,已经过了11年,一直保持着不断的突破和创新。同样的,分布式数据库也经历了三次技术迭代,从最早的NoSQL系统走向今天的原生分布式数据库。
第一代分布式数据库是一个分布式的存储系统,也被称为NoSQL。
第二代分布式数据库采用搭积木的方式,在NoSQL的基础之上引入了SQL的支持,支持基本的SQL功能,但是往往都牺牲了单机的性能和成本。
第三代原生分布式数据库,追求极致,支持完整的企业级SQL功能,并且做到单机性能与集中数据库基本相当。
OceanBase十一年以来一直坚持自主研发,秉持只有自主研发才能完全掌控内核,只有完全掌控内核才能够持续在原生分布式数据库领域开拓创新。所以,OceanBase的原生分布式数据库也经历了三次迭代:
第一代分布式存储系统:将LSM首次引入到关键数据库领域里面,大幅降低关键数据库的存储成本。
第二代分布式数据库:OceanBase再次将paxos协议引入到关键数据库领域里面,首次做到IPO等于零。
第三代原生分布式数据库:OceanBase做到在一套引擎同时支持OLTP与OLAP混合负载,并且参与TPC-C和TPC-H打榜都取得世界第一的成绩。
2021年OceanBase又取得五大核心产品技术突破:
从OLTP到HTAP,TPC-H整体性能提升620%,30TB打榜排名世界第一。
单核性价比大幅提升,Sysbanch整体性能提升68%,支持小规格部署,性价比在全球分布式数据库领域遥遥领先。
更强的跑批能力,支持超大事务,能够在一套引擎同时梳理交易和跑批两类工作负载,并且确保跑批负载不会影响正在进行的交易业务,并行DML和大数据导入性能分别提升270%和58%。
Oracle平滑迁移,OceanBase是业内首个支持平滑迁移Oracle的原生分布式数据库,并且得到银行、保险、证券、运营商、公共事业等多个行业核心业务场景的应用证明。
易用性提升,实现了不依赖单点的分布式检测,也能够通过全链路监控来大幅降低问题排查成本。
OceanBase也是全球唯一一个在事务处理和数据分析两个领域都获得过世界第一的原生分布式数据库。
产业进步与开源发展
长期以来,数据库领域并没有太大的突破或进展,由于它本身是一个门槛比较高的行业,长期就是由几家公司来占据市场份额,所以导致很长一段时间内的开源分布式数据库发展升量很足,但是在整个市场份额上未必有优势,这是很长一段时间里整个开源分布式数据库发展的整体情况。
但是从2021年1月开始出现了一个很大的变化,在市场产品占有率层面,开源的产品第一次超过了闭源的商业产品,这是一个好的现象,同样的,分布式数据库在市场上的竞争也是日渐增长,说明分布式数据库的价值以及它的架构上的优势正在越来越被大家所认可。
OceanBase在社区开源发展方面做的可圈可点。从数据层面来看,社区总用户23000名,百名外部开发者,超百企业用户在社区进行深度的探索。在社区建设上,在Gitee和GitHup上Star数已经超过4000次,社区Fork数860,Commit数超过640。在最为关键的社区活跃度上,每日和用户的沟通数次数超过了300次,并且社区问答数迄今为止已经超过4600次。在技术布道方向连接了超过3500名开发者。这些数据表明:OceanBase社区正在蓬勃发展,在未来将会更上一个台阶。
国外和国内对开源社区的组织形式有什么区别呢?主要有几下几点:
开源生态:社区与代码的重要性
研发门槛:专利和论文数量
起跑线:起步时间
持久性:研发是长期的持久战
总体来说,现在是一个后来者可以居上,技术价值可以无限接近于商业价值的美好时代。而未来,分布式数据库的发展基于开源和技术的发展,无疑将会有更加广阔的发展前景。