周烜:系统软件开发能力是数据库开发最核心的素质|OceanBase 数据库大赛评委访谈
“从 0 到 1,打造你的数据库”, 作为国内首个分布式数据库内核开发大赛,OceanBase 数据库大赛于 5 月 10 日公布 10 强名单,2021 年大赛正式落下帷幕。
决赛的结束,也是大赛分享的开始。我们对特邀评委和参赛队伍进行了系列访谈,邀请他们来分享自己对数据库未来趋势的观点、数据库研究的心路历程以及人才培养的建议。这次我们请来了本届特邀嘉宾 ——华东师范大学数据科学与工程学院副院长周烜教授,我们一起来看看他对数据库大赛的看法。
特邀嘉宾简介:周烜教授,华东师范大学数据科学与工程学院副院长,博士生导师,CCF 数据库专委会委员。周烜教授曾参与和负责多个国内外的科研项目和工业合作项目,开发各种数据管理系统。他的研究成果曾发表于多个国际一流的学术会议和期刊。于 2010 年入选教育部“新世纪优秀人才”支持计划。主要研究方向为数据库系统和信息检索技术等。
下为周烜教授访谈实录:
作为大赛评委,您对本次数据库大赛最深刻的感受是什么?
A:
这次大赛效果很好,整个组织和宣传都做得有声有色。在这个过程中,我们看到很多学校学生很积极地参与,华东师大学校的学生也非常积极的。
我们看到学生的表现还是感到非常惊喜的,特别是那些年纪比较小的学生,大四的本科生以及就读研究生一年级的学生,他们很多都走到了最后的总决赛。整个成绩来看,对数据库系统的理解、对代码的理解以及代码编写能力都表现得挺让人惊喜的,尤其是在数据库如此复杂领域里看到一大批拥有非常强的动手能力、实践能力的学生,这点让我印象非常深刻。
数据库是非常复杂的大型系统,在您看来,国产数据库有哪些机会和趋势?
A:
数据库从上个世纪 60 年代 70 年代开始兴起,很快就变成这个软件体系里面很核心的一个部分,但那个时候中国 IT 产业基本上还没有起步。从国产数据库发展历史上来看,过去很长一段时间里我们一直是跟随者。
当我们开始意识到要去做数据库的时候,整个数据库市场其实已经非常成熟了。在一个成熟的市场里面,你要去再进入这个市场,实际上是非常难的,它不单单是技术的问题,其实技术大家都能够学到,更多的是你。如果你学会了技术,你把这个产品做出来,你进不了这个市场。因为别人已经成熟的市场,已经有很多的产品在那个地方了,所以这个是国产数据库以前遇到的一些很大的问题。但现在我觉得是一个机会,当然有很多人也看到这个机会。
这个机会可以从两个层面来讲。第一个是我们对国产化的这个需求。从国家层面上来讲,这样的技术实力需要保存。所以国内会有一些市场专门针对国产化数据库去打开,这样给大家带来了很多生存的机会。
第二个就是说数据库本身在发展的过程中,它是在转型的。面对未来的这种应用开发在云平台上去做这种应用开发数据库叫云化,就要变得有特别强的扩展能力等等。以前那些老的系统可能逐步会被新的系统取代。
在这种新系统取代的过程中,我觉得国产数据库是有很大机会的。特别像 OceanBase 这样的系统,它在全世界来讲也算比较领先的分布式数据库系统。因为这个技术发展的变化,有新的系统需求出来的话,你能抓住这个机会,就能够在这个市场上站稳脚跟。
您最早接触数据库是什么时候?在从事数据库研究这么多年的心路历程中,您碰到最大的难点是什么?
A:
我最早接触数据库在大学,本科的时期学习了数据库这门课。后来到一家 IT 公司实习,需要用微软的 SQL Server 设计数据库并开发一套系统,那是第一次接触数据库。现在回想起来,当时做的东西相对初级。后来在研究生、博士阶段开始从事数据库领域的研究,数据库系统也成为了我的重要研究方向之一。
遇到最大的困难点,其实是在做数据库研究的过程中。要做出研究成果并不是很困难,因为只要把技术做一些比较深入的挖掘,能够有新的想法,就可以产生一些研究成果。但是比较困难的是,要做出有影响力的研究成果,让这些研究成果能够做成工业级并被业内采用。这就要求我们除了对技术足够了解,有新的想法。还要有很强的控制,对整个数据库在应用里面的趋势有比较强的洞察能力。能够看到未来大家需要的东西,看到未来可能数据库本身去迎合软件的发展变化,同时能够想到大家的需求,然后去研究一些可能有价值的问题,并把它做到在实际系统里面可以兼容,可以一步一步地让现有的这种实际系统根据你做出的成果路径去演进。我觉得这一点实际上对每个做数据库的研究人员来讲,都是很有挑战的事情。它不单单是技术能力、知识水平问题,还要有对未来的洞察力。可能需要一定的天赋,这是我认为在研究过程中最困难的。
您认为在校学生参加数据库大赛有哪些重要意义?
A:
在校生去参加这种比赛其实是对他们潜能的一种激发。在我看来,很多学生如果不去尝试这种高强度的研发,他们并不清楚自己的能力在哪。有的学生可能错过这些机会,他未必后面能够意识到自己在这些地方实际上是有潜力、有实力的。有这样的比赛,在这种竞争环境中,同时又有很多的激励,有利于去激发学生去发掘自我潜能。我觉得这个很重要。
比如从 OceanBase 数据库大赛结果来看,其实有些学生以前我们也没有关注到他,但他最后做下来确实成绩挺好,就令人刮目相看。
作为在校生,未来想要从事数据库工作成为数据库开发者,您认为现在最应该具备的核心素质是什么?与过去相比发生了什么变化?
A:
做数据库开发最核心的素质,我觉得是核心软件或者系统软件的开发能力。我们平时教学生,比如学习编程,学习软件,就比较注重这种算法的设计,理论上对算法复杂性的把握,解决一些比较困难的算法问题,这是现在我们教育里面采用的手段。但实际上数据库系统开发,其实算法层面上要求并不高。它要求更高的是一种架构能力。因为最后做出的系统是非常庞大复杂的。有特别多的代码,有很多人在里面做开发,这就要求把代码的架构设计得很好。它的模块化要做得很好,有利于未来系统不断地演进,不断地添加新的代码,不断地增加新的功能。这是软件架构能力对人的一个要求,而且整个软件还必须非常讲究性能。
其实这些都要求参与系统开发的人,对整个计算机硬件、体系有比较深入的理解。笼统地讲,就是系统开发能力。这跟平时的这种算法设计的能力其实不完全是同一种东西,很难在大学的教学训练里面做到。要从事数据库的研发或者研究的话,对于同学们来讲,更多要去参与这种大型软件的设计与开发、去把握这种架构的能力,这个我觉得最重要。
国内其实一直很缺乏底层技术系统的数据库人才,在您看来,我们应该如何加速数据库人才培养进程?
A:
我觉得数据库人才梯队的培养,它实际上是要花时间的。国内之所以缺少从事底层系统研发的人才,是因为我们很长时间都没有去做这件事情。国内的软件产业对这方面的投入很少。为什么少呢?也是因为其实没有这个市场,很多的市场都被国外的产品垄断了,所以他没有这样的一个梯队。照理说如果有一个梯队有资深的人,有经验的人,带着年轻人去做,慢慢地整个国产产业界这种人才体系就会比较完备,人才供应也会相对充足。
但现在实际上已经起步了,特别是数据库研发的体系下面,像 OceanBase 现在已经做了十多年的时间,逐渐会形成这样的一些梯队,其实还不够。如果要加快这个进程的话,我觉得会需要提倡高校的学生或者其他非系统软件的开发人员更多地去关注。比如说开源社区这种开源系统软件,投身到这些社区开发过程中;然后依靠社区的力量带动大家去学习系统软件的开发设计;再通过社区笼络更多的人才进去,有更多的开发者出来,我觉得这可能是一个比较切实可行的路径。
针对下一届数据库大赛,您有哪些建议和期待?以及对下一届参赛者有什么建议或鼓励?
A:
期待 OceanBase 继续办下去这个比赛,每一届的题目都针对之前的经验有一定的完善,可以让他们更多地去发挥实际的能力,这个我觉得是以后可以改进的。
另一方面,希望可以设置更丰富的奖项。像本届比赛,设置冠军亚军季军以及优胜奖、极客奖,这个奖金很丰富,奖项也不少。但其实还可以把它变得更多一点。比如有的同学可能代码能力很好,可以针对这方面设计一个奖项。有的同学可能创新度很高,可以考虑在创新度上面再设立一些奖项,让大赛奖项和认可更为丰富,可能会更有吸引力。
当然我非常鼓励,明年后年更多的同学能够参与到这个比赛里面去。因为就像我刚才说的,这实际上是一个激发自己潜力的很好的方式。第二个能够认识到系统研发过程中的很多乐趣,这个是我对大家的鼓励。
关于 OceanBase 数据库大赛
「2021 OceanBase 数据库大赛」面向高校青年人才,自2021年8月开始报名,从初赛、复赛到最终总决赛历时 9 个月,吸引了国内外包括清华大学、北京大学、中国人民大学、南洋理工大学、美国哥伦比亚大学等 246 所知名高校在内的共 1179 支团队,近 2000 名数据库爱好者参赛,开创了国内分布式数据库领域产教融合的人才培养新模式。
经过总决赛激烈角逐及现场答辩,来自中国人民大学的 NoPassCET4 团队获得冠军,华东师范大学的东亚男儿、电子科技大学的 push_d_ 团队获得亚军,华东师范大学的 lying_flat、华东师范大学和青岛科技大学的 Honiitro19 团队、以及华中科技大学的两只老虎吃萝卜获得季军。
更多大赛详情回顾可以点击《产教融合加速数据库人才培养 | OceanBase数据库大赛10强诞生》进行回顾!
钱卫宁:开源是培养数据库人才的关键|OceanBase 数据库大赛访谈
黑客松环节No.1,疫情隔离“顺手”拿了个奖| “OceanBase数据库大赛”华东师大队伍专访