是的。如果你看看Dave Patterson和我这两位ROC的主要研究者的背景,你会发现他的主要背景是计算机架构和存储,而我的主要背景是系统构建和一些网络。
在RAD实验室项目中,我们沿着两个轴展开。一轴开始的想法是,嘿,当我们将这些东西应用于构建应用程序时,它们工作得非常好,我们能将这些想法应用于开发和调试连接应用程序的网络吗?因为所有有趣的应用程序都将按性质分布。不仅仅是集群,它们还将分布在各个数据中心。雷竞技电脑网站那么,我们能不能看看这些统计机器学习和可视化的技术,并将它们应用到一些核心的网络挑战中呢?当我们转向完全分布式应用时,我们正面临着这些挑战。
第二个轴是这些善于学习系统行为的机器学习算法和对系统有丰富经验的人类操作人员之间的“闭环”。操作人员通常具有良好的直觉和预感,知道是什么导致了问题,或者系统何时会转向不良行为。如果他们能直接将他们的知识传输到机器学习算法中,以加快算法的学习速度或提高其建模精度,那不是很棒吗?如果算法犯了一个错误或错误的判断,如果运算符能够询问算法以了解它是如何做出决定的,这样他们就能改善它的行为以应对未来的事件,这不是很好吗?我们很高兴能将最先进的机器学习技术与我们所学到的为系统操作员提供更好的工具相结合。
下一个项目的目标是解决某个特定的问题吗?
你必须有一个项目使命宣言来开始。RAD实验室为期五年的任务是使个人能够开发、部署和运行大规模的下一代互联网服务。
eBay最初的版本是由一个人用了四天时间编写的。但从那时起,eBay变得如此庞大,以至于不得不两次重建整个系统。几乎每次都是从头开始。类似地,谷歌一开始是作为一个大学研究的原型,但是为了使谷歌达到今天的规模,他们不得不筹集资金建立一个谷歌大小的组织。我们的目标是,如果你对下一个谷歌或下一个eBay或下一个混合有趣的东西有想法,你就可以达到一个类似谷歌的部署规模而不用建立一个谷歌大小的公司来做这件事。
大概是通过在云中构建一些功能来实现的吧?
基础设施将在某种意义上作为公用事业来运作。所以,我部署我的服务,如果它真的很大,它会自动开始接管额外的资源。它开始放大。从某种意义上说,这和你今天对电的看法没有什么不同。用一点,付一点。你用了很多,花了很多钱。但是,你不用担心供应部分。网格执行配置。你所要做的就是控制你的使用量。这就是我们想要达到的简单程度。实际上,我们有机会通过统计机器学习和可视化的结合来解决这个问题。
但世界上的谷歌是一个稀有品种。企业用户会学到什么?
我们认为企业级用户更重要,因为google的用户并不多。从某种意义上说,解决一个企业规模的公司的运营问题比解决一件大事的运营问题更具挑战性。因为如果假设有成千上万个企业规模的东西共享这些资源,那么每个企业规模的东西操作起来都很难。它只会增加很少的操作开销,因为否则我们就会限制资源网格中共存的资源数量。
好吧。
每当我们进行研究讨论时,我们总是说,不要只想到谷歌,亚马逊和雅虎。让我们想想长尾理论(指的是小公司实际上比大公司能接触到更多的个体消费者)。让我们考虑一个人他有一个中等规模的应用他的管理问题必须和管理问题一样简单如果我们要解决像谷歌这样的行星大小的东西。所以,我们实际上非常关心长尾巴。
如果你看看最近使用mash-up和服务组合的创新浪潮,看起来我们终于开始进入面向服务的架构的世界了。人们谈论SOA已经很多年了,但是我们终于看到了一些真实的应用。
Craigslist.com上有出租公寓的清单。谷歌有很棒的地图。把它们放在一起,你就能在地图上看到公寓出租。这正是面向服务的体系结构人员多年来一直希望发生的事情。它并没有完全按照他们所预见的方式发生,但重要的一点是,我们期望看到的许多创新不会来自于构建全新应用程序的人们。它将来自于人们组合应用程序和组件,然后在其上分层他们自己的一些功能。因此,典型的创新新应用程序不会是一大堆代码。这将是一个适度数量的代码,并依赖于许多服务的正常工作。
RAD实验室希望解决在这种环境下会加剧的一些问题。
它们之所以加剧,是因为构建服务的方式是,你拿一个现有的应用,把它作为你的构建模块之一,然后在上面放一些东西。这意味着你所依赖的所有东西都必须工作。这些东西所依赖的所有东西都必须工作。所以如果你能做到这一点,创新的水平就会大大提高。但前提是要确保金字塔不会倒塌。这是一个非常有趣的研究问题。
RAD有多远?
RAD实验室项目刚刚开始。它主要是由工业资助的。事实上,超过三分之二的财政支持来自于工业。Sun、微软和谷歌——这三家公司通常不会在同一句话中被提及——各自贡献了大量的支持。不仅仅是在金钱方面,还有与我们实际的研究关系。学生去公司,公司派人去我们的静修处。这是我们关注真正问题的方式之一,让每天都在与这些问题斗争的公司向我们提供建议。最近,IBM、惠普、北电、NTT-MCL和甲骨文也做出了贡献。
这些努力与IBM的自主推进相比如何?
多年来,我们与IBM一直保持着良好的关系,当我们开始ROC项目时,有人问我们ROC是否与自主计算相同。自主计算是一个伟大的愿景。事实上,你可能会说,通过RAD实验室,我们正朝着这个方向迈出一步,任何一项服务都只需要很小一部分操作员。这已经非常接近自主反应了。
但我认为在ROC项目中一个重要的不同是我们说过我们还没有准备好把人类排除在循环之外因为我们不知道人类会做什么。人类没有好的工具来完成他们的工作。在现实生活中的服务中,人为错误实际上造成了很大一部分宕机时间。所以我们,中华民国项目,不会专注于将人类从等式中移除。相反,我们要看看我们能做些什么。我认为我们一直有相同的长期目标自主计算的人,但我认为我们的战术方法是不同的ROC。
对于企业用户来说,这些工作的好处有多远?
我们的长期愿景是创建一个原型平台,让单个人可以部署他们的服务,基本上打开它,然后忘记它,我不会屏住呼吸等待明年的结果。但是,我们正在开发的很多技术都是其中的组成部分,更好的统计机器学习算法,更好的可视化,我们的计划是在现有开放标准的背景下开发这些东西,所以无论我们做什么,都将与现有的框架一起工作。
因此,我们希望部署一些东西,并拥有可下载的软件构件,可以使用现有的工具。我们计划邀请公司来使用这些东西。伯克利的哲学基本上是把软件分发出去,这样它就可以部署在真实的环境中。所以,我认为我们所做的部分工作将在未来几年内实现。