周礼栋:现在是计算机系统和网络研究“最好的时代”

2019-07-02 | 作者:微软亚洲研究院

编者按:随时随地使用各种系统和工具,对现代人来说早已是司空见惯的事,但这一切完美工作的技术和服务并不是凭空出现的。正是因为微软亚洲研究院副院长周礼栋博士和他带领的团队这样从事系统和网络研究工作的研发人员在幕后不断的努力和创新,才能保证各种技术无缝、稳定、高效、持续地协同进行。

在本文中,周礼栋博士接受访谈,介绍了在这个系统拥有前所未有的复杂性的时代,如何精进系统与网络的研究工作,解释了像CloudBrain这样的项目针对实时故障排查来解决云规模问题,也探讨了网络相关的“灰色故障”问题,并告诉我们为什么现在是系统和网络研究的“最好的时代”。本文编译自微软研究院播客“The brave new world of cloud-scale systems and networking with Dr. Lidong Zhou”。


PHOTO_by SiXuanLin

周礼栋,微软亚洲研究院副院长

采访音频:

主持人:作为微软亚洲研究院的副院长,您领导着计算机系统和网络方面的研究,我知道您自己也从事很多研究。先简单告诉我们您做了些什么,为什么要做这些事情。让您每天起床的动力是什么?

周礼栋:我认为现在是研究系统和网络最激动人心的时刻之一。系统和网络的进步推动了众多技术的发展,比如互联网、网络搜索、大数据、人工智能、云计算等,现在我们每个人都依赖这些服务。反过来,所有的这些技术进展又为系统和网络带来了前所未有的复杂性、规模性、动态性。而系统就是在混乱中带来秩序,把所有那些原本毫无关联的部分整合成一个统一的整体。

近年来,随着系统的发展,一些传统的系统专业知识,比如分布式系统、操作系统或网络,已经不足以解决我们面临的挑战。我们还必须掌握其它领域的知识,比如数据库系统、编程语言、编译器、硬件、人工智能、机器学习和深度学习等。在微软亚洲研究院,我们把一个拥有不同专业知识的团队聚集起来,一起解决那些最具挑战性的问题。

主持人:近20年的职业生涯中,您一直致力于推进分布式系统的理论和实践。请谈谈这些年来您参与的项目,以及您为分布式系统所做的技术贡献。刚刚提到了系统的复杂性,您如何看待这些年的演变呢?

周礼栋:我们正进入分布式系统的时代。作为分布式系统研究人员,我们总是相信,我们在做最重要的部分。微软研究院拥有独特而优越的联系理论和应用的研究和实践环境,让我们有机会了解产品团队面临的的技术挑战。在帮他们解决难题的同时,我们也有足够的灵活性,不局限于解决当前具体的问题,而是从更长远的视角深入思考问题的本质,思考开发什么样的新理论、新方法来应对这些挑战。2000年初,当微软开始做网络搜索时,我和Roy Levin、Leslie Lamport等当时的同事一起和搜索的开发经理开会,了解他们遇到的分布式系统方面的挑战,并分享我们研究的分布式系统协议,它能保证分布式系统在各种故障下持续正常运行,并提供可靠的故障搜索服务。刚开始,开发经理认为他们可以自己实现故障处理和容错。但是几个月之后,面对众多复杂的情况,他开始与我们合作,来支持和实现那些协议。

在开发各种协议时,我们倾向于做一些假设,比如可以容忍的故障数量。当我们做研究时,这些假设是可行的。但在实践中,我们必须考虑假设不成立的极端情况。理论和实践是有区别的。在微软研究院工作的好处是,你可以接触真正的问题,让你了解哪些假设是合理的,哪些假设不合理,然后思考从更广泛的意义上解决这些问题的最好方法,而不只是停留在解决某个特定的问题。

主持人:除了技术难题的研究,您也一直致力于推动系统研究人员的社区发展,能否分享一下您推动亚太地区系统研究人员社区发展的经验?尤其是亚太系统研讨会(APSys)的发展及成果。

