<< 返回文章列表

ACOUG 联合创始人盖国强:万象更新,数据库技术和生态的发展演进

2019年11月28日
数据技术嘉年华
436

以下内容根据盖国强先生演讲速记稿以及PPT整理而成。

关注公众号“数据和云”,回复:2019dtc ,更多精彩ppt等你下载!(PPT还在不断更新当中,请持续关注)


盖国强1.jpg

2019数据技术嘉年华 盖国强先生现场演讲


今天上午演讲的嘉宾都或多或少谈到了数据库的发展趋势,诸如:数据库要朝着什么方向去发展,未来是什么样子的...我也不例外,我今天带来的主题,总结为四个字:万象更新。下面,我会带来我的一些观点,还有一些技术细节。


1574933956411046330.png


首先,回顾一下去年我的一个观点分享。我以为,近代数据库技术的发展可以划分为三个阶段,分别是:

商业数据库时代:以Oracle、DB2、Sybase、SQL Server 等产品为代表,开创了一个企业级软件时代;

开源数据库时代:以MySQL、PostgreSQL、MongoDB、Redis 等产品为代表,推动了互联网时代;

云数据库时代:以Oracle的自治数据库、AWS 的 Aurora、阿里云的POLARDB等产品为代表,开创了云时代;云数据库时代,我把它稍微修正一下,我认为其是商业和开源的混合时代,它既用了开源数据库,同时吸纳商业数据库,在云上重新构筑了数据库的新形式,只不过是说今天Oracle在云上的发展还不够快,还没有来到中国,但这个趋势不可逆转。


1574933997186063505.png


我们今天看到的AWS亚马逊一度成为全球市值最高的企业,包括今天的阿里云成为云市场的绝对领导者。云轻而快的特点,使得很多初创的企业借鉴云数字化优势快速成长起来。接下来的一步会是什么?我绘制了一张图,我们今天数据库生态变得百花齐放,在数据库流行排行榜上有接近400种数据库。从纵向来看,数据库分成关系型数据库和非关系型数据库。如果从横向上再切分一下,又分成了分析型和事务型,这是整体框架。我们惊喜发现,今天的数据库时代里,有很多中国数据库产品的身影,所以我说这是属于“数据库人”最好的时代。


微信图片_20191125163156.png


数据库经过这样的百花齐放的发展、演进,未来向何处去?第一个趋势,数据库是云上的终极之战,这是AWS领导说的,他说云上的终极之战是数据库,因为数据库下边是基础设施IaaS,顶上是应用,中间是数据库。终极之战早已经打响,我引用两件历史事件,第一个是大家知道阿里巴巴提出的去IOE的理念,最早在2013年把小型机逐渐替换到商业数据库。另一个是AWS10月16日宣布的,它把7500个Oracle中的75PB内部数据转移到多个AWS数据库云上数据环境中。


我前面写一篇文章,我说大家在逃离商业数据库,其根本的原因是什么?我引用AWS这篇文章当中的一句话,他说多年以来,我们意识到我们花了太多的时间来管理和扩展数千个旧的数据库,他说我们的DBA不再专注于高价值的差异化工作,而是花费大量时间应对高的事务率,应对存储的上升等基础性的工作,而忽视了真正有价值的,有创造性的工作,他说这是根本原因。


微信图片_20191126094821.png


今天参会的大多数都是商业企业或者中大型商业企业,而发展云数据库必须到To B市场检验,所以首先我提出的观点是:得到To B市场认同,才是一个数据库成败的关键。包括云厂商今天在做的是将云上数据库带到云下,云上、云下融合也是大势所趋。


其次,To C跟To B天然具有巨大的差异性,To C注重极致用户体验,但是To B不一样,To B根本上重视的是组织的绩效和效率的提升,所以云上跟云下是完全不同的。我引用了一个来自于美国的分析机构总结的报告,我非常赞同它提出的一个观点,它说长期的趋势不是去让所有企业把它所有数据库迁移上云,长期的趋势应该是将云的体验转移到数据上来。大家可以看到,越来越多的云数据库会转移到私有云市场上来。以上,是我对数据库发展的一些展望。


