对话周傲英:数据库人的切肤之痛
Posted 程序员编辑部
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了对话周傲英:数据库人的切肤之痛相关的知识,希望对你有一定的参考价值。
整理 | 杨阳
出品 | 《新程序员》
为什么中国的基础软件和核心硬件突破较慢?一个重要原因是,我们的认知还停留在原来的思维层次上。改革开放四十年以来,在IT方面,我们通过先学习科学理论,后发展技术和应用的路径,取得了令人瞩目的成就。然而,进入到新世纪,社会、经济和科技的发展越来越快,尤其是以互联网为代表的信息科技的爆发,我们已经无法继续沿着从科学到技术,再到应用这样的道路往前走,需要树立起从应用到技术,再到科学这条创新正道的信心。
中国的数据库错过了第一波大发展的机会,怎样才能抓住当前难得的机遇?上个世纪八十年代是国际数据库学术和产业的爆发期,尔后经过近二十年市场的激烈竞争,到上个世纪末和本世纪初形成了三足鼎立的局面。事实上,数据库发展的典型特征是“应用驱动创新”,如果我们认识到这一点,就不难理解为什么四十年前那次数据库发展机会不属于我们。
新世纪已经过去二十年,人类社会正在从工业经济向数字经济过渡,我国倡导的“互联网+”行动计划深刻地改变着各行各业,传统的数据库没法支持新兴的商业模式。丰富的应用是数据库新一轮发展的驱动力,立足当下,我们怎样才能抓住稍纵即逝的机会?展望未来,云数据库被寄予厚望,但落地到实践,我们该如何应对这样的发展趋势?
本文即将为你回答以上问题的嘉宾,是来自华东师范大学的周傲英副校长。
周傲英,华东师范大学副校长、“智能+”研究院院长、数据科学与工程学院教授。现任第八届国务院学科评议组成员、第八届教育部科技委委员、中国教育发展战略学会教育大数据专委会常务副理事长、中国计算机学会会士、上海计算机学会副理事长、《计算机学报》副主编。主要研究兴趣包括:数据库、数据管理、数字化转型、金融科技(FinTech)、教育科技(EduTech)和物流科技(LogTech)等数据驱动的应用等。
作为学院派的杰出代表,他是学习和研究数据库三十六年的“资深数据库学者”。边学习、边实践、边思考、边研究——这也是他想要给到新生代开发者的一个重要认知思维:基础软件的开发者首先要把自己当成思想家,写代码和写作一样,有深刻思想的作家才能写出好作品。
迷失的过去:数据库是硬核科技,“应用驱动创新”是基本特征
《新程序员》:从历程来看,与Oracle这类国际主流数据库相比,国产数据库发展相对缓慢,其中的原因是什么?为什么说国产数据库在当前迎来了快速发展的机会?
周傲英:像你说的,要谈国产数据库的发展和演进过程,还得从国际数据库的发展说起。历史照亮未来,从中我们可以看到国产数据库当前的机会。
事实上,我国最早的数据库发展历史和国际数据库发展史基本是重叠的。从上世纪八十年代初,甚至更早,数据库在我国就已经引起了足够的重视。当时,包括学者、大学和政府机构都看到了数据库的重要性。但即便如此,我们的发展仍然比较缓慢,这是为什么呢?有多方面的原因,重点在于三个方面:
第一,没有应用需求。“应用驱动创新”是数据库系统发展的基本特点,也就是说,它是在解决问题的过程中诞生的。纵观数据库的发展历史,具体而迫切的应用需求是数据库起步和发展的根本驱动力。在国际数据库酝酿和大发展的七、八十年代,我们还处在计划经济时代,信息化也处在非常初级的阶段,包括金融在内的服务业还没有真正发展起来,所以也就谈不上对信息系统有什么需求。
第二,没有“硬核”研究。不久前我就“硬核”发表过一点见解:有成功的应用,有成体系的技术,再加上在这两者基础上抽象出来的概念和理论,方可称为“硬核”。从这个意义而言,数据库是典型的硬核科技。想要做硬核的事,从应用到技术再到理论是正道,反过来是捷径。应用、技术和理论三者联动才是创新之道。上世纪八、九十年代是数据库产业和学术大发展的时期,系统方面有Oracle、Db2这样的产品。理论方面完善了关系数据库、事务处理、基准评测试等。我们错过了这个时代,当然就无法实现数据库的全方位进步。
第三,没有形成生态。有了大规模成功的应用和可以广泛推广应用的系统,还需要营造一个健康的商业生态。数据库技术和系统的生态建设极其重要。上世纪八十年代初,IBM率先研发关系数据库系统,在它之后,Oracle和Ingres则采取了不同的生态建设策略。如今,回头再看这些成功的产品系统,我们才认识到生态的重要性。推出一个产品或者系统,需要在销售、运维、宣传、培训、标准等方面全方位推进,还需要把产品的理念、技术和理论写进教科书。我们在这方面很欠缺,即使现在有了些许认识,但问题还有不少。我们常说“研究和应用两张皮”,其实是有很多张皮,没有融合在一起。只有通过融合互动,才能建成健康的生态。
这三方面原因造成Oracle、Db2、SQL Server这些数据库系统广泛占领市场,反观中国的数据库却没有一席之地。开源数据库领域也基本是一样的情景。
《新程序员》:您从事数据库研究三十多年,一直在为中国数据库事业努力,回顾学术研究和应用实践的探索,您觉得存在哪些问题,或者说值得作为范式的地方?
周傲英:回答这个问题,思路还是和第一个问题一样,在讨论中国数据库的研究和实践之前,我们先来了解下国际上数据库在研究和实践两个方面取得的成就。
从国际角度看,数据库的发展是信息技术发展史的一个缩影。为什么这么说?学计算机专业的学生都知道,我们与其他专业的区别是要学编译原理、操作系统、计算机体系结构、数据库,以及计算机网络这些系统软件或基础软件课程。以上这五门经典课程中,数据库是独立产业,有上千亿元人民币的单独市场。数据库很有代表性,从中可以梳理出信息科技发展的基本脉络。
刚开始学习这些课程,我们会被教科书上的理论和方法深深吸引,像看《圣经》一样。理论完美,方法精妙,一切都像是上天注定。但等慢慢理解后再回头看,特别是如果你参观了坐落在硅谷山景城的计算机历史博物馆,就会发现计算机是人造物(Artifact),无论是硬件、软件,都是人造系统。
那么,人造系统从何而来?有科学家和工程师通灵般的顿悟,天才的想象力,还有绝妙的工艺,但更重要的是应用的驱动。从1965年数据库概念开始提出,它的发展一直沿着“应用驱动创新”的典型路径。
2014年,我们国家在科学发展观的基础上进一步明确提出“创新驱动发展”的战略,这个战略非常重要和及时,对世界也是一个重要贡献。相信我们都很认可“创新驱动发展”,那么接下来的问题就是“什么驱动创新?”。
数据库领域,或者更大范围的数据技术领域,甚至整个IT领域都是“应用驱动创新”。应用驱动创新,创新驱动发展,这样就形成了一个完整的链条。当然,我们还可以继续延伸思考:什么驱动应用?我认为是场景驱动应用。这就是为什么我们在当前的人工智能和大数据时代,特别强调场景。
其实,场景就是应用,是代表性的、标志性的、示范性的应用。场景驱动应用,应用驱动创新,创新驱动发展。也就是说,真正的创新和发展,是各方联动才能成就的,需要应用业务人员、工程技术人员、科学研究人员等多方参与才能实现。
我们原本认为,通过学习科学理论来发展工程技术,而后进行应用推广是发展途径的不二之选,这个认知在发展早期确实起到了重要作用。改革开放四十余年来取得的最大成果,在很多方面就是因为我们学习了先进的理论,发展了自己的技术和应用。我们的GDP后来居上成为全球第二就得益于此,这是我们很成功的方面。
但当科技发展到新的阶段后,我们才真正明白,是因为有应用,为了解决应用的问题,人们才发展了技术,研发了系统。有了成体系的技术,为了指导技术进一步发展,人们通过抽象提出了概念,形成了理论,从而发展了科学。这就是从应用、到技术,再到科学的发展路径,与认识论的观点是吻合的。当然,科学也反过来指导技术,技术促进新的应用,科学、技术、应用三方联动和相互促进,形成迭代。
认识到这一点后,反思我们多年来在数据库方面的探索,在“从科学到技术再到应用”这一点是认识到位的,但“从应用到技术再到科学”这样的创新之道我们没有有意识地推进。从科学研究、技术开发和应用推广来说,就是没有形成健康的生态。当然,健康的生态有很多方面,我们先简单说说商业生态,它是很重要的一个生态。
我们知道,虽然IBM是最先做关系数据库系统的公司,但Oracle是最先推出商用产品的,随后Ingres也以免费许可的方式推出了系统产品。刚开始推出的系统都不够成功,产品面临很大的口碑压力。正因如此,压力转化为动力,才真正促进了关系数据库系统的研发和商业化。从中我们也认识到,系统是开发出来的,而成功的系统是用出来的,是被用户“骂”出来的。
发展国产数据库,我们要有非常创新的思路,把各个力量整体联动起来,这是中国这些年做数据库探索中值得我们反思,吸取经验和教训的方面。
现实的当下:从“One Size Fits All”到重新定义数据库
《新程序员》:当前,国产数据库是否真正大规模使用?与国际主流数据库的距离还有多远?应该如何发展?
周傲英:从传统意义上说,我们与别人还有很大差距,发展需要联动,需要生态,但我们还没有形成,需要学习的地方还非常多。
但我认为,数据库的发展大势在中国。为什么这么说?还是在于应用,应用驱动创新,目前最大的潜在新兴应用都在中国。
我们看一下目前数据库的发展态势,在欧洲和美国,首先人口基数不够,虽然社会运行基于成熟的市场经济,确实更发达,但也带来了思维定式。中国人口基数大,我们的发展还不充分、不均衡,人民对于美好生活非常向往,二十年以来互联网的蓬勃发展为我们带来了很多创新思路。如果说早期的互联网应用不少是复制别人的思路,现在我们已经逐渐成为很多创新应用的引领者,这在去年的“TikTok事件”中略见一斑。应用驱动创新,新的应用是推动数据库发展的重要驱动力,这些对于我国数据库的发展是非常利好的方面。
但另一方面,从国内数据库目前的发展情况看,很多关注点还停留在表面,没有真正认识清楚当下形势形成的根本原因。很多学术或研发工作,甚至支持政策,从某种程度上来说,还是在肤浅地、望文生义地理解文件和形势。从事数据库事业的各位同仁应该看到更大的潜在势头,在国际上,数据库进入到“转型升级”的时代,我们可以在原来的数据库基础上做一些升级。对我国数据库人而言,“替代工程”只是一个契机,“转型升级”才是大势。我们应该做“替代工程”与“转型升级”并举的创新。
十年前,Hadoop刚刚形成势头的时候,国际上顶流数据库学者很愤怒,指责说Hadoop是一个大退步。但随着Hadoop势不可挡的发展,数据库人开始认真反思为什么会发生这种现象。原来我们总认为数据要用数据库来管理,数据库发展得那么成功,我们也就自然而然地认为数据库能管理好数据。总结起来就是那句话:“One Size Fits All”。但经过残酷现实的考验,后来发现不对, “一统天下”的关系数据库解决不了任何问题,数据库人才因此发出了“One Size Fits None”的哀叹。
痛定思痛,数据库人终于得出富有哲理的结论,那就是“One Size Fits a Bunch”。也就是说,每一类(捆)应用都应该有一种数据库来支持。以Oracle为代表的关系数据库,不管是开源还是闭源,他们支持的都只是一类应用,哪怕这一类应用再有代表性,占比再大,也无法覆盖现实中的所有应用,更何况随着社会经济的发展,应用也在与时俱进、层出不穷。所以,中国的数据库界一定要注重全面吸收国际数据库界五十多年来产生的非常丰富的,也是我们学数据库的人引以为傲的研究和实践成果。同等重要的是,我们更要注重“守正创新”。我经常说,守正不是为了守正,守正是为了创新。我们要学习数据库所有的精华,但更要创造出新的数据库系统,为新的数据库理论做出中国的贡献。
从这个意义上来说,中国数据库界有非常多机会。
《新程序员》:HTAP发展缓慢,但仍有不少厂商将其作为演进方向,如TiDB、TBase等,HTAP是否会成为一种趋势?
周傲英:HTAP是数据库人的理想,算是一个终极目标,就是把在线分析处理和在线事务处理都放在同一个数据库、同一个系统中,这是非常美好的愿景。
但是,我们应该摒弃“一个数据库能解决所有问题”这样的执念。“一招鲜”“一个工具解决所有的问题”,这类理念很多场景中需要,比如瑞士军刀,里面有小刀、指甲剪、剪刀、螺丝刀等等,但实际上这些东西我们用的多吗?其实不多,只是在野外或者其它特殊情况下的装备。
想象下,如果我们建立一个系统,它能把所有相关数据的功能都放在里面,比如做时空分析、序列分析,或者做数据流,那会是什么样的景象?事实上,琳琅满目的数据工具和数据技术会让想要把数据用起来,真正发挥数据威力的人感到无所适从。如果有两个相近的功能,他们对存储、数据的要求,以及对索引的要求都差不多,把他们集中在一起——数据库人由来已久的理念,这就是我总结的数据库哲学:抽象。抽象就是找到共性的本质,就是合并同类项,抽取公因子。毕竟,我们都喜欢“集大成”,喜欢“集约化”。
早期的数据库理论界有个“泛关系模型”,是今年图灵奖获得者Jeffrey D. Ullman提出来的。泛关系理论在理论上确实值得称赞,但在实践中如果难以有效指导技术研发和应用推广,它的价值就不能真正体现。就像“统一场理论”一样,找到一个统一的东西,这是做学问和做技术的人的崇高追求,但很多时候只是愿景。从教学和编写教科书的角度来看,我们希望有一个简单的概念、简单的理念,能够把所有东西都概括。但在实践中不一定追求得到,要随着实践和认识的深入,才能逐渐提炼和抽象出来。
数据中台是实现数据集约化管理的可行方案。这个概念是中国企业家提出来的,我们应该赋予它丰富的学术内涵和技术内涵。数据中台以打通部门或数据孤岛的统一数据平台为基础,构建统一数据资产体系,并以API服务方式为全渠道业务(分析+事务)提供即时交付能力的企业级数据架构。其中,数据服务(Data as a Service,DaaS)尤为重要,以API的标准接口方式向前端的事务场景或分析场景提供服务,有助于在更多渠道发挥数据的作用。我认为数据中台的英文名称可以是“Data Power Platform”。去年四月,微软发布的Microsoft Power Platform我感觉就有这个意味在里面,因为“Data is Power”,是像交流电一样的Power。
《新程序员》:如今很多企业都在配置分布式数据库,为什么分布式数据库会在这个时候火起来?在可预见的未来几年,它会呈现出什么新的特征?
周傲英:在分布式数据库这块,我们学数据库的人特别有话说。1985年读研究生时专修数据库方向,那会儿市场上能找得到的数据库系统还只有dBase单机版,最早是运行在CPM系统上的,我们用的时候已经移植到DOS上面了,当时我们的梦想是要做分布式数据库。
就这样,研究生期间我们就在学分布式数据库,但一直以来,它所面临的一个极大问题是怎么处理分布式事务。其实,无论国内还是国外,分布式事务处理都是数据库人的切肤之痛,实践和理论都很难找到解决分布式事务处理的好方法。尽管国内也做了很多理论研究和实践探索,但基本停留在实验室和原型层面。
为什么分布式数据库会成为热点?我认为主要得益于两位重要人物,一位是2014年获图灵奖的Leslie Lamport,他是非常伟大的计算机科学家,不仅发明了我们所熟知的LaTeX,还在1982年提出了“拜占庭将军问题”。他用寓言式的论文论述在分布式环境,以及节点不可靠的情况下,如何保证容错能力,形成容错理论。拜占庭将军问题提出来以后,才有了所谓的Paxos协议,也才有了后面的Raft协议。
Paxos协议基本上是过去十多年分布式领域内一致性协议的代表,Raft协议作为Paxos协议的简化实现,对于构建在互联网之上的信息系统有特别重要的意义,因为互联网天生就是分布式的。有了对这些协议及其背后理论基础的认识,人们才知道原来可以在分布广泛、可靠性不高的节点上搭建分布式系统。进一步来说,在分布式的不可靠的计算环境下怎么保证各节点数据的一致性?如果数据在某个节点出了问题,其他的节点怎么保证整个系统的容错能力?对于这类问题的解答,Leslie Lamport做了很多基础工作。
另外一位是在伯克利当过系主任的Eric Brewer教授,有人把他比肩为分布式时代的哥德尔。Eric Brewer在1998年提出了“CAP定理”,提出一致性、可用性和分区容错性——这三个目标无法同时达到的理论。2002年,MIT的Seith Gilbert和Nancy Lynch给出了该定理的理论证明,作为分布式计算领域的公认定理,深刻地影响了分布式计算的发展。
基于这两个重大理论的提出,分布式数据库的发展路径被深刻影响。实际上,当上世纪八、九十年代开始研究分布式数据库的时候,整体系统基本存在于数据库人想象之中,是理论上的分布环境。进入到新世纪,架构于互联网之上的信息系统及其应用开始突飞猛进,人们在享受各种服务的同时,也对分布式计算有了感性认识,特别是在Leslie Lamport和Eric Brewer的理论深入人心之后,人们对分布式计算系统的认识达到了新的高度。
我们很多国产数据库企业就是从分布式计算系统做起,一开始就从成熟的系统切入。在Hadoop生态中,HBase作为数据存储系统既是分布的,又是并行的,通过副本机制实现冗余备份。在分布式系统中,数据至少在三个节点上存放,形成冗余备份。一般情况下,多副本可以并行运行,提高系统性能。在系统异常的情况下,多副本互相备份,形成容错能力。这种理论下的分布式数据库不同于八、九十年代的传统数据库。所以,我认为“分布式数据库”需要被重新定义。
在互联网时代,无论是计算系统、存储系统,还是数据系统,都是分布式的。在这种环境下研究事务处理,需要对它的概念和理论做更新的理解。事务处理的理论基础是ACID,我们需要分别重新理解和解读A、C、I、D。对一致性(C)和隔离性(I)的约束可以放松,原来是限制在一个点上,不管是C还是I都有严格的要求,可以根据不同的应用逻辑和计算系统状况,把它们放松到一个谱系。也就是说,可以有这样的C,可以有那样的C,可以有这样的I,可以有那样的I。这是一个崭新的时代,世界是分布的,互联网是分布的,数据是分布的,计算也是分布的。
以前我们学数据库的人是想象分布式计算环境是什么样的,现在环境已经存在了。当我们可以重新定义“分布式数据库”的时候,标志着国产数据库产业迎来了难得的机会。要把数据库理念用于真实的分布式环境中,会对分布式计算环境提出很高的要求,但眼下重要的是适应目前的分布式计算环境。
开放的未来:数据库即服务,模块化和全栈化的开放架构
《新程序员》:在过去一年,阿里的李飞飞老师一直在讲“云原生数据库”,OceanBase也有所涉及。我们看到,云数据库正在业界形成趋势,对此您怎么看?影响云数据库大规模落地的因素有哪些?您对企业部署云数据库有什么看法?
周傲英:大家都知道云是一种服务,所以我们谈论云原生数据库就一定要谈到云服务。我们都知道Thomas Friedman,他是美国公认的最有影响力的新闻工作者,三次获得普利策奖,同时是纽约时报的专栏作家。他有一本畅销书很有名,很多人都看过,就是《世界是平的》。2019年9月6日,他在北京的一个论坛上做了主题报告,题目是“世界是‘深’的”。会上,他讲的一句话让我印象深刻,也引发我的很多思考。大意是:我们的技术领域正在从“Service Technology”向“Deep Technology”过渡。
当我们在讲云原生数据库时,实际上是在“Service Technology”的范畴内讨论,但现在是从“Service Technology”向“Deep Technology”演化的阶段。当我们站在数据库的角度来说,这种“Service Technology”具体代入后就是“Database as a Service”,即DaaS。也就是说,数据库作为一种服务应该上云,变成Utility,方便更多人使用这种技术和能力。现在为什么特别强调“Cloud Native”?主要是我们还没有真正做到让数据库成为一种服务,还在努力往这个方向走。
回到20多年以前,我们了解Salesforce的时候,它就是一种云服务的雏形。Salesforce的发展就提出了很多新的概念和理论问题,比如说“多租户”的问题,不同的用户可能有一部分基础数据都是来自同一个数据源,不可能也不应该为每个用户存储一份,否则也没法保证更新时的数据语义正确性。多租户除了冗余存储问题外,另外一个就是安全问题。每位用户都会在意隐私数据是否会被其他用户看到。当大量数据放在云上,提供云服务的厂商如何保障数据安全是首要目标,这是Salesforce时代所关注的问题。如今这些问题仍然存在,比如存储的问题,不能各自为政,需要打通和集约化管理。但打通也有很多技术需要沉淀,比如怎么解决存储的问题。
技术发展也带给我们很多启示:第一,微服务架构,数据库里要融入微服务架构的理念;第二,容器技术,数据库和容器技术这类虚拟化技术进行融合;第三,Serverless——无服务器架构的方式。云原生数据库研究要从服务领域借鉴这些理念。
此外,我还想强调一点,就是要知道我们为什么要做云数据库,它的意义在于把数据库变成一种服务,所谓DaaS。云数据库的目的是把数据库变成像公用事业一样,像水、电、煤气一样,实现数据库的大众化、平民化。一是,采用社会化或集约化的方式建设数据库,改变当前每个单位都要自建数据库的现状;二是,降低各机构业务人员使用数据库的门槛,把数据库变成人人可用的利器。
云原生数据库作为一个崭新的理念,还有很多工作可以推进,不仅是数据库未来的重要趋势,也是我们发展数据库的难得机遇。中国有创新的商业模式和丰富的应用需求,秉承“应用驱动创新”理念,立足于解决现实问题,做好落地应用,进而形成技术体系,并在抽象出概念的基础上形成理论体系。
《新程序员》:近年来,国内很多数据库陆续宣布开源,像OceanBase。周老师您所讲“开源对国产数据库是一个难得的机遇”,是怎么思考的?为什么我们今天会纷纷选择开源?开源时需要注意哪些问题?
周傲英:要回答这个问题还需要回顾下开源的历史,知道它本身是怎么来的。加州大学伯克利分校可以说是开源数据库的鼻祖,Ingres最早就是用免费软件的理念打入市场。他们把Ingres作为产品系统推出来的时候,License就是免费的。数据库领域众所周知的PostgreSQL,操作系统领域的BSD,都是从伯克利大学的实验室研发出来的。近十年来,开源已经由个人的自发行为演变成企业或机构的商业行为,正在引起各国的重视,逐渐成为战略行为。可以说,开源不仅是一种发展趋势,更是一种文化和运动,也是一种精神和氛围。
它是如何形成这样磅礴气势的?主要是因为Hadoop,如果没有Hadoop,开源虽然终究会成为创新的主旋律,但在短时间内不会有这么大的影响力。我们的互联网为什么在新世纪能够获得这么大的发展?一个很重要的原因就是开源软件的应用。
开源数据库要做什么、怎么做?很重要的一点是拆解传统数据库系统,也就是要对数据库体系结构解耦,进行模块化、全栈化改造,把系统拆成一个个小的模块。只有这样,大家才能在某个小模块上做进一步的工作。当然,要做到这样,就需要有系统架构师。数据库管理系统(DBMS)架构是1969年提出来的,由七大模块构成,支持数据库的三层架构,模块和架构体系在数据库的发展过程中一直被遵循。但现在要做的事情是把这些模块打碎,变成几百个甚至更多的模块,模块之间能够相互组合,组装成不同的数据库系统。
事实上早在1995年,就有文章专门讨论“如何打破数据库管理系统铁板一块(Monolithic)”这件事。如今二十六年过去,国际数据库界在解决这个问题上的进展并不显著,但我们要走开源数据库的道路,首先就要着手研究和解决这个问题。
To开发者:做数据库首先要解放思想,把写代码当成创作
《新程序员》:数据库领域最重要的是什么?您可以从技术、开发者生态这些维度来谈。
周傲英:对数据库研发人员来说,最重要的就是解放思想。数据库商用产品经过近二十年的激烈竞争,留下来Oracle、IBM Db2、Microsoft SQL Server三大公司的产品。在他们之前,市场上少说也有几十种数据库系统,为什么后面形成了三足鼎立?为什么现在又到了一个新的阶段?因为我们看到,很多方面都在发生深刻的变化。
在技术方面,我们到了重新定义分布式数据库的时候,我们也要重新定义并行数据库,重新认识云数据库,云要真正落地实践。不能停留在原先的认识基础上,包括Spark三级体系结构、关系数据库理论、事务处理理论、数据库基准评测等等。但我们不是仅仅在这样的基础上继续往前走,还需要研究新技术、新理论。总结一句话,就是需要创新。创新的源头动力是应用,要解决现实的应用问题,应用驱动创新。
所以,以后是“One Size Fits a Bunch”的时代。原来“一统天下,独霸一方”的数据库系统,现在看来只是一个点。当然,这个点很大。但数据库系统原本应该是一条线、一个谱系,在这个线上有无数个点,对每一类应用都需要研发支持它的数据库。数据库的发展也符合“分久必合,合久必分”的规律。当前这个时代,我觉得是一个“分”的时代,各个方面都有可以做的事情,我们不应该只在原来单一的轨道上。
我经常打比方,说我们做数据库不忘初心,数据库的初心就是管理“Mission critical”的应用,何谓关键核心业务?就是那些涉及到人、财、物管理的应用,这种管理是精确管理,需要“Transaction processing”。现在我们发现不仅仅要管“Mission critical”,还要管“Trust critical”,就像区块链,区块链就是管“Trust critical”的应用,比如分享经济一类的应用,需要有数据和数学来构建信任机制和体系。还可以举其它类型的应用,比如互联网的协同过滤,也就是利用大数据和人工智能,进行商品或服务推荐,推荐给到你的商品就是你想要的商品,推荐的行走路线就是你想走的路线。这就是我们熟知的精准管理。
从精确管理到精准管理,从“Mission critical”到“Trust critical”,从数据管理的原点出发有不同的路线,每一条线都可以走。也就是说,关系数据库从数据管理的原点出发只走了一条线,如果我们回到原点,三百六十度各个方向有很多条线都可以走。所以说,现在是个多元化的时代,思想和经验都相互借鉴的时代。对于在中国学习数据库的学生和从事数据库的学者来说,这是一个难得的机遇。
《新程序员》:在过去,我们国家应用型人才非常多,但最近几年发现基础软件这块人才非常匮乏。在您的教学中,对下一代计算机数据科学人才的倡导主要基于怎样的思想?对于年轻程序员有什么建议?
周傲英:在中国,程序员是一个很大的群体,也是一个幸运的群体,因为程序员是可以用代码来改变世界的一批人。你们是《程序员》杂志的发起者,经过二十年的发展,和程序员们一起迎来了难得的机遇,祝贺《新程序员》。
我给程序员的建议是,Programming是你们的基本能力。但我们要先了解清楚Programming是什么。我经常说,Programming就像是作家写文章,程序员是用计算机语言来写程序,就像莫言这些作家写作一样,我们是要留下绝世精品,还是只传递一个基本信息?这个差别非常大。
软件是什么?软件是知识的结晶,是文化的结晶,是程序员对世界的理解和想像。以前,程序员非常信奉教科书教给的内容,现在仍然要把这些精华学到心里,但对我们而言,更重要的是从中悟出它的方法和道理。以前我们可能更多是采用所谓的“线性思维”方式,现在才发现要注重发展“非线性思维”。非线性思维是创新,就是要把创新变成信仰,要有创新的意识。有了创新意识,不墨守陈规,把所学的知识都变成智慧,而不只是守着它。守正不是为了守正,守正是为了创新,这里我重申一下对“守正创新”的理解:
这个时代对年轻人来说是最好的时代,我们从一个事情看到它背后的逻辑,理解透彻背后的逻辑就会有创新。
首先,要刻苦学习;其次,要升级思维,用现在流行的话来说,就是“升维思考,降维打击”。比努力更重要的是提升思维层次。如何才能做到升维思考?就是要在解决现实问题的过程中,深刻理解问题背后的逻辑。所以,“升维思考”和“降维打击”是不可分离的一体两面。对于程序员来说,好的程序员是要把自己变成一个思想家,就像好的作家首先是思想家一样,编程序和和写作一样,升维思考才能写出好作品。
本文部分出自《新程序员·新数据库时代&软件定义汽车》,即将正式上市!
2018年图灵奖得主、深度学习三巨头之一Yann LeCun(杨立昆),2020年图灵奖得主、龙书《编译原理》作者Jeffrey Ullman,英特尔副总裁Erez Dagan,阿里巴巴集团副总裁李飞飞,腾讯自动驾驶总经理苏奎峰……《新程序员》第二期,我们以「新数据库时代&软件定义汽车」为主题,邀请到国内外60余位学术领航人、技术大咖与产业先锋,为智能驾驶及数据库产业奉上酣畅淋漓的理论交锋及实战演练。
何谓新数据库时代?需要从过去和现在看未来。在“十问数据库”中,华东师范大学副校长周傲英、达梦数据库副总经理冯源、TiDB创始人黄东旭、OceanBase CTO阳振坤……各路产学研大神齐聚,从数据库国产化历史,到开源、云,再到数据安全,共话未来数据库走向何方。
扫描下方二维码,添加小助手,即刻加入《新程序员002》「读者群」,抢先一步获取杂志最新资讯,精彩内容不再错过。
《新程序员》立足于行业前沿,深度探索技术未来,通过音视频、图文专栏等丰富的多媒体形式为载体,全方位解读技术与产业,为中国开发者打开新时代的技术之门。
《新程序员001:开发者黄金十年》内容涵盖:
-
60位+ 技术大咖的经典观点与实践干货;
-
34篇 精彩文章;
-
13个 配文视频;
-
1000位+ 技术人才共同学习成长;
-
2张 开源核心技术全景工具收藏图。
无论你是编程爱好者还是职场萌新,无论你是资深程序员还是架构师、CTO,在《新程序员》里,你都会有所收获。
以上是关于对话周傲英:数据库人的切肤之痛的主要内容,如果未能解决你的问题,请参考以下文章