周礼栋:一直以来,美国都拥有非常强大的系统社区。最近十几年,我们看到欧洲系统界的成长和壮大,欧洲的系统研讨会开始兴起,并发展成成功的EuroSys会议。健康的学术社区和学术会议可以极大地促进一个区域内的学术研究,吸引更多研究人员的参与。

2010年,我已经在微软亚洲研究院工作,我和同事们想为亚太地区的系统社区贡献一些力量。于是,我们举办了第一个亚太系统研讨会(APSys)。那是一个非常小的开端,但此后它的发展远远超出了我们的预期。今年8月我们将在杭州举办第十届APSys研讨会,来自世界各地的研究人员和专家都在为研讨会的成功做贡献,它的影响力已经远远超出了某个特定的地区。

主持人:您把这归功于什么?

周礼栋:首先这是自然趋势,这些年亚洲出现很多技术进步,研究社区向亚太地区扩展是必然的。另一个原因,是整个社区真正走到了一起。许多顶尖的系统研究人员都来自亚太地区,我们想回馈亚太的愿望非常强烈。

主持人:2017年,在您的争取下,计算机系统领域顶级会议操作系统原理研讨会(SOSP)成功在上海举办,据我所知,竞标的难度堪比承办奥运会!

周礼栋:SOSP是计算机系统界最重要的会议之一,最初一直在美国举行,后来开始在欧洲国家轮流举办。2011年开始,我们和上海交通大学的陈海波教授开始为亚太地区争取SOSP的举办机会,并得到了ACM SIGOPS的两任主席和很多同行的鼎力支持。经过三次努力,SOSP最终在2017年来到上海,吸引了创纪录的800多名参会专家。这次会议对亚太地区的系统研究的意义重大,我们很高兴看到越来越多来自亚太的高质量研究出现在顶级的系统学术会议上。

主持人:让我们谈谈教育。微软亚洲研究院举办的中国计算机系统教学研讨会今年已经是第四届。图灵奖得主John Hopcroft称赞它是“迈向改善教育和培养世界级人才的一步”,请分享您对这个研讨会的看法?

周礼栋:首先,系统教育需要更进一步。对微软亚洲研究院来说,我们非常自豪能通过研讨会将来自世界的系统研究和教育人员联系在一起,促进欧美和亚太地区的的交流。另外,通过研讨会,我们也致力于培养下一代系统科学家和工程师。在这个过程中,我们得到了像Lorenzo Alvisi、Robbert Van Renesse、Geoff Voelker等知名教授和中国系统界一线教授的支持,他们全情投入参与研讨会。相信有这些充满激情的教授,我们将看到中国发展出更强大的新一代系统研究人员。

主持人:您曾经提到,在云计算和人工智能时代,我们设计系统的方式要发生根本性转变。哪些事情发生了变化?如何构建下一代系统?

周礼栋:过去的30年里,计算机系统界致力于系统可靠性的工作,开发了很多相关技术和网络协议,以为它们可以解决所有的问题。这套机制源自上世纪70年代末的飞机可靠性机制研究和设计。我们根据这类系统故障做了一些合理的假设,提出了现在仍然适用的网络协议。

但比起之前的系统,云计算系统要复杂得多,发展也更迅速,过去的很多假设被打破,有时应用了所有的现有方法和理论都无法解决这个僵局。

另一方面,过去的计算系统很容易理解,但现在的复杂性已经超出了我们的理解。但很多新技术能带来更有趣的改变,例如机器学习和深度学习,我们可以将其应用于处理系统的复杂性,这是一个非常有前景的方向。

主持人:让我们聊聊云时代的故障。在不那么复杂的“前云时代”,您如何处理异常和故障,现在又在尝试哪些新方法呢?

周礼栋:过去,我们研究的系统可靠性机制是基于过时的故障假设。但是,随着某些故障假设不再成立,我们定义了一种新的故障类型,“灰色故障”,一个系统组件不再是“非黑即白”,从某种角度看,它的行为是正确的,但在另外一个角度却不是。“灰色故障”是许多云计算系统宕机背后的主要原因。

对我们而言,云计算服务故障每时每刻都在发生,但是很难找出哪些故障更加重要。我们要了解故障,并进一步了解整个系统的运行情况。我们在试图弄清什么时候、何种情况下,灾难性的故障会发生,进而阻止它的发生。