微信图片_20191126095844.png


我们再回顾一下,在数据库变革的浪潮里,数据库技术发生了哪些本质上的变化?这张PPT是我很早前画的,四字总结:“分分合合”。我们说所有的企业可能都经历过这样的IT建设历程:系统建好以后,数据量不断增加,负载越来越高,越来越慢,怎么办?企业可能要去分库、分表、分布式,成本高了我还要开源,所以这是企业的变化。可是所有这些变化、经历和其商业目标不一定是吻合的,分布式就真的好吗?如果它带来管理上的复杂性、故障率的提高,不见得就是最佳的选择。


我们再看数据库软件,它本身在发生什么样的变化,还是那四个字“分分合合”。当我们说很多用户在进行数据分析的时候,还有很多用户在做整合。在数据库软件内部,正在经历的变化又是什么?我们在做分区、分表、Sharding等等,以及最近的机器学习,自治智能等,这就是数据库的变化。


微信图片_20191126101243.png


前面几位嘉宾都从宏观方面谈起,下面,我把其中的技术细节展开一下,跟大家一起回顾一下整个行业里的变化。


最早阿里巴巴淘宝去IOE的时候,它的动因是什么?我引用了两张图,最早它完全是IOE架构,通过Oracle来支撑淘宝核心交易,在核心做了同城双中心,通过跨数据中心的复制保证数据零流失。这个架构在应对大规模高并发交易的时候,出现了承载能力的问题,数据库上出现了严重的瓶颈。针对此情况,阿里做的第一步应对措施是混合数据库,将Oracle数据库高频查询的表拆解到MySQL上进行读写分离。后来又换成MySQL主从,把商业数据库替掉了,这时必然要加一层中间层,是阿里的路由层。这个历程还在向前发展...


微信图片_20191126110519.png


我认为POLARDB是云数据库,它做计算存储分离,做读写分离存储扩展,可以把存储扩展,还可以做到16个节点读写分离(1写、15读)。基于此,绝大多数企业就不需要再去做分布式了。 


阿里双十一有四大杀手锏,第一是自研服务器做的虚拟化服务,第二是自研云原生数据库,第三是计算与存储分离,第四是RDMA网络。在9月阿里的云栖大会上,他们发布了POLARDB  BOX一体机。POLARDB BOX内置兼容Oracle语法的数据库引擎;云平台内置于BOX一体机中;将数据库之间、云上云下之间的壁垒逐渐消除。在私有云环境下,它可以自由在云上、云下自由迁移,这是阿里云,这是POLARDB。


微信图片_20191126111840.png


如今,开源数据库在企业的应用和推广也是风起云涌,我们知道中国电信企业正在通过以MySQL为基础的自研平台去替换商业数据库。这是电信的TeleDB,它通过MySQL的一主多从分布式进行替换,在这里我列举了一些关键的技术点:第一,为了提升安全性,它引用了增强的半同步机制,它要保证落地后才让事务成功,确保数据不丢失。第二,使用线程池技术来解决最大连接数限制问题,以及过多线程带来的系统开销。第三,通常采用一主两从的部署架构,引入 Flashback 闪回功能。


微信图片_20191126112505.png


前一段时间,我写过一篇文章。我认为,2019年一定是国产数据库的元年。我们看到很多国产数据库已经在企业级应用落地,譬如,腾讯的TDSQL,它从农商行到传统银行核心业务,它替换的是核心交易:交易子系统、会计子系统;迁移的核心系统的数据量在 TB 级,包括了账户、账目、流水、账单、日志等数据;采用的是“一主三备”的模式;其核心思想是复制、分片,复制解决安全性问题,分片解决弹性扩展问题。


还有一点,TDSQL提供两个组件,一个是“赤兔”,一个是“扁鹊”,“赤兔”跑得快,要对系统进行全面采集和监控。“扁鹊”是治未病,智能化的分析。TDSQL提供的“赤兔”和“扁鹊”系统为数据库实现自动化运维提供了丰富的工具。


微信图片_20191126113639.png


