揭秘云编程:处理动态数据的Bloom语言

日期: 2010-04-29 作者:杨东杰 来源:TechTarget中国 英文

  最新出版的MIT技术评论5/6月合刊登出了MIT评出的2010年度十大新兴技术,其中IT领域的发明占有重要的位置,大家一定注意到其中一项是云编程(Cloud Programing)而不是云计算(Cloud computing)。云计算作为一项巨大的平台变革,吸引了包括电信运营商,互联网提供商等多方利益体的角逐,但开发者在云计算时代的作用及前景却不很清晰,难道程序员的工作就只限于转换现有的程序到云平台上吗?

  MIT技术评论选择云编程作为2010年度十大新兴技术之一定有其深意,以下是MIT技术评论2010年度十大新兴技术专题中对云编程的报道。

  导读:面向云计算的新型编程语言的推出是否能解放程序员的成产力,令程序员成为云计算变革中的重要力量呢?

  看到Google、Amazon等公司所拥有的超大数据中心,人们都不会怀疑云计算提供了虚拟化技术展示其巨大的处理和储存能力的舞台,但在这个巨大的变革中,程序员群体该如何最大效果发挥自己的能量呢?

  今天,许多程序员在做的是转换现有程序使其能在云上运行,而不是创造出一种可以在任何地方运行的新程序类型。于是他们面临着这样的难题——如何跟踪和稳定地获得云中的数据和信息。只有这一问题得以解决,程序员才能真正开始利用云计算所展示出的无尽的可能性。例如,云应用可以使在线音乐销售商随时了解流行音乐的情况;如果一个歌手突然成为热门话题,他可以迅速自己网站中的广告和特惠服务来迎合顾客的需求。

  在加利福尼亚大学伯克利分校区,Joseph Hellerstein认为他可以开发一种软件来接管跟踪和获取云中数据的工作,这样就降低了程序员开发复杂云计算程序的难度。他的出发点是修改现有的数据库编程语言,使开发者能快速建立各种运行在云中的应用——社交网络、通讯工具、游戏等。近年来,不断改进用于隐藏对大规模数据的复杂操作的数据库编程语言已经出现,但如果这些语言能融入云计算的特性,那么程序员们就可以专心于业务的实现而不是纠结于对数据的微操作。

  然而这些语言的问题在于他们处理的是静态数据(data in static batches),不能够对不断变动(例如读取自监控网络的)数据进行处理。Hellerstein提出的解决之道是新型编程语言中引入动态数据的概念(动态数据允许在对其进行操作时变动),这样程序就可以监控即将到达的数据(或者永远不会到达)。

  这种新型语言叫做“Bloom”。现在,Hellerstein的团队已经在使用这种语言,并不断的对Bloom进行重构,添加一些重要的特性确保对主流云计算工具和框架技术的支持,例如分布式计算平台Hadoop。通过降低实现难度,该语言将吸引更多的程序员投入云编程,更多的新型云应用也将不断涌现。

  Hellerstein的团队将在2010年下半年推出Bloom语言,目前他们正在对该技术运行在实时应用(例如在线多人游戏、灾难监控)上的效果进行论证。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国