CloudBrain是一个云计算自动故障排除的研究,利用系统规模来帮助我们诊断问题,找出问题所在。它有三个组成部分:一是准实时监控和诊断系统目前的状况,而不是在事后查看和分析系统日志;二是全局视图,不仅是对系统进行单次观察,而是融合对系统的所有观察,理解整个系统如何运行,哪个部分存在问题;三是统计推断:用统计方法真正推断出存在问题的部分。这个项目把大规模数据处理的挑战,转化成了解决系统复杂性的新手段。

主持人:这个灰色故障的研究进展到了哪个阶段?

周礼栋:我们离彻底解决问题还有距离,但是已经可以解决一些特定的问题,如DeepView和CloudBrain两个项目已经整合到Azure来处理与网络有关的问题。我们也在探索其它有趣而实用的想法,比如从思维方式上根本改变程序设计的范式。以前的防御性编程设计强调的是完善的异常处理,但在大型复杂的系统中仅仅处理异常是不够的。因此,在我们最新的研究工作中,我们将异常处理的逻辑改为异常报告和汇总分析。实际上,我们也在构建一个系统,可以自动将传统的处理错误的代码转变成以我们期待的方式进行错误报告的代码,这样开发者不需要重写整个代码库。这为我们解决灰色故障提供了全新的思路和可能。

主持人:您是如何来到微软研究院的?为我们分享一下您的职业发展。

周礼栋:在我博士毕业的时候,导师给了我一个非常简单的建议,就是去那些能找到最好的同事的地方,去和那些可能有图灵奖水准的同事一起工作,所以我最终选择了微软研究院,那时,我们并没有图灵奖得主,十年后我们有两个!我觉得同事很重要,特别是在我职业生涯的早期。从某种意义上我学会了如何做研究,不是发多少论文,而是推动研究的内在激情。我职业生涯的第一阶段更多是个人发展,第二阶段是来到微软亚洲研究院,成为一个研究组的负责人,这不仅关乎个人发展,也关乎着如何组建团队,如何帮助他人成功,为他人的成功产生影响也可以带来极大的成就感。也是在那段时间里,我意识到自己的职责不仅仅是建设亚太地区最好的系统研究团队,还要为社区做出贡献。所以我们启动研讨会,并将会议带入亚太地区,还有人才培养和许多其它事情。在我看来,随着我们的职业发展,这些变得越来越重要。

这就是我职业生涯的三个阶段:始于个人发展、个人学习,爱你所做的,做你所爱的;然后开始不断为他人的成功做出贡献,提高影响他人的能力,并积极地影响他人;最后是思考自己能为整个社区、整个社会做些什么。我很幸运在这个过程中能结识很多优秀的领导和同事,并从他们身上学习到很多。

主持人:我想请您对刚刚涉足系统和网络研究的研究人员提供一些建议,您认为即将出现哪些尚未解决的重大问题?

周礼栋:在这个时代从事计算机系统和网络的青年研究员是很幸运的。Butler Lampson曾说过他自己非常幸运,因为他经历了70年代末、80年代初的计算范式变革。而现在,我们也正处在一个变革时期。上一次的计算范式变革中,施乐帕克研究中心的研究人员定义了以后30年的计算机。即使是现在,我们仍然生活在他们定义的世界里:电脑、手机、鼠标、激光打印机、用户界面。上一次的计算范式变革的原因是计算机变得越来越强大,能把一台巨型计算机的计算能力装进一台个人电脑里。

现在的计算能力达到了另一个里程碑,计算能力将隐形于我们周围,计算支持的智能将无处不在。计算机的虚拟世界和我们的物理世界之间的界限将会消失,这将带来新一次的范式变革,我们的首要任务是要探索在接下来的十年二十年里,计算到底意味着什么。我们必须从一个不同的角度来看待未来世界,而不仅仅是关注系统和网络协议的渐进式改进。未来,我们不会是在电脑前才能进行计算,而是可以利用身边无所不在的计算能力。这一切都亟待我们年轻的研究人员通过研究和创新来实现。

标签