还有GaussDB,GaussDB  OLTP事务型数据库设计是什么理念?它是纵向的极致扩展,它和POLARDB目前现阶段的设计是类似的,纵向上把数据库扩展到极致,可以扩展到PB级,让你通过这种扩展就可以解决绝大多数问题。目前GaussDB 100仅有单机,据说明年会有集群版本,可以分片,做成集群的数据库。


微信图片_20191126114509.png


当数据库从原来的集中式变成上千个数据库,我们必须在运维上对它做出极大的简化,才可能让它的过度是平滑的。这是招行在运维上的一个实践,我把它分为标准化、自动化、智能化的发展历程,标准化是将运维的工作梳理清楚,自动化是支持自动化工作,智能化是可以使某些工作变成智能判断,自主决策。我今年年初与他们交流的时候,他们谈到,希望工具化和平台化让普通人通过简单的培训就可以完成复杂数据库的运维,所以把所有功能变成一键式的,让运维工作、让数据库的运维工作简单化,我觉得这是一个正确的方向。


微信图片_20191126115558.png


我还想花一点时间,再谈一谈Oracle的数据库。在今天Oracle数据库仍然是这个领域最佳的数据库产品,它也是大家共同学习和超越的对象。我和大家一起回顾一下Oracle在做什么?而Oracle做什么很大程度意味着未来数据库向哪个方向发展。


在12.2版本中,第一,Sharding在做分布式;第二,多租户;第三,AHF,资质的健康诊断;第四,NMF;第五,Onlien  Encryption。

在18C版本中,包括Sharding  RAC,多租户增强,还有IOT海量数据的增强特性。

在19C版本中,Oracle主要特性包括自动的ADG  DML,自动化缩印,混合分区表,JSON增强。这里看到了智能化、机器学习技术,自动化的索引技术。

再看看20C版本,明年将要发布,引用区块链表、多模,所以我们说多模是个趋势。Oracle是多模坚定支持者,把所有能加入的特性全部加入,然后有AutoML机器学习,还有最后一项叫Persistent持久化内存支持,Oracle将硬件的提升利用到了极致,它在这个方向上走得是最快的。

所以我们看到数据库趋势是分布式、Sharding、人工智能、自动化索引,有对硬件的支持,有多模,这是我认为数据库发展的未来方向。


微信图片_20191126121056.png


下面,我将展示一组来自Bethune 平台的数据,其中包括6127套数据库。第一,虽然20C快要来了,11g仍然是主流版本,有将近5000套数据库落在这个版本上。第二,在集群模式上,2节点集群为主,大家可以看到集群和非集群差不多各占一半第三,硬件在快速地进步,计算资源的分布从1到1024CPU。第四,从10G到两个TB,今天很多数据库内存是TB级的,动辄便是几个TB级的。

旁边还有三个数据。第一组数据,集群数据库和非集群数据库,集群占到了52%,第二组数据,是说备库,大家看到备库占21%。第三组数据,归档和非归档模式,归档数据库占72%。这是今天用户采用Oracle数据的现状。


微信图片_20191126131841.png


数据库有这么多变革,有这么多新的产品出现,对于企业来说是真正的挑战。我们如何从这么复杂的数据库找出最适合自己的?一方面,在基础设施层面,有大量的技术出现,就像刚才汪总说容器是未来一体机、超融合、虚拟化等等,我们到底该选择什么?另一方面,应用这一端。集中式、分布式还是微服务,国内还是国外?如今,我见到很多用户被这些问题所困扰。


如何解答这些困惑?我个人认为数据库的发展,它一定不是重走一次长征路,我们在原有路线上已经建了十几年生态,高可用、自动化、安全、稳定...我们换一个数据库还要重新经历这样的历程吗?一定不是这样的,它一定不是功能和体验的降级,而是循环上升变革的历程,应该是更好的开发运维体验,故障自愈,甚至免运维,一定应该是这样的变革。


下面,我详细解释一下,我认为数据库的发展应该有以下几个趋势:

第一,分布式。分布式解决的是弹性伸缩,故障自愈。

第二,智能。智能优化,智能运维。

第三,平台化。我们不再需要一个个半成品的毛坯数据库,而是要自己去建所有的东西,进行统一管理。

第四,软硬一体。软硬一体是将所有东西集成在一起,让用户能够获得极致的性能、便利性、平台化。

第五,云化融合。未来一定是云化融合的大未来。云上和云下将来会越来越趋于统一,不管是今天云数据库走向线下,还是线下的很多技术在跟云走向融合,总之这两者一定会越来越趋于一致。


微信图片_20191126133016.png


很多人说,DBA是不是没有未来了?显然,数据库的趋势一定是智能化的,一定是要机器自主解决问题的,不再靠人手工的完成,从原来战术性的工作过度到战略性工作。可是这句话也有一个潜台词没有人讲,我引用一句话把它讲出来,这是我前天看到的一个正在竞选美国总统的人:杨安泽,他提出一项政策,是给每个人每个月发1000美金,政策受到了很多人的欢迎。每个人每个月发1000美金,他为什么提出这样一个政策?据研究表明,制造业工人失业后进行再就业培训,成功率非常低,未来的三十年,自动化和人工智能将占据美国一半的就业岗位。那些没有技能的劳工,很难在市场上找到自己的位置。


当数据库变得智能上,一定会消灭掉很多工作岗位,这个真相是很残酷的。其实换个角度思考,在座的有很多是OracleDB的,我们在过去积累的这些经验,将来都可以在国产数据库上落地,这就是未来之路。


微信图片_20191126142310.png


替换国外的产品,其中有巨大鸿沟,这是不能忽视的。用Oracle作为例子来展示这个鸿沟,Oracle在做自动化、智能化的故障分析上,可以看到它有一个自适应能力,它可以把整个监控平台、运维平台和Oracle结合起来,让它自动帮你发现问题,推荐解决方案,这里是巨大的鸿沟。我们那么多的国产数据库,那么多的开源数据库,没有一个这么庞大的支持体系,怎么样去解决这件事情?如果能够建立一个统一的生态标准,这件事情才有可能是可为的。


微信图片_20191126143047.png


今天云和恩墨一直在探索,我们做了一些有意思的事儿。比如说我们构建了墨天轮的技术平台。我们对社区具有非常深厚的感情,社区时代过去了,但是一定要有新的形态,我们在探索,它要承载技术人的成长,构建一个有温度的技术社区和全新的社群聚合体,大家以乐知乐享的心态去同心共济。


我们打造这个平台完全是免费的。现在承载有在线问答、视频、知识库等。未来我们将通过API的方式,将这个平台开放出来。如果我们的国产数据库在上面形成了热烈的互动,给用户提供反馈、咨询、交流,打造成为一个集中式的、标准化的平台,聚合国产数据人的力量,加快国产数据库前进的步伐。未来应该是生态融合的时代,不能建立孤岛,要开放,要融合。


微信图片_20191126143904.png


新时代数据库的建设原则是云化融合的,将来云上云下一定会走向融合统一。云和恩墨自己研发一个产品叫zCloud,我们正在从云下走向云上,帮助客户建立统一管理平台,融合一体。


微信图片_20191126144551.png


新时代数据库的应用原则是数据融通的。在过去,建立了很多数据孤岛,将来不要再建孤岛了。我非常赞赏李飞飞老师提到的,他说大家要统一,不要锁定,大家统一建立标准,让迁移和变化自由,让数据可以自由流通。大家都说数据是血液,是石油,是未来重要的武器,如果把它锁住了该怎么办?所以未来数据平台要数据融通,要让它流动。


微信图片_20191126144916.png


新时代数据库核心未来是智能优化的。在SQL层面如何构建最佳索引,去自动优化,去自适应调解执行计划,这些技术谁把它解决好,谁就能帮助用户获得竞争的先机。


微信图片_20191126145140.png


最后给大家介绍一下云和恩墨,云和恩墨一直希望围绕数据架构,帮助企业解决在这个时代中面临的痛点。通过我们的zCloud云化统一平台,软硬一体的一体机,智能优化平台,结合数据智能探索,希望帮助企业在变革过程中少走弯路。


微信图片_20191126145151.png


谢谢大家,这就是我的分享!