Cloud Computation Beyond Turing Machines 超出图灵机的云计算 Cloud Computation Beyond Turing Machines 李 德 毅 lidy@cae.cn 2009年11月29日 1
主 要 内 容 一、互联网改变了计算机和软件的工作模式 二、网络科学十年形成了对互联网的新认识 三、超出图灵机的云计算 四、云计算的基本内容 五、云计算对信息产业的影响
一、互联网改变了计算机和软件的工作模式
从图灵计算到网络计算的演化 图灵论文 73年 (1936年) 技术路线图 计算机 65年 (1944年) 软件工程 41年 (1968年) 图灵论文 73年 (1936年) 计算机 65年 (1944年) 软件工程 41年 (1968年) 互联网 25年 (1984年) 万维网 20年 (1989年) 网络科学 11年 (1998年) 维基百科 8年 (2001年) Cloud Computing 2007 Wiki 2001 Utility Computing 2000 Semantic Web 1999 eCommerce 1995 Mosaic 1993 WWW 1989 Internet 1984 技术路线图 TCP/IP 1974 ARPANET 1969 Hypertext 1965 Packet Switching 1964 WEB Services web2.0 , web3.0 WEB web1.0 I P V4 V6 Everything is over
通信发展的吉尔德速度是微电子发展的摩尔速度的2-3倍 1960 1970 1980 1990 2000 2010 theory university prototypes production use in research commercial early residential broadband home 100 kb/s 1 Mb/s 10 Mb/s 100 Mb/s 1 Gb/s port speeds FTTx系列技术迅速发展。100Mbps的端口速率能够传输1500余路传统话音(按照PCM编码速率计算)。 无线接入技术迅速发展。如3G达2Mbps, WiFi达11Mbps,WiMax 达34Mbps, B3G标志性指标1Gbps已经实验成功,为泛在的网络计算提供接入条件。 第三代移动通信系统(3G)的标准由ITU-R提出,因为其主要工作频段在2000MHz左右,并具有最高速率为2000Kbps的业务能力。 3G系统能够满足高速率传输以支持多媒体业务,它在室内静止环境可达2Mbps、在室内外步行环境可达384Kbps、在室外快速移动环境可达144Kbps。TD下行速度峰值理论可达3.6Mbit/s(一说2.8Mbit/s),上行速度峰值也可达384kbit/s。 其他各种无线接入技术主要包括: IEEE的802.15(无线个域网,WPAN)、802.11(无线局域网,WLAN)、802.16a/d(无线固定接入,FWA)和802.20(宽带移动接入,WBMA)等标准。其中WPAN主要包括蓝牙(Bluetooth)技术和超宽带(UWB,达100Mb/s)技术,而采用802.11标准的WLAN和采用802.16a/d标准的FWA也被称为WiFi(达11Mbps)和WiMAX (达34Mbps) 。
IT大公司纷纷宣布了自己的云计算计划,如此一致的行动在IT产业的历史上难得多见。 通信(尤其是光通信和移动通信)和网络(尤其是互联网)比可计算模型和软件理论发展快,且很快渗透到人类生活中去,加快了从图灵计算到网络计算的转变。 IT大公司纷纷宣布了自己的云计算计划,如此一致的行动在IT产业的历史上难得多见。
Alan Mathison Turing 1912.6.23 - 1954.6.7 Alan Turing, “On Computable Numbers with an Application to the Entscheidungs problem” —— Proceedings of the London Math Society 2 (42), 1936, pp. 173-198.
图灵命题 图灵1936年的传世论文《论可计算数及其在判定问题中的应用》主要是回答德国大数学家希尔伯特在1900年提出的著名的“23个数学难题”之中的第10个,问题涉及逻辑的完备性,即是不是所有的数学问题在逻辑上都是可解的。这篇论文说,有些数学问题是不可解的。 自动计算机的理论模型是在该论文中提出的,这种抽象模型可以把推理化作一系列简单的机械动作,被称作为图灵机的模型,有许多等价描述。歪打正着,图灵机模型到上世纪60年代却转变成用来说明可计算能力的模型。 为纪念该文发表30周年,1966年设立“图灵奖”,以纪念这位计算机科学理论的奠基人。
图灵机 邱奇-图灵论题 一条双向可无限延长的、被分成一个个方格的磁带, 格里写有符号 一个有限状态控制器 一个读写磁头 图灵机的动作由五元组确定: < q, b, a, m, q’ > 其中,q和q’为控制器的当前状态和下一状态;b和a为方格中的原有符号和修改后的符号,m指示磁头移动方向,或左或右或停。由状态和符号确定的工作过程称图灵机程序。 图灵论题: 丘奇论题: 图灵论题:凡是可计算的函数都可以用图灵机计算。 邱奇-图灵论题 邱奇论题:任何计算,如果存在一有效过程,它就能够被图灵机实现。
冯·诺伊曼结构的计算机 计算机由控制器、运算器、存储器、输入设备和输出设备组成。 基本原理:存储程序(stored program)并按地址顺序执行。 控制器按照程序顺序,逐条把指令和数据从存储器中取出并加以执行,自动完成由程序所描述的处理工作。 冯·诺依曼(1903-1957) 冯·诺依曼体系结构
冯 • 诺伊曼结构的计算机 计算机的核心包括运算器和控制器在内的中央处理单元(CPU)。 计算机系统是由软硬件组成的多级层次结构,由微程序级、一般机器级、操作系统级、汇编语言级、高级语言级组成。 从此,人们把CPU和操作系统看作计算机的“核”。 裸机 系统软件 中间件 应用软件
程序设计和软件工程 在每一个层次上都能够进行程序设计。 高级语言程序设计过程是“分析问题—>建立数学模型—>选择数据结构—> 设计算法—> 编程—>编译器逐层向下编译成为机器可执行代码由机器运行”的过程。 软件 = 程序 + 文档 = 算法 + 数据 + 文档
互联网之父 Robert E. Kahn Vinton G. Cerf (1938- ) (1943- ) (1938- ) Vinton G. Cerf (1943- ) 美国国家研究推进机构CNRI董事长 Google公司副总裁兼首席互联网顾问 因为在TCP/IP协议方面所取得的杰出成就,他们在2004年荣膺图灵奖, 2005年获得美国总统颁发的总统自由勋章。
万维网之父 Tim Berners-Lee (1955- ) (1955- ) 伯纳斯.李将超文本引入互联网, 创建万维网协议HTTP和HTML, 2004年成为全球最大的技术类奖——千年技术奖的首位获奖者,现任万维网联盟 ( WWW Consortium)主席。
维基之父 Jimmy Wales 1966.8.7-- Lawrence Sanger 1968.7.16 -- Wikipedia 2001年1月15日正式问世,目前世界上最大的Wiki系统,“让世界上每个人都能自由分享人类知识的总和”,创始人吉米·威尔士和拉里·桑格
用云作为logo表示网络环境和网络资源早就有之 汽车电子设备 GPS 导航 iPhone 移动电话 PDA包括很多 PDAs DCs TVs PCs 智能家电 。。。 传感器
中国互联网发展状况 网民人数 3.16亿 宽带网民 2.70亿 手机用户 6.70亿 年增长率 133% 手机网民 1.18亿 农村网民 (截至2009年3月31日) 网民人数 3.16亿 宽带网民 2.70亿 手机用户 6.70亿 年增长率 133% 手机网民 1.18亿 农村网民 8460万 中文网站 287.8万 网站域名 1682万 一个无处不网、无时不网、人人上网、时时在线的时代!
网络环境下每18个月产生的数据量等于过去几千年的数据量之和。 图灵奖获得者吉姆.格雷(Jim Gray)说: 网络环境下每18个月产生的数据量等于过去几千年的数据量之和。
30年前,电脑被送进千家万户…… 20年前,网络被送进千家万户…… 现在,服务被送进千家万户……
想一想:电子邮件客户端的变化
从电子邮件变迁看软件由制造业到服务业的趋势 1971 电子邮件诞生,用@符号隔离用户名和邮箱服务器 1988 Eudora 是第一个有图形界面的电子邮件管理系统 1995 WebMail诞生,用户可通过任何联网计算机获得邮件服务 WebMail 1996 Hotmail流行,并纳入MSN 2004 用户不再关心邮件管理软件自身,在同一个帐户下,用户可使用网络日历、文档处理、照片存储和协作等在内的多种服务。 The First Network Email Ray Tomlinson During the summer and autumn of 1971, I was part of a small group of programmers who were developing a time-sharing system called TENEX that ran on Digital PDP-10 computers. We were supporting a larger group working on natural language. Earlier, I had worked on the Network Control Protocol (NCP) for TENEX and network programs such as an experimental file transfer program called CPYNET. I was making improvements to the local inter-user mail program called SNDMSG. Single-computer electronic mail had existed since at least the early 1960's and SNDMSG was an example of that. SNDMSG allowed a user to compose, address, and send a message to other users' mailboxes. A mailbox was simply a file with a particular name. It's only special property was its protection which only allowed other users to append to the file. That is, they could write more material onto the end of the mailbox, but they couldn't read or overwrite what was already there. The idea occurred to me that CPYNET could append material to a mailbox file just as readily as SNDMSG could. SNDMSG could easily incorporate the code from CPYNET and direct messages through a network connection to remote mailboxes in addition to appending messages to local mailbox files. The missing piece was that the experimental CPYNET protocol had no provision for appending to a file; it could just send and receive files. Adding the missing piece was a no-brainer -- just a minor addition to the protocol. I don't recall the protocol details, but appending to a file was the same as writing to a file except for the mode in which the file was opened. Next, the CPYNET code was incorporated into SNDMSG. It remained to provide a way to distinguish local mail from network mail. I chose to append an at sign and the host name to the user's (login) name. I am frequently asked why I chose the at sign, but the at sign just makes sense. The purpose of the at sign (in English) was to indicate a unit price (for example, 10 items @ $1.95). I used the at sign to indicate that the user was "at" some other host rather than being local. The first message was sent between two machines that were literally side by side. The only physical connection they had (aside from the floor they sat on) was through the ARPANET. I sent a number of test messages to myself from one machine to the other. The test messages were entirely forgettable and I have, therefore, forgotten them. Most likely the first message was QWERTYUIOP or something similar. When I was satisfied that the program seemed to work, I sent a message to the rest of my group explaining how to send messages over the network. The first use of network email announced its own existence. These first messages were sent in late 1971. The next release of TENEX went out in early 1972 and included the version of SNDMSG with network mail capabilities. The CPYNET protocol was soon replaced with a real file transfer protocol having specific mail handling features. Later, a number of more general mail protocols were developed. 人们可以通过任何联网的计算机在邮件网站上维护他们的邮件帐号,而不是只能在他们家中或公司的联网电脑上使用邮件。这种邮件是由Hotmail推广的。如今Hotmail已经成为一大热门网站,微软在8月宣布,邮件服务的用户已经达到了1.1亿。但微软在1998年收购此网站的时候却仅用了4亿美元,这个价格后来令Hotmail的创建者沙比尔·布哈蒂尔后悔不迭。 Thunderbird, Outlook和Foxmail等邮件管理软件也提供基于Web的服务。
想一想: VISTA操作系统规模为什么这么大?
Windows操作系统的演化 由于Windows面向太多的企业、服务器和个人等不同应用,成为“千人一面”的操作系统,软件规模越来越庞大 功能扩展 vista 防火墙和用户安全 多媒体平台系统 网络和通讯等功能 即插即用对各种外设的支持 通信服务 多用户多任务系统 …… Server 2003 XP me 由于Windows面向太多的企业、服务器和个人等不同应用,成为“千人一面”的操作系统,软件规模越来越庞大 98 95 2000 3.2 3.1 1 图形化操作界面 2 多用户多任务系统 3 即插即用对各种外设的支持 4 多媒体平台系统 5 面向用户 6 32位线性寻址的内存管理 具体Windows的发展过程 1.Microsoft在1983年开始研发Windows 1.0,并于1985年11月20日正式发布。由于仅仅是由字符堆砌,界面非常简陋,所以后来有人将其评价为最不成功的作品。主要特点有: 1、引入了Apple Macintosh中的鼠标功能,用户可以通过鼠标点击完成大部分的操作。 2、自带了一些简单的应用程序,包括日历、记事本、计算器等等。 3、允许用户同时执行多个程序,并在各个程序之间进行切换,这对于DOS来说是难以想象的。 4、可以显示256种颜色,窗口可以任意缩放,当窗口最小化的时候桌面上会有专门的空间放置这些窗口(其实就是现在的任务栏)。 5、在Windows 1.x中另外一个重要的程序是控制面板(Control Panel),不过功能非常有限。 2.Windows 2.0于1987年12月9日发布,与Windows 1.0相比,Windows 2.0做的改动并不多,但它基本上可以充分 发挥当时的286的性能。我们回过头来看历史,会发现Windows 1.0和Windows 2.0这两个版本并没有取得很大的 成功原因其实并不在操作系统本身,而在于硬件和DOS操作系统的限制,因此,简单的将其列为不成功的作品也 并不合适。Windows2.0的主要特点有: 1、 用户可以缩放窗口,并可以同时显示多个窗口。 2、 突破640K基地址内存的束缚,更多的内存可以充分发挥Windows的优势。 3、 加入了功能表和对话框。 4、 增强了键盘鼠标的功能。 3.第3页:帝国的崛起!——Windows 3.X 版 1990年5月22日,Microsoft迎来了第一个具有时代意义的作品——Windows 3.0,虽然很多人更愿意将 Windows3.1作为Microsoft跨时代的作品,但毕竟Windows 3.0是Windows 3.x系列的起点,假如没有Windows 3.0 的成功,也不会有更多人对后续产品的关注! Windows 3.0的主要特点有: 1、 具备了模拟32位操作系统的功能,图片显示效果大有长进,对当时最先进的386处理器有良好的支持。 2、 提供了对虚拟设备驱动(VxDs)的支持,极大改善了系统的可扩展性。 3、 用户界面和运行环境得到了很大的改进,系统开始支持16位色,DOS的文件管理程序被基于图标的程序管 理器以及基于列表的文件管理器所取代。 4、 简化了程序的启动,打印管理器也诞生了,控制面板成为系统设置的核心。 5、 模仿了苹果公司Macintosh的设计,使用一些新的图标。 6、 开发了Software Development Kit (SDK),来帮助硬件厂商开发驱动程序,使操作系统能与硬件完美 结合。 1992年4月,一个更为成熟的版本Windows 3.1诞生了。正如前面我们提到的,很多人将它列为可以载入 史册的操作系统。Windows 3.1添加了多媒体功能、CD播放器以及对桌面排版很重要的TrueType字体。次年发 布的Windows for Workgroups 3.11又引入了对网络的支持——包括以太网和当时如日中天的Novell Netware, 并利用对等网络的概念构建Windows工作组网络。 第4页:有中文版啦——Windows 3.2 1994年Windows 3.2发布,这也是Windows系统第一次有了中文版!由于消除了语言障碍,降低了学习门槛, 因此在国内得到了较为广泛的应用。 第5页:革命成功了!——Windows 95 1995年8月24日Windows 95发布,这个操作系统开创Windows新的纪元。新的操作系统发生了质的变化,具有 了全新的面貌和强大的功能,这在某种程度上也宣告了DOS时代的结束。 Windows 95的主要特点有: 1、 更加优秀的、面向对象的图形用户界面,从而减轻了用户的学习负担。 2、 全32位高性能的抢先式多任务和多线程;内置了对Internet的支持。 3、 更加高级的多媒体支持(声音、图形、影像等)。 4、 即插即用,简化用户配置硬件操作,并避免了硬件上的冲突。 5、 32位线性寻址的内存管理。 6、 良好的向下兼容性。 第6页:向企业进军!——Windows NT4.0 1996年8月,Windows NT 4.0发布,事实上Windows NT 4.0并不是Microsoft的第一款面向企业的操作系统, 之前在93、94年Microsoft都相继发布了3.1、3.5等版NT系统,但它们都没掀起什么大的风浪,而Windows NT 4.0则彻底改善了Microsoft在服务器领域的优势…… Windows NT4.0的主要特点有: 1、 通信服务:内置强大的通信服务,如传输控制协议/Internet协议(简称TCP/IP)网络、路由和远程访问 您可以简单的将这些性能添加到嵌入式解决方案中。 2、 完全的Win32 API支持:完全的支持Win32应用程序编程接口(API),您可以跨所有Windows NT平台创建标 准化应用程序。 3、 高级编程性能:高级编程性能包括支持组件对象模型(COM)、分布式COM(DCOM)和电话API (TAPI),使用者 可以在一个可重用的、面向对象的环境中快速构建革新的解决方案。 4、 支持Windows NT服务:支持Windows NT服务,例如事件察看器和性能监视器,可以为使用者的嵌入式解决 方案提供增强的监视和报告功能。 5、 远程可管理性:Microsoft和第三方提供的管理特性可以简化嵌入式解决方案的管理工作,甚至还可以将 这些特性集成到信息技术(IT)管理基础构架中。 第7页:成功的革命不会只有一次!——Windows98 1998年6月25日Windows98发布,这个操作系统基于Windows 95之上,并改良了对硬件标准的支持,例如MMX 和AGP等。Windows 98 SE(第二版)发行于1999年6月10日,它包括了一系列的改进,例如加入了Internet Explorer 5、Windows Netmeeting等软件。Windows98的主要特点有: 1、 Windows 98的一个最突出的特点就是往Windows 95中加入了浏览器。 2、 融入了用于Internet通信的套装工具,包括用于电子邮件的Outlook Express、网络视频会议NetMeeting、网上信息发布Netshow、网页制作FrontPage和个人Web服务器Personal Web Server等。 3、 Windows 98提供了FAT文件系统的改进版本FAT32。 4、 实现了完整的用户注册功能,这样可以支持更全面的多用户访问体系及提供用户级安全保证等。 第8页:昙花一现——Windows Me 相对Windows 98来说,Windows Me变化更多的还是在其界面上,似乎也仅仅如此,由于Windows XP的快速推 出,Windows Me犹如昙花一现,很快就消失出我们的视野。Windows Me的主要特点有: 1、系统还原:如果说Windows Me在功能上和Windows 98有什么较大的区别,那就应该是系统还原。这个功能 也延续到Windows后面的版本。 2、Windows似乎什么够想集成,这次其集成了压缩功能,并且还可以对压缩的文件进行加密,但美中不足的 是不能对文件进行压缩的操作。不过更多的用户并不喜欢这个功能,而更多的还是使用其它压缩/解压缩工 具软件。 第9页:告别了“蓝天白云”——Windows 2000 从Windows 95开始的“蓝天白云”在很长一段时间内出现在用户的眼前,2000年12月19日Windows 2000的出现 改变了这一切,Microsoft似乎想用这款操作系统向大家证明,Microsoft不只有“蓝天白云”…… Windows 2000于2000年年初发布,它有四个版本,其中的Windows 2000 Professional大致可以算是Windows NT Workstation 4.0的升级版,由于这个版本的市场目标是取代Windows 95、Windows 98以及Windows NT Workstation 4.0,因此设计上走的是“博采众长”的路子,可以同时用于小型企业和个人桌面。另外的三个 版本主要面向较大的公司用户,包括Server、Advanced Server和Data Center Server。 Windows 2000的重要特点有: 1、 软件易用性和以前Windows 98等操作系统非常类似,软件的界面也相对好看了一些。 2、 Windows 2000在稳定性、安全性等方面也取得了长足的进步,特别是稳定上,摆脱了Windows 95和 Windows 98死机频繁的困扰。 3、 由于Windows 2000属于Windows NT的升级版,其网络管理功能大大增强。 4、 硬件上更大的支持也让Windows 2000有了更高的性能,Windows 2000 Professional最多支持达4GB的RAM 和两路对称多处理器。 第10页:告别“土老帽”——Windows XP Windows以往的用户界面一直饱受批评,但2001年10月25日Windows XP出现让人们改变了他们的看法,并且和 以前的windows桌面系统相比稳定性也大大提高,不过由于微软把越来越多的第三方提供软件整合在自己的操 作系统中,XP开始受到了最猛烈的批评。这些软件包括防火墙、媒体播放器(Windows Media Player),即时 通讯软件(Windows Messenger),以及它与Microsoft Pasport网络服务的紧密结合,这都被很多计算机专家 认为是安全风险以及对个人隐私的潜在威胁。这些特性的增加被认为是微软垄断行为的持续。 Windows XP的主要特点有: 1、 Windows XP的用户界面比以往的视窗软件更加友好。 2、 充分考虑到了人们在家庭联网方面的要求。 3、 也充分考虑了数码多媒体应用方面的要求。 4、 由于硬件上又一次的升级,Windows XP的运行速度再次得到加快。 5、 充分考虑电脑的安全需要,内建了极其严格的安全机制,每个用户都可以拥有高度保密的个人特别区域。 第11页:神话依旧没有被打破——Windows 2003 为了继续保持领先的地位,Microsoft继续开发新的操作系统,2003年4月底Windows 2003发布了,这个操作 系统进一步加强了其在各方面的优势,不过由于Windows XP已经完全满足几乎所有用户的需要,所以Windows Server 2003的目标定在了利润更高的服务器市场。 Windows Server 2003的主要特点有: 1、 协助共享、管理、保护和备份内部网络上文件的工具和技术。 2、 加强在电子邮件及通讯方面的管理。 3、 保护Internet连接安全的技术,并支持应用关系数据库。 4、 使Windows Server 2003成为广泛地网站解决方案,并对.net技术扩展到服务器的应用范围。 NT4.0 3.0 NT 3.1 2.0 1.0 版本升级 85年 11月 87年 12月 90年 5月 92年 3月 94年 95年 8月 96年 8月 98年 6月 00年 9月 00年 12月 01年 10月 03年 4月 06年 11月 08年 时间
Windows绑定大量与网络相关的软件使得规模越来越大 “安全优先”的设计理念,引入许多新的安全机制和技术,提高用户终端的安全性 … 升级版本 Vista 面向商业,包含NTFS文件系统、EFS文件加密、增强硬件支持等 … Windows XP 整合许多的第三方软件 … Windows 2000 捆绑IE销售,给系统桌面提供HTML支持 … Windows 98 改良对硬件标准的支持并整合到桌面上 … Windows 95 Windows 3.* 改进界面、内存管理 添加声音I/O的基本多媒体支持、TrueType字体… 借鉴Mac OS … Windows 2.0 Windows 1.0 用户 图形界面… MS-DOS 85年 87年 90年 95年 98年 00年 01年 06年 24
操作系统对硬件配置要求越来越高 电脑耗能成为全球气候变暖的祸首之一 处理器 内存 硬盘 显卡 代码行数 Windows Vista 800MHz Pentium4 1GHz 32位或64位 512MB 推荐1GB以上 DirectX 9 64MB Windows Vista 15GB以上 约5000万行 233MHz 推荐Pentium III 500MHz以上 Windows XP Professional 128MB 推荐256MB以上 1.5GB 推荐4GB 约3500万行 4MB显存 233MHz 推荐PentiumⅡ 450MHz以上 Windows 2000 64MB 推荐128MB以上 1GB 推荐2GB Windows ME Pentium150 32MB 320MB 486 或586 16 MB 推荐24MB以上 Windows 98 500MB 约1800万行 486 或586 Windows 95 8MB 300MB 约1500万行 电脑耗能成为全球气候变暖的祸首之一
绿色IT 网络中心、数据中心和超算中心电耗惊人! 电纸书阅读时几乎不耗电 Google自己在建电站
用户不需要千人一面的操作系统 用户需要便宜、简单、省电、多元、个性化的端机 很快的上网速度 轻量化的操作系统成为大势所趋 !
想一想:个人建个网页要多久?
编程的变迁: 从精细编程(coding)到大块编程 (mega-programming) 了解Internet, WWW, 学习 web server, The simple HTML page… 十多年前:一个礼拜 现在:一个下午 鼠标点击、点击、点击…. 具有丰富应用的Blog页面就可以产生
如果通信不是个问题…… 如果网络不是个问题…… 如果沟通不是个问题……
计算机之间的相互作用多种多样 计算机病毒(能够通过修改其他程序并把自身拷贝包含在其中而感染这些程序的程序)在计算机之间传播 计算机之间的交互可归纳为:消息传递、数据交换和程序调用。 计算机病毒(能够通过修改其他程序并把自身拷贝包含在其中而感染这些程序的程序)在计算机之间传播 网络蜘蛛在万维网中各站点爬行,捕获网页内容,对词语进行索引编排,并发回主站点 网络机器人可以使用这台计算机,控制另一台(批)计算机的资源(带宽、存储空间和计算能力),机器人可以繁殖和传播
网络计算:蜘蛛在网页上爬行 Spider是基于Web的程序, 它通过请求站点上的 HTML 文档访问某一站点, 不断从一个站点移到另一个站点, 自动建立索引,加入到网页数据库中。 Spider 进入某个超文本时, 利用HTML 语言的标记结构来搜索信 息及获取指向其他超文本的 URL 地址,无需用户干预, 实现网络上的自动爬行和搜索。 Spider 每遇到一个新文档, 都要搜索它上面的链接。搜索策略以深度优先搜索为例, 它沿着一条选中 的链接向下搜寻, 顺着一级级链接查询到不再含链 接的Web 页面, 再沿原路返回出发点, 选择下一个 链接继续搜索,遍历 Web 空间。
网络计算:蜘蛛在网页上爬行 Spider 将每次搜索的结果( 文档名称、URL、 概述、链接等信息) 存放在 网页数据库中,所显示的结果就是从这 些数据库中调出来的。 像MetaCrawler 这样的Meta 搜索网站, 使用机器人去浏览其他机器人的搜索结 果, 将几个搜索站点的查询结果重新 组合起来形成新的列表。
互联网突破了图灵机的描述范畴 互联网上的计算以交互为中心,此计算机可以影响彼计算机的运行状态,和物理距离几乎无关; CPU只是网络上一个个自治节点中的可计算部分; 节点可以是异构的; 节点之间可存在弱耦合的关系; 互联网不存在。 集中统一的调度,顺序的、确定的输入,不能描述互联网的工作机理和交互机理。互联网不等同于一台虚拟的图灵机模型。
互联网成功实现了一群实现自我价值的人 博客(Blog)成为面向公众的个人信息发布系统,还衍生出移动博客、图片博客、微博客等; 播客(Podcast)成为个人网络广播站;闪客指用Flash软件做动画的人;拍客在摄影论坛张贴自己的作品,加入摄影讨论;黑客(Hacker)进入别人 系统,寻找漏洞,利用漏洞; 威客(Witkey)是网上“我帮人人、人人帮我”的一群人,在威客网站上公开自己的知识、经验、能力,能够提供的服务,或者提出问题,寻求服务。
互联网不是什么? 互联网 ≠ 世界上最大的计算机 互联网 ≠ ∑ 图灵机
互联网是什么? 互联网成为人人感知和认知不可或缺的装备,使得人的感知能力和认知能力挣脱了时间和距离的束缚,得到极大地延伸; 互联网成为人与人之间沟通的不可或缺的装备,使得人与人之间、人与社会之间沟通质量和效率得到极大地提升; 互联网正在向物联网渗透(CPS)。
互联网是什么? 互联网是人类二十世纪最伟大的发明,它改变了人类的生活方式、工作方式和休闲方式,改变了社会的民主、教育、经济、商务、健康与娱乐机制,已经成为推动新的技术发明和社会变革的最强大的发动机。
社区是什么? 社区成为网上从事某种专项事物的人群,或者从事某种专项服务的领域,社区就是商业圈、企业圈、娱乐圈、学术圈、业务圈、朋友圈等等。 社区规模可大可小,社区主题可粗可细,社区门槛有高有低,社区划分无穷无尽。
社区是什么? 社区的出现巧妙地解决了人工智能中无法解决的常识知识的界定和表达问题。 信息时代,人人都在社区之中,人人都在有差异的多个社区之中。
二、网络科学十年形成对互联网新的认识
Ten Years History for NetSci Watts, Nature, 1998 Barabási, Science, 1999 Physics Network Physics
Albert Barabási (1967- , Hungary) 网络科学的兴起 WS 小世界模型(1998) BA 无标度模型(1999) Albert Barabási (1967- , Hungary) Duncan Watts (1971- , America) Steven Strogatz (1959- , America) Réka Albert (Ph.D. in 2001)
A twenty-first century science If handled appropriately, data about Internet-based communication and interactivity could revolutionize our understanding of collective human behavior. —— D J Watts, NATURE, 1 February 2007
I want to make sense out of this, how do I do it? Characteristics of the realistic networks focused in network science:
Challenge : basic, but very hard How to understand networks? Preferential Attachment in Evolution Node Activity Local Effect Characteristics of the realistic networks focused in network science: Heterogeneity
互联网是网络科学研究的重要载体 互联网不是交响乐,没有总指挥,没有人为它规定开始、中间和结尾,在互联网发展过程中有协议或规范来定义它的架构,这一架构从来没有完整的规划,没有所谓的顶层设计。要有,那就是演化。万维网亦然。
网络科学告诉我们,互联网、万维网等现实世界中的网络具有下列特性: 小世界现象 无标度:二八定律和长尾分布 不均匀性(高集聚性) 脆弱性和鲁棒性并存 级联失效和连锁崩溃
70后们在干什么? PageRank算法(1998) HITS算法(1998) GN算法(2002) Sergey Brin 谢尔盖 布林,俄国人 拉里·佩奇,美国人 Sergey Brin (1971- , Russia) Larry Page (1973- , America) Jon Kleinberg (1971- , America) Mark Newman
2006年获得信息学领域最杰出数学成就奖——拉尔夫·奈望林纳奖(Rolf Nevanlinna Prize) Jon Michael Kleinberg 乔恩·克莱因伯格 1971年生,1993年康奈大学计算机学士学位,1996年麻省理工学院计算机博士学位。现任康奈尔大学计算机教授,美国工程院最年青的院士之一。 研究兴趣是网络与信息组合结构的数学分析与建模,创造了基于超链接分析的主题搜索算法HITS。 以解决重要而且实际的问题并能够从中发现深刻的数学问题(尤其是网络结构的数学分析方法)而著称。 I am a professor of computer science at Cornell University. My research focuses on issues at the interface of networks and information, with an emphasis on the social and information networks that underpin the Web and other on-line media. My work has been supported by an NSF Career Award, an ONR Young Investigator Award, a MacArthur Foundation Fellowship, a Packard Foundation Fellowship, a Sloan Foundation Fellowship, and grants from Google, Yahoo!, and the NSF. I am a member of the National Academy of Engineering and the American Academy of Arts and Sciences. 2006年获得信息学领域最杰出数学成就奖——拉尔夫·奈望林纳奖(Rolf Nevanlinna Prize)
任何人,作为网络的端用户,其端机上的资源(计算资源、存储资源、软件资源和信息资源等)和网络上的资源相比, 都变得微不足道。
无论用户是在进行网格计算、对等计算、还是信息搜索,哪些事情由端机承担?哪些事情由边缘网络承担?哪些事情由核心网络承担?这成为一个资源规划问题。网络资源对一个特定的在线端用户而言如何表示?
科学问题:谁瘦谁胖? 两个极端状况: 网络上没有任何信息资源,网络仅仅实现即时的交换,回到传统通信的交换时代。 所有信息资源都在主计算机(虚拟机)上,端机仅仅是人机即时交互,回到传统的主机/终端模式。
有了云计算,广大用户无需自购软、硬件,无需将自己的软硬件系统交给它人托管,甚至无需知道是谁提供的服务,只关注自己真正需要什么样的资源或者得到什么样的服务。
这种不需要额外代价就能获得信息资源使用上的柔性,按需获取,在IT历史上前所未有。 对于大量的中小企业,不再需要一开始就花费大量的投资来购买部署计算机软硬件设备和聘用维护人员;不必担心因为高估自身业务受欢迎的程度而过度部署造成资源浪费,或由于对广受欢迎的业务部署不足错失潜在的客户。 这种不需要额外代价就能获得信息资源使用上的柔性,按需获取,在IT历史上前所未有。 随着Web2.0的出现,“高接触、高利润、高承诺”的服务配置向“低接触、低利润、低承诺”转变。例如,在Web 1.0中,接受陌生人的信用卡付款有合同安排的付款处理服务,如VeriSign或Authorize.net。这种安排是牵扯到更大的业务关系,因此个人或者小企业要接受信用卡在线支付非常繁琐。但是随着PayPal的出现,任何个人无需合同就可以接受信用卡付款,没有长期承诺,只有很小的一点现收现付的手续费。这类服务所提供的“接触”(客服和客户关系管理)极少,甚至不存在,但是每个人都可以使用这种服务的现实让这个问题看起来不怎么重要。类似的,现在个人网页可以通过谷歌AdSense从广告中获利,不再需要与DoubleClick(现已被谷歌收购)这样的广告公司建立联系。这些广告也为Web2.0的应用程序提供了商业模式。个人可以通过亚马逊CloudFront直接发布网络内容,而不必经手Akamai那样的内容分发网络。 云计算的十大问题和应对(同时也是机遇)
买单买什么? 买知识产权(许可证)? 买硬设备?买软件?买配置? 买电?买电子垃圾? 从为我所有到为我所用——买服务
中小企业是云计算的最大受益者,用户应用成本的降低以及应用自由度的增加是云计算带来的基本驱动力。
信息服务不能简单地等同水电服务 信息服务 水电服务 信息不会损失 一次性使用 双向传送,双重角色 单向传送,单一角色 信息内容 无规划、无统一调度 有规划、有统一调度 个性化、多样化、多粒度 内容单一、通用 钱德沛教授:云计算和网格计算差别何在? 2008年10月16日,中国电子学会专家论坛——云计算研讨会在北京召开。前信息产业部部长、中国电子学会理事长吴基传,工业和信息化部副司长丁文武,李德毅院士、高庆狮院士、倪光南院士、钱德沛教授、郑纬民教授等专家学者,以及Google、微软、趋势科技、IBM等知名企业的专家汇聚一堂,共同讨论了云计算的概念、应用等问题。 席间,国家“十五”863计划“计算机软硬件技术” 主题专家组副组长、北京航空航天大学钱德沛教授介绍了自己关于云计算的看法,并分析了云计算与网格计算、Web计算等的差异,并提出云计算应该与网格计算结合、取长补短。 云计算与网格计算的概念 首先,究竟什么是云计算(Cloud Computing)呢?钱教授指出,云就是互联网——做网络的似乎总是把网络抽象成云;云计算就是利用在Internet中可用的计算系统,能够支持互联网各类应用的系统。云计算是以第三方拥有的机制提供服务,为了完成功能,用户只关心需要的服务,这是云计算基本的定义。 相对于网格计算(Grid Computing)和分布式计算,云计算拥有明显的特点:第一是低成本,这是最突出的特点。第二是虚拟机的支持,使得在网络环境下的一些原来比较难做的事情现在比较容易处理。第三是镜象部署的执行,这样就能够使得过去很难处理的异构的程序的执行互操作变得比较容易处理。第四是强调服务化,服务化有一些新的机制,特别是更适合商业运行的机制。 那么网格计算的特点又是什么呢? 网格计算有了十几年的历史。网格基本形态是什么?是跨地区的,甚至跨国家的,甚至跨洲的这样一种独立管理的资源结合。资源在独立管理,并不是进行统一布置、统一安排的形态。网格这些资源都是异构的,不强调有什么统一的安排。另外网格的使用通常是让分布的用户构成虚拟组织(VO),在这样统一的网格基础平台上用虚拟组织形态从不同的自治域访问资源。此外,网格一般由所在地区、国家、国际公共组织资助的,支持的数据模型很广,从海量数据到专用数据以及到大小各异的临时数据集合,在网上传的数据,这是网格目前的基本形态。 云计算与网格计算区别何在 可以看出,网格计算和云计算有相似之处,特别是计算的并行与合作的特点;但他们的区别也是明显的。主要有以下几点: 首先,网格计算的思路是聚合分布资源,支持虚拟组织,提供高层次的服务,例如分布协同科学研究等。而云计算的资源相对集中,主要以数据中心的形式提供底层资源的使用,并不强调虚拟组织(VO)的概念。 其次,网格计算用聚合资源来支持挑战性的应用,这是初衷,因为高性能计算的资源不够用,要把分散的资源聚合起来;后来到了2004年以后,逐渐强调适应普遍的信息化应用,特别在中国,做的网格跟国外不太一样,就是强调支持信息化的应用。但云计算从一开始就支持广泛企业计算、Web应用,普适性更强。 第三,在对待异构性方面,二者理念上有所不同。网格计算用中间件屏蔽异构系统,力图使用户面向同样的环境,把困难留在中间件,让中间件完成任务。而云计算实际上承认异构,用镜像执行,或者提供服务的机制来解决异构性的问题。当然不同的云计算系统还不太一样,像Google一般用比较专用的自己的内部的平台来支持。 第四,网格计算用执行作业形式使用,在一个阶段内完成作用产生数据。而云计算支持持久服务,用户可以利用云计算作为其部分IT基础设施,实现业务的托管和外包。 第五,网格计算更多地面向科研应用,商业模型不清晰。而云计算从诞生开始就是针对企业商业应用,商业模型比较清晰。 总之,云计算是以相对集中的资源,运行分散的应用(大量分散的应用在若干大的中心执行);而网格计算则是聚合分散的资源,支持大型集中式应用(一个大的应用分到多处执行)。但从根本上来说,从应对Internet的应用的特征特点来说,他们是一致的,为了完成在Internet情况下支持应用,解决异构性、资源共享等等问题。 那么,网格计算和云计算有没有可能取长补短、互为补充呢?钱教授提到,如果这两者结合起来,也许可以聚合大量分散的资源,从而支持各种各样的大型集中应用以及分散的应用。 最后,钱教授还谈到,在云计算技术方面,有三个需要关注的问题。第一是安全,因为要想作为公共基础设施必须取得用户的充分信任。第二是标准化,不能再走中间件的老路。第三是开源,要走开放的平台,这样才有发展。 云计算与网格计算的深入比较 作者:网界网 祁金华 在写这篇文章之前,曾经有很多人问过记者类似的问题,比如说,“云计算跟网格计算到底什么关系”、“他们两个的区别到底在哪里”、“能不能简单地讲一下其中的区别”? 其实,一下子很难讲清楚其中的具体区别。记者此前曾经在首次接触云计算概念时,将云计算看成“网格2.0”(参见:云计算:网格2.0,http://www.cnw.com.cn/P/165),这一点得到了一些业内人士的认可;后来记者也曾经翻译了美国《Network World》的一篇文章,澄清了有关云计算的一些定义(参见:云计算的五种定义考,http://www.cnw.com.cn/P/166)。 不过,记者认为这些都似乎还比较空泛。在采访过网格计算相关的技术专家和云计算方面的技术专家之后,记者尝试着给出一些自己的看法。 当然,从定义上来说,二者都试图将各种IT资源看成一个虚拟的资源池,然后向外提供相应的服务。云计算试图让“用户透明地使用资源”,而网格计算当初的口号就是让“使用IT资源像使用水电一样简单”。 根据维基百科所提供的定义,云计算是一种宽泛的概念,它允许用户通过互联网访问各种基于IT资源的服务,这种服务允许用户无需了解底层IT基础设施架构就能够享受到作为服务的“IT相关资源”。 而网格的内涵包括两个方面,一个方面是所谓的效用计算或者随需计算,在这一点上面,网格计算跟云计算是非常相似的,都是通过一个资源池或者分布式的计算资源来提供在线的计算或者存储等服务;另外一个方面就是所谓的“虚拟超级计算机”,以松耦合的方式将大量的计算资源连接在一起提供单个计算资源所无法完成的超级计算能力,这也是狭义上的网格计算跟云计算概念上最大的差别,也是本文要讨论的出发点。 目标不同 一般来说,谈到网格计算大家都会想到当年风靡一时的搜寻外星人项目,也就是说通过在本机安装一个屏幕保护软件,就能够利用大家每个人的PC闲暇时候的计算能力来参与搜寻外星人的计算。 这也说明了网格的目标,是想要尽可能地利用各种资源。它通过特定的网格软件,将一个庞大的项目分解为无数个相互独立的、不太相关的子任务,然后交由各个计算节点进行计算。即便某个节点出现问题,没有能够及时返回结果,也不影响整个项目的进程,甚至即便某一个计算节点突然崩溃,其所承担的计算任务也能够被任务调度系统分配给其他的节点继续完成。应该说,从这一点来说,作业调度是网格计算的核心价值。 现在谈到云计算的时候,我们就能够立刻想到通过互联网将数据中心的各种资源打包成服务向外提供。一般来说,尽管云计算也像网格计算一样将所有的资源构筑成一个庞大的资源池,但是云计算向外提供的某个资源,是为了完成某个特定的任务。比如说某个用户可能需要从资源池中申请一定量的资源来部署其应用,而不会将自己的任务提交给整个网格来完成。 从这一点来看,网格的构建大多为完成某一个特定的任务需要,这也是会有生物网格、地理网格、国家教育网格等各种不同的网格项目出现的原因。而云计算一般来说都是为了通用应用而设计的,没有专门的以某种应用命名的网格。 分配资源方式的不同 对于网格计算来说,其资源虽然也已经被池化,在外界看来就是一个巨大的资源池。对于要提交特定任务的用户来说,他并不知道自己的任务将会在哪些网格的物理节点上运行。他只是按照特定的格式,将作业任务提交给网格系统,然后等待网格返回结果。 而网格作业调度系统自动找寻与该任务相匹配的资源,然后寻找出空闲的物理节点,将任务分配过去直至完成。虽然网格能够实现跨物理机进行并行作业处理,但是需要用户先将并行算法写好,并且通过调度系统将作业分解到各个不同的物理节点进行,这个过程相对比较复杂,这也是很多网格计算被建设用来完成特定需求的原因。 国家教育网格项目组负责人金海教授曾经对记者表示,现阶段的教育网格还只能实现将某一个特定任务派往特定的某一个节点,也就是说网格可以监控某一个节点是空闲的,然后分派任务,但是如果没有合适的节点能够达到任务完成所需要的配置,那么任务就必须等待其他任务将资源释放出来,不能利用分散的配置。 而云计算是通过虚拟化将物理机的资源进行切割,从这个角度来实现资源的随需分配和自动增长,并且其资源的自动分配和增减不能超越物理节点本身的物理上限。尽管从控制端来看,云计算也将所有的IT资源看成是一个资源池,但是不同芯片的物理机会被归类到不同的资源池中。 比如说可以呼应某一个应用的请求,而给其分配一颗x86 CPU或者Power CPU、安腾CPU,分配内存、硬盘空间,再给其安装Linux系统、相关的应用,但是不能同时分配一颗x86 CPU和一颗其他的CPU以构成一个异构的环境。而且,如果节点中的物理机最高CPU数量是4颗的话,那么即使由10台这样的节点构成一个40CPU的资源池,也不能为某一个应用分配8颗CPU的虚拟节点。 从这种角度来说,Amazon在2006年所推出的EC2项目(Elastic Compute Cloud,弹性计算云)的确算的上是云计算项目,只不过那个时候云计算概念未兴起,而网格计算的概念方兴未艾,Amazon在那个时候依然用网格的概念向外推销该项目。 殊途同归 其实就像很多人大致了解的那样,网格计算与云计算的确有很多的相似之处,这两者都能够被看成是分布式计算所衍生出来的概念,都是为了让IT资源能够对用户透明,为了让IT资源能够达到更好的使用率。 从这个提高资源利用率的角度出发,逐渐诞生了Web服务的概念,然后网络公司通过部署数以万计的服务器构成庞大的计算资源,得以提供此前无法完成的新服务。企业或者个人能够通过互联网利用那些大网络公司所释放出来的计算资源,进行应用部署或者向外提供服务。这就是从网格计算到云计算的历史过程。 二者的意义就在于,无论是用户还是企业开发者,都能够通过互联网来获得数据或者进行计算,尽管本地资源有限,但是能够通过网络进行复杂的运算,其数据的计算过程对于用户来说就像互联网网络对于本地网络用户一样,正如大家所记得那个网络云,后端的实现是透明的。
三、超出图灵机的云计算
图灵模型的局限性 从初始字符串到终态字符串, 可认为是确定空间点到点的 映射,无法解决不确定性问题 通过时钟频率把模拟量近似为 数值量,并决定了读写磁头动作 的快慢,等粒度的细分决定 了数字化程度,至于这样的近似 是否可行,数值量如何返回模拟量, 均不在图灵模型考虑之内 图灵模型中没有考虑输入输出的形式化方法,输入输出、人机交互没有出现在计算过程中
从“以产品带服务”向“以服务带产品”方向发展 云计算 从“以产品带服务”向“以服务带产品”方向发展 网络增值服务 代表公司:Google 特点:向端用户收小头,向寄生在服务上的广告商要大头 企业发展路线图 面向大众的成套软件 代表公司:微软 特点:基于个人计算,服务大众市场 企业解决方案 代表公司:ORACLE 特点:面向领域,以企业解决方案供应商的面目出现 软件产品 代表公司: Informatics 特点:保护知识产权,以许可证方式销售软件产品 软件定制 代表公司:CSC 特点:为单 个客户提供定制软件,包括技术咨询、软件编程和维护。软件销售是一次性的
软件工程危机归根到底是图灵危机 软件工程太多地关注图灵计算,忽视了人机交互,忽视了机器行为通过人群的参与引发的相互影响。 50年代 60年代 互联网 云计算 软件作为单独产品,催生软件工程 软件附属于硬件 面向 过程 面向 对象 面向 构件 面向 领域 面向 大众 50年代 60年代 70年代 80年代 90年代 现在 面向过程:函数-面向对象:类-(面向细节)-面向构件 自从上世纪60年代为解决软件危机而诞生了软件工程学科。40年来,人们对软件工程的预言一直是发散的。尽管经历了面向过程、面向对象、面向构件等阶段,软件工程在许多软件项目开发中也得到一些成功应用。但是,形势仍旧不容乐观。目前软件项目完全成功的比例也只是从上个世纪80-90年代的10%上升到目前的30% 。“软件开发与维护费用居高不下、生产率低下,开发周期与版本升级时间过长,软件质量不能满足用户需要”这些传统软件危机依然存在。 软件的时代发展迫使软件工程寻找新的解决办法,主要表现在三个方面:软件从集中式向分散式发展,从单体软件到群体软件的交互与协同,从“为我所有”的软件到“为我所用”的软件。 软件的开发和应用越来越面向日益丰富的网络资源,软件系统在规模、用户数量、单元交互上都呈数量级的增长,成为一个复杂系统,超出人的理解和控制。 40年来,“软件危机”的呼声不绝于耳; 科学家们对软件工程发展的预测是发散的; 科学家们对软件工程的期望和实际软件自身的发展难以吻合 ; 软件工程太多地关注图灵计算,忽视了人机交互,忽视了机器行为通过人群的参与引发的相互影响。 62 62
图灵模型作用的扩大化 尽管图灵命题主要说的是数学的弱点,在解决数学问题时图灵机不能够做什么,如停机的不可判定问题。但是计算机科学家们却逐渐开始将图灵机用来说明可计算能力的模型,进而作为一种解决所有计算问题的模型,把图灵机作用扩大化了。 图灵自己也认为图灵机并不适于作为解决计算问题的通用模型。包括图灵和图灵奖获得者米尔纳等在内的学者尝试用交互机来扩展图灵机模型,形成超图灵计算。
图灵模型作用的扩大化 凡是有集中控制的高性能计算机、集群计算机、虚拟机、网络系统、分布式系统等依然可看作图灵计算。 40年的软件工程发展一直以图灵计算为中心。 人们在寻找交互计算的超图灵计算模型。 迅速发展的互联网改变了计算格局;互联网不存在集中统一的控制,不等同一台虚拟图灵机。
超图灵计算模式 Wegner, Leenwen等人提出基于图灵机的交互机器模型,如 site 机、交互机、多流交互机、持续图灵机(persistent Turing machine)等,企图扩展图灵机使其具有动态输入和输出能力。 尽管已经证明这些模型的表达能力比图灵机强,但是它们只描述单个交互式系统而不涉及复合系统,不能用来研究全部交互机制,不能用来研究互联网。 Wegner、Leenwen等人在研究超图灵模式的计算能力时,提出了很多基于图灵机的交互机器模型,如site机(site machine)、交互机、多流交互机、持续图灵机(persistent Turing machine,简称PTM)等,其基本思路是扩展图灵机使其具有动态输入和输出能力。尽管已经证明这些模型的表达能力比图灵机的更强,但是它们只描述单个交互式系统而不涉及复合系统,所以不能用来研究交互机制;另一方面,交互只能改变它们的工作带内容,而不能改变控制器状态集合和状态迁移关系等更本质的东西,所以表达能力可能受到限制。
网络计算强调把计算机嵌入到网络、环境或日常工具中去,让电脑笔记本消失,人们注意的中心回归到要完成的任务本身。 1991年施乐公司前首席科学家Mark Weiser提出普适计算思想。例如,他在办公室门前建造了一个喷水池,用喷水量和水柱高度来模拟显示网络上当前全球股价的走势。 网络建立起一个人与人可以充分沟通的公用计算环境,把群体智能融入网络。 计算模式(Computing Paradigm)在20世纪80年代经历了从主机计算(Mainframe Computing)到桌面计算(Desktop Computing)的革新,上世纪90年代以来计算技术的飞速发展,蕴育了新的计算模式:计算、通信和数字媒体技术的互相渗透和结合,其集中的体现就是互联网的发展。计算机在计算能力和存储容量提高的同时体积也越来越小,其发展趋势是把计算能力嵌入到各种设备中去,而且这些设备可联网使用。 传统的计算模式是以计算机为中心的计算(计算机的使用方法不符合人类的习惯;为了完成一项任务,需要与计算机进行的对话过于烦琐)和基于桌面的使用模式(用户要使用计算机,就需要坐在计算机面前;本质上说是一种私有模式,难以适应一个用户可能在不同地点和环境,甚至在移动过程中使用多台计算设备进行工作的情况。) 计算机技术进一步发展迫切地需要全新的计算模式,普适计算(Pervasive or Ubiquitous Computing,泛在计算)就是在这种情况下提出的。普适计算思想最早是1991年由施乐公司前首席科学家Mark Weiser在Scientific American的The Computer for the 21st Century中提出的。目前关于普适计算尚未有明确定义,但目标都是“要建立一个充满计算和通信能力的环境,同时使这个环境与人们逐渐地融合在一起”。 普适计算强调把计算机嵌入到环境或日常工具中去,让计算机本身从人们的视线中消失,让人们注意的中心回归到要完成的任务本身。Weiser的思想在90年代后期开始在国际上得到广泛关注和接受,目前已经成为一个极具活力和影响力的研究领域。 普适计算两个基本概念为“绑定”和“自发的交互”。 绑定:信息空间中的对象与物理空间中的物体建立相互的对应,使这个物体成为访问信息空间中服务的直接入口。绑定的两个途径有:一是直接在物体上嵌入一定的感知、计算、通信能力,使其同时具有物理空间和信息空间中的用途;二是为每个物体添加可以被计算机自动识别的标签,标签可以基于条码、红外和RFID等方式。 自发的交互:物理空间和信息空间之间无需人的干预的交互,即其中任一个空间状态的改变可以引起另一个空间的状态的相应改变。信息空间的状态改变映射到物理空间中,其最主要形式是数字化信息可以无缝地叠加在物理空间中。信息空间也可以自动地觉察物理空间中状态的改变,从而改变相应对象的状态或触发某些事件。 Mark Weiser泛在计算和目前计算机创造的“虚拟现实”截然相反,它强调计算和环境融为一体,而计算机本身则从人们的视线里消失。在泛在计算环境中,人们能够在任何时间、任何地点、以任何方式进行信息的获取与处理,而这个过程是在高度自动化的计算设备的帮助下完成。Weiser也是泛在计算产品的开山鼻祖,如早在1998年,他就在自己的办公室门前建造了一个喷水池,用喷水量和水柱的高度来模拟显示股价的走势。
新理念: 大众既是软件的使用者,也是软件的开发者;既是服务的消费者,也是服务的提供者。图灵没有考虑过这样的群体智能产生模式。 Jimmy Wales (born in 1966) 大众既是软件的使用者,也是软件的开发者;既是服务的消费者,也是服务的提供者。图灵没有考虑过这样的群体智能产生模式。 维基百科的创始人吉米·威尔士(Jimmy Wales)想到了。 http://www.espgame.org/gwap/
大众参与的计算(Wikipedia) 维基百科利用大众来集体创作百科条目,是通过社会评注形成群体智能的典型应用。 在维基模式中,任何用户都可以对自己感兴趣的条目进行编辑。 编辑是完全自由的,用户可参与到任意的条目中贡献任何的看法。 尽管每个人在条目编辑中可能会出现错误,甚至恶意篡改,但是在大众参与的情况下,错误与恶意篡改的部分会被很快纠正过来,大多数条目都保持了相当高的水平。 http://www.wikipedia.org
“Cloud computing”条目 该条目创建于2007年9月4日 一段时期是简单的、片面的争议版本 到2009年9月11日,经历了868位用户的2 375次编辑,逐渐趋于稳定,形成比较客观、准确的解释 条目的单月浏览量:2008年1月为21 537次;2009年8月为253 501次。 本条目在en.wikipedia.org 中的浏览量排在第1134位。
2007年9月4日 2008年9月4日 2009年9月14日
2007年9月4日 2008年9月4日 2009年9月14日
2007年9月4日 2008年9月4日 2009年9月14日
2009年9月以来的编辑日志
对该条目贡献(修改次数)最大的前40位用户 Edits User Edits User 625 SamJohnston 37 Bkengland MrOllie 34 Ronz 29 Letdorf 25 CloudComputing 23 WikiLaurent 22 SteveLoughran 21 SmackBot 17 Rw2 16 203.199.211.117 14 68.111.85.247 Metapsyche 13 CliffC Sapenov 12 70.79.65.227 69.222.228.201 11 WikiScrubber 10 Bovineone 9 Walshga Edits User 9 88.173.106.101 8 Sanjiv XLinkBot FatalError Trödel 7 Gratridge 75.41.52.92 93.3.248.168 121.242.112.11 Kompere UncleDouggie 6 68.193.125.252 Rich 131.107.0.73 Chanakal Mwarren 75.38.30.240 AstralWiki 74.39.200.63 Jakemoilanen 对该条目贡献(修改次数)最大的前40位用户
2008年1月该条目浏览量21,537次的分布: 2009年8月该条目的浏览量253,501次的分布: 浏览次数 2009年8月该条目的浏览量253,501次的分布: 浏览次数 This article ranked 1134 in traffic on en.wikipedia.org.
我们在2009年9月9日对“cloud computing ”的小修改 一个月后,至2009年10月9日,该条目又新经历了156次编辑。
2009年10月7日数据统计快照
群体智能 现实生活中人类对某个概念或事件的认知,经过一段时间的反复、交互、汇聚、修正与演化,群体形成趋于相对稳定的共识。合作编辑下的维基条目就是这种过程的生动再现。
oamg 大众参与的计算 RENDERS IT INTO A DISTORTED IMAGE PICKS RANDOM STRING OF LETTERS oamg RENDERS IT INTO A DISTORTED IMAGE …AND GENERATES A TEST: TYPE THE CHARACTERS THAT APPEAR IN THE IMAGE
大众参与的计算 类似于图片识别等任务对于人来说很简单,但要转化为图灵可计算问题却是很大的挑战,因此,网络环境出现可信计算和可信软件的研究。 又如,目前搜索引擎上的爬虫程序搜索的只是文字资料,难以实现图片内容搜索。而如果能够让用户参与这种搜索,网络连接的就不(只)是计算机, 还有人。 类似于图片识别的任务对于人类来说是很简单的事情,但是即使对于最强大的程序来说也是很大的挑战。因此,在CMU攻读博士学位的Luis von Ahn提出了一种利用人工参与处理的计算模式来解决一些计算机很难处理的问题。传统的解决这些难题的方法就是不断地提高算法的能力,但是很少考虑如何利用人的智力对这些问题的答案。 例如,目前搜索引擎上的爬虫程序搜索的只是文字资料,难以处理图片的内容搜索,而Luis von Ahn的human computing能够让这种搜索结果趋于理想。其基本概念是:网络连接的不(只)是计算机, 还有人脑。网络连接的计算机可以做分布式计算,而连接的人脑能够发挥高速运算无法达到的功能。如果要判断图片上的内容,目前的算法还很难达到,人为的判断相对而言总是更加准确的。以往搜索引擎公司往往会雇佣一些人来整理图片,为其标上tag。但是Luis von Ahn以游戏的方式让网络的用户来免费做这样的分类工作。例如,他开发的一个游戏方式是:网络两端的玩家共同看一张图,玩家必须给出一个关键字,另一个玩家要跟你配对,一旦两边输入的关键字一样的话,就获得得分,进入下一关。这样游戏在运行的一段时间之后,将会产生一些图片的基本tag。而如果全世界的游戏者能够为这样的图片标签系统贡献智力的话,产生的效果将是惊人的,甚至可以渐渐将整个图片的资料库建立起来。Google Image Labeler就是一个类似的软件。Luis von Ahn后来建立的游戏Peekaboom更加完善,能够收集到图片更详细的信息,视频、音频等也可以采用类似思路处理,其相应的网站为http://www.espgame.org/gwap/。人脑连接起来的运算力或许可以解决计算机目前很多难以解决的难题。
大众参与的计算 目前的搜索引擎软件要判断图片内容很难,公司不得不雇佣一些人来整理图片,为其标上标签。 Luis开发了一个游戏:网上玩家共同看一张图,玩家必须给出一个关键字,另一个玩家要与之配对,一旦两边输入的关键字一样就得分,进入下一关。这样,游戏运行的一段时间之后将会产生大量基本图片标签。而如果网络游戏者都能为这样的图片标签系统作贡献,甚至可以渐渐将整个图片的资料库建立起来。 http://www.espgame.org/gwap/
对图形实现社会标注的构想 GUESSING: CAR GUESSING: BOY GUESSING: CAR SUCCESS! 网民(北京) 网民(纽约) GUESSING: CAR GUESSING: BOY GUESSING: CAR SUCCESS! YOU AGREE ON CAR GUESSING: KID GUESSING: HAT
社会标注 BEACH SEA PEOPLE TALKING PORCH SKY BELL CHAT BY BEACH
群体智能:对图片进行分类 钱德沛教授:云计算和网格计算差别何在? 2008年10月16日,中国电子学会专家论坛——云计算研讨会在北京召开。前信息产业部部长、中国电子学会理事长吴基传,工业和信息化部副司长丁文武,李德毅院士、高庆狮院士、倪光南院士、钱德沛教授、郑纬民教授等专家学者,以及Google、微软、趋势科技、IBM等知名企业的专家汇聚一堂,共同讨论了云计算的概念、应用等问题。 席间,国家“十五”863计划“计算机软硬件技术” 主题专家组副组长、北京航空航天大学钱德沛教授介绍了自己关于云计算的看法,并分析了云计算与网格计算、Web计算等的差异,并提出云计算应该与网格计算结合、取长补短。 云计算与网格计算的概念 首先,究竟什么是云计算(Cloud Computing)呢?钱教授指出,云就是互联网——做网络的似乎总是把网络抽象成云;云计算就是利用在Internet中可用的计算系统,能够支持互联网各类应用的系统。云计算是以第三方拥有的机制提供服务,为了完成功能,用户只关心需要的服务,这是云计算基本的定义。 相对于网格计算(Grid Computing)和分布式计算,云计算拥有明显的特点:第一是低成本,这是最突出的特点。第二是虚拟机的支持,使得在网络环境下的一些原来比较难做的事情现在比较容易处理。第三是镜象部署的执行,这样就能够使得过去很难处理的异构的程序的执行互操作变得比较容易处理。第四是强调服务化,服务化有一些新的机制,特别是更适合商业运行的机制。 那么网格计算的特点又是什么呢? 网格计算有了十几年的历史。网格基本形态是什么?是跨地区的,甚至跨国家的,甚至跨洲的这样一种独立管理的资源结合。资源在独立管理,并不是进行统一布置、统一安排的形态。网格这些资源都是异构的,不强调有什么统一的安排。另外网格的使用通常是让分布的用户构成虚拟组织(VO),在这样统一的网格基础平台上用虚拟组织形态从不同的自治域访问资源。此外,网格一般由所在地区、国家、国际公共组织资助的,支持的数据模型很广,从海量数据到专用数据以及到大小各异的临时数据集合,在网上传的数据,这是网格目前的基本形态。 云计算与网格计算区别何在 可以看出,网格计算和云计算有相似之处,特别是计算的并行与合作的特点;但他们的区别也是明显的。主要有以下几点: 首先,网格计算的思路是聚合分布资源,支持虚拟组织,提供高层次的服务,例如分布协同科学研究等。而云计算的资源相对集中,主要以数据中心的形式提供底层资源的使用,并不强调虚拟组织(VO)的概念。 其次,网格计算用聚合资源来支持挑战性的应用,这是初衷,因为高性能计算的资源不够用,要把分散的资源聚合起来;后来到了2004年以后,逐渐强调适应普遍的信息化应用,特别在中国,做的网格跟国外不太一样,就是强调支持信息化的应用。但云计算从一开始就支持广泛企业计算、Web应用,普适性更强。 第三,在对待异构性方面,二者理念上有所不同。网格计算用中间件屏蔽异构系统,力图使用户面向同样的环境,把困难留在中间件,让中间件完成任务。而云计算实际上承认异构,用镜像执行,或者提供服务的机制来解决异构性的问题。当然不同的云计算系统还不太一样,像Google一般用比较专用的自己的内部的平台来支持。 第四,网格计算用执行作业形式使用,在一个阶段内完成作用产生数据。而云计算支持持久服务,用户可以利用云计算作为其部分IT基础设施,实现业务的托管和外包。 第五,网格计算更多地面向科研应用,商业模型不清晰。而云计算从诞生开始就是针对企业商业应用,商业模型比较清晰。 总之,云计算是以相对集中的资源,运行分散的应用(大量分散的应用在若干大的中心执行);而网格计算则是聚合分散的资源,支持大型集中式应用(一个大的应用分到多处执行)。但从根本上来说,从应对Internet的应用的特征特点来说,他们是一致的,为了完成在Internet情况下支持应用,解决异构性、资源共享等等问题。 那么,网格计算和云计算有没有可能取长补短、互为补充呢?钱教授提到,如果这两者结合起来,也许可以聚合大量分散的资源,从而支持各种各样的大型集中应用以及分散的应用。 最后,钱教授还谈到,在云计算技术方面,有三个需要关注的问题。第一是安全,因为要想作为公共基础设施必须取得用户的充分信任。第二是标准化,不能再走中间件的老路。第三是开源,要走开放的平台,这样才有发展。 云计算与网格计算的深入比较 作者:网界网 祁金华 在写这篇文章之前,曾经有很多人问过记者类似的问题,比如说,“云计算跟网格计算到底什么关系”、“他们两个的区别到底在哪里”、“能不能简单地讲一下其中的区别”? 其实,一下子很难讲清楚其中的具体区别。记者此前曾经在首次接触云计算概念时,将云计算看成“网格2.0”(参见:云计算:网格2.0,http://www.cnw.com.cn/P/165),这一点得到了一些业内人士的认可;后来记者也曾经翻译了美国《Network World》的一篇文章,澄清了有关云计算的一些定义(参见:云计算的五种定义考,http://www.cnw.com.cn/P/166)。 不过,记者认为这些都似乎还比较空泛。在采访过网格计算相关的技术专家和云计算方面的技术专家之后,记者尝试着给出一些自己的看法。 当然,从定义上来说,二者都试图将各种IT资源看成一个虚拟的资源池,然后向外提供相应的服务。云计算试图让“用户透明地使用资源”,而网格计算当初的口号就是让“使用IT资源像使用水电一样简单”。 根据维基百科所提供的定义,云计算是一种宽泛的概念,它允许用户通过互联网访问各种基于IT资源的服务,这种服务允许用户无需了解底层IT基础设施架构就能够享受到作为服务的“IT相关资源”。 而网格的内涵包括两个方面,一个方面是所谓的效用计算或者随需计算,在这一点上面,网格计算跟云计算是非常相似的,都是通过一个资源池或者分布式的计算资源来提供在线的计算或者存储等服务;另外一个方面就是所谓的“虚拟超级计算机”,以松耦合的方式将大量的计算资源连接在一起提供单个计算资源所无法完成的超级计算能力,这也是狭义上的网格计算跟云计算概念上最大的差别,也是本文要讨论的出发点。 目标不同 一般来说,谈到网格计算大家都会想到当年风靡一时的搜寻外星人项目,也就是说通过在本机安装一个屏幕保护软件,就能够利用大家每个人的PC闲暇时候的计算能力来参与搜寻外星人的计算。 这也说明了网格的目标,是想要尽可能地利用各种资源。它通过特定的网格软件,将一个庞大的项目分解为无数个相互独立的、不太相关的子任务,然后交由各个计算节点进行计算。即便某个节点出现问题,没有能够及时返回结果,也不影响整个项目的进程,甚至即便某一个计算节点突然崩溃,其所承担的计算任务也能够被任务调度系统分配给其他的节点继续完成。应该说,从这一点来说,作业调度是网格计算的核心价值。 现在谈到云计算的时候,我们就能够立刻想到通过互联网将数据中心的各种资源打包成服务向外提供。一般来说,尽管云计算也像网格计算一样将所有的资源构筑成一个庞大的资源池,但是云计算向外提供的某个资源,是为了完成某个特定的任务。比如说某个用户可能需要从资源池中申请一定量的资源来部署其应用,而不会将自己的任务提交给整个网格来完成。 从这一点来看,网格的构建大多为完成某一个特定的任务需要,这也是会有生物网格、地理网格、国家教育网格等各种不同的网格项目出现的原因。而云计算一般来说都是为了通用应用而设计的,没有专门的以某种应用命名的网格。 分配资源方式的不同 对于网格计算来说,其资源虽然也已经被池化,在外界看来就是一个巨大的资源池。对于要提交特定任务的用户来说,他并不知道自己的任务将会在哪些网格的物理节点上运行。他只是按照特定的格式,将作业任务提交给网格系统,然后等待网格返回结果。 而网格作业调度系统自动找寻与该任务相匹配的资源,然后寻找出空闲的物理节点,将任务分配过去直至完成。虽然网格能够实现跨物理机进行并行作业处理,但是需要用户先将并行算法写好,并且通过调度系统将作业分解到各个不同的物理节点进行,这个过程相对比较复杂,这也是很多网格计算被建设用来完成特定需求的原因。 国家教育网格项目组负责人金海教授曾经对记者表示,现阶段的教育网格还只能实现将某一个特定任务派往特定的某一个节点,也就是说网格可以监控某一个节点是空闲的,然后分派任务,但是如果没有合适的节点能够达到任务完成所需要的配置,那么任务就必须等待其他任务将资源释放出来,不能利用分散的配置。 而云计算是通过虚拟化将物理机的资源进行切割,从这个角度来实现资源的随需分配和自动增长,并且其资源的自动分配和增减不能超越物理节点本身的物理上限。尽管从控制端来看,云计算也将所有的IT资源看成是一个资源池,但是不同芯片的物理机会被归类到不同的资源池中。 比如说可以呼应某一个应用的请求,而给其分配一颗x86 CPU或者Power CPU、安腾CPU,分配内存、硬盘空间,再给其安装Linux系统、相关的应用,但是不能同时分配一颗x86 CPU和一颗其他的CPU以构成一个异构的环境。而且,如果节点中的物理机最高CPU数量是4颗的话,那么即使由10台这样的节点构成一个40CPU的资源池,也不能为某一个应用分配8颗CPU的虚拟节点。 从这种角度来说,Amazon在2006年所推出的EC2项目(Elastic Compute Cloud,弹性计算云)的确算的上是云计算项目,只不过那个时候云计算概念未兴起,而网格计算的概念方兴未艾,Amazon在那个时候依然用网格的概念向外推销该项目。 殊途同归 其实就像很多人大致了解的那样,网格计算与云计算的确有很多的相似之处,这两者都能够被看成是分布式计算所衍生出来的概念,都是为了让IT资源能够对用户透明,为了让IT资源能够达到更好的使用率。 从这个提高资源利用率的角度出发,逐渐诞生了Web服务的概念,然后网络公司通过部署数以万计的服务器构成庞大的计算资源,得以提供此前无法完成的新服务。企业或者个人能够通过互联网利用那些大网络公司所释放出来的计算资源,进行应用部署或者向外提供服务。这就是从网格计算到云计算的历史过程。 二者的意义就在于,无论是用户还是企业开发者,都能够通过互联网来获得数据或者进行计算,尽管本地资源有限,但是能够通过网络进行复杂的运算,其数据的计算过程对于用户来说就像互联网网络对于本地网络用户一样,正如大家所记得那个网络云,后端的实现是透明的。
分成为两类 钱德沛教授:云计算和网格计算差别何在? 2008年10月16日,中国电子学会专家论坛——云计算研讨会在北京召开。前信息产业部部长、中国电子学会理事长吴基传,工业和信息化部副司长丁文武,李德毅院士、高庆狮院士、倪光南院士、钱德沛教授、郑纬民教授等专家学者,以及Google、微软、趋势科技、IBM等知名企业的专家汇聚一堂,共同讨论了云计算的概念、应用等问题。 席间,国家“十五”863计划“计算机软硬件技术” 主题专家组副组长、北京航空航天大学钱德沛教授介绍了自己关于云计算的看法,并分析了云计算与网格计算、Web计算等的差异,并提出云计算应该与网格计算结合、取长补短。 云计算与网格计算的概念 首先,究竟什么是云计算(Cloud Computing)呢?钱教授指出,云就是互联网——做网络的似乎总是把网络抽象成云;云计算就是利用在Internet中可用的计算系统,能够支持互联网各类应用的系统。云计算是以第三方拥有的机制提供服务,为了完成功能,用户只关心需要的服务,这是云计算基本的定义。 相对于网格计算(Grid Computing)和分布式计算,云计算拥有明显的特点:第一是低成本,这是最突出的特点。第二是虚拟机的支持,使得在网络环境下的一些原来比较难做的事情现在比较容易处理。第三是镜象部署的执行,这样就能够使得过去很难处理的异构的程序的执行互操作变得比较容易处理。第四是强调服务化,服务化有一些新的机制,特别是更适合商业运行的机制。 那么网格计算的特点又是什么呢? 网格计算有了十几年的历史。网格基本形态是什么?是跨地区的,甚至跨国家的,甚至跨洲的这样一种独立管理的资源结合。资源在独立管理,并不是进行统一布置、统一安排的形态。网格这些资源都是异构的,不强调有什么统一的安排。另外网格的使用通常是让分布的用户构成虚拟组织(VO),在这样统一的网格基础平台上用虚拟组织形态从不同的自治域访问资源。此外,网格一般由所在地区、国家、国际公共组织资助的,支持的数据模型很广,从海量数据到专用数据以及到大小各异的临时数据集合,在网上传的数据,这是网格目前的基本形态。 云计算与网格计算区别何在 可以看出,网格计算和云计算有相似之处,特别是计算的并行与合作的特点;但他们的区别也是明显的。主要有以下几点: 首先,网格计算的思路是聚合分布资源,支持虚拟组织,提供高层次的服务,例如分布协同科学研究等。而云计算的资源相对集中,主要以数据中心的形式提供底层资源的使用,并不强调虚拟组织(VO)的概念。 其次,网格计算用聚合资源来支持挑战性的应用,这是初衷,因为高性能计算的资源不够用,要把分散的资源聚合起来;后来到了2004年以后,逐渐强调适应普遍的信息化应用,特别在中国,做的网格跟国外不太一样,就是强调支持信息化的应用。但云计算从一开始就支持广泛企业计算、Web应用,普适性更强。 第三,在对待异构性方面,二者理念上有所不同。网格计算用中间件屏蔽异构系统,力图使用户面向同样的环境,把困难留在中间件,让中间件完成任务。而云计算实际上承认异构,用镜像执行,或者提供服务的机制来解决异构性的问题。当然不同的云计算系统还不太一样,像Google一般用比较专用的自己的内部的平台来支持。 第四,网格计算用执行作业形式使用,在一个阶段内完成作用产生数据。而云计算支持持久服务,用户可以利用云计算作为其部分IT基础设施,实现业务的托管和外包。 第五,网格计算更多地面向科研应用,商业模型不清晰。而云计算从诞生开始就是针对企业商业应用,商业模型比较清晰。 总之,云计算是以相对集中的资源,运行分散的应用(大量分散的应用在若干大的中心执行);而网格计算则是聚合分散的资源,支持大型集中式应用(一个大的应用分到多处执行)。但从根本上来说,从应对Internet的应用的特征特点来说,他们是一致的,为了完成在Internet情况下支持应用,解决异构性、资源共享等等问题。 那么,网格计算和云计算有没有可能取长补短、互为补充呢?钱教授提到,如果这两者结合起来,也许可以聚合大量分散的资源,从而支持各种各样的大型集中应用以及分散的应用。 最后,钱教授还谈到,在云计算技术方面,有三个需要关注的问题。第一是安全,因为要想作为公共基础设施必须取得用户的充分信任。第二是标准化,不能再走中间件的老路。第三是开源,要走开放的平台,这样才有发展。 云计算与网格计算的深入比较 作者:网界网 祁金华 在写这篇文章之前,曾经有很多人问过记者类似的问题,比如说,“云计算跟网格计算到底什么关系”、“他们两个的区别到底在哪里”、“能不能简单地讲一下其中的区别”? 其实,一下子很难讲清楚其中的具体区别。记者此前曾经在首次接触云计算概念时,将云计算看成“网格2.0”(参见:云计算:网格2.0,http://www.cnw.com.cn/P/165),这一点得到了一些业内人士的认可;后来记者也曾经翻译了美国《Network World》的一篇文章,澄清了有关云计算的一些定义(参见:云计算的五种定义考,http://www.cnw.com.cn/P/166)。 不过,记者认为这些都似乎还比较空泛。在采访过网格计算相关的技术专家和云计算方面的技术专家之后,记者尝试着给出一些自己的看法。 当然,从定义上来说,二者都试图将各种IT资源看成一个虚拟的资源池,然后向外提供相应的服务。云计算试图让“用户透明地使用资源”,而网格计算当初的口号就是让“使用IT资源像使用水电一样简单”。 根据维基百科所提供的定义,云计算是一种宽泛的概念,它允许用户通过互联网访问各种基于IT资源的服务,这种服务允许用户无需了解底层IT基础设施架构就能够享受到作为服务的“IT相关资源”。 而网格的内涵包括两个方面,一个方面是所谓的效用计算或者随需计算,在这一点上面,网格计算跟云计算是非常相似的,都是通过一个资源池或者分布式的计算资源来提供在线的计算或者存储等服务;另外一个方面就是所谓的“虚拟超级计算机”,以松耦合的方式将大量的计算资源连接在一起提供单个计算资源所无法完成的超级计算能力,这也是狭义上的网格计算跟云计算概念上最大的差别,也是本文要讨论的出发点。 目标不同 一般来说,谈到网格计算大家都会想到当年风靡一时的搜寻外星人项目,也就是说通过在本机安装一个屏幕保护软件,就能够利用大家每个人的PC闲暇时候的计算能力来参与搜寻外星人的计算。 这也说明了网格的目标,是想要尽可能地利用各种资源。它通过特定的网格软件,将一个庞大的项目分解为无数个相互独立的、不太相关的子任务,然后交由各个计算节点进行计算。即便某个节点出现问题,没有能够及时返回结果,也不影响整个项目的进程,甚至即便某一个计算节点突然崩溃,其所承担的计算任务也能够被任务调度系统分配给其他的节点继续完成。应该说,从这一点来说,作业调度是网格计算的核心价值。 现在谈到云计算的时候,我们就能够立刻想到通过互联网将数据中心的各种资源打包成服务向外提供。一般来说,尽管云计算也像网格计算一样将所有的资源构筑成一个庞大的资源池,但是云计算向外提供的某个资源,是为了完成某个特定的任务。比如说某个用户可能需要从资源池中申请一定量的资源来部署其应用,而不会将自己的任务提交给整个网格来完成。 从这一点来看,网格的构建大多为完成某一个特定的任务需要,这也是会有生物网格、地理网格、国家教育网格等各种不同的网格项目出现的原因。而云计算一般来说都是为了通用应用而设计的,没有专门的以某种应用命名的网格。 分配资源方式的不同 对于网格计算来说,其资源虽然也已经被池化,在外界看来就是一个巨大的资源池。对于要提交特定任务的用户来说,他并不知道自己的任务将会在哪些网格的物理节点上运行。他只是按照特定的格式,将作业任务提交给网格系统,然后等待网格返回结果。 而网格作业调度系统自动找寻与该任务相匹配的资源,然后寻找出空闲的物理节点,将任务分配过去直至完成。虽然网格能够实现跨物理机进行并行作业处理,但是需要用户先将并行算法写好,并且通过调度系统将作业分解到各个不同的物理节点进行,这个过程相对比较复杂,这也是很多网格计算被建设用来完成特定需求的原因。 国家教育网格项目组负责人金海教授曾经对记者表示,现阶段的教育网格还只能实现将某一个特定任务派往特定的某一个节点,也就是说网格可以监控某一个节点是空闲的,然后分派任务,但是如果没有合适的节点能够达到任务完成所需要的配置,那么任务就必须等待其他任务将资源释放出来,不能利用分散的配置。 而云计算是通过虚拟化将物理机的资源进行切割,从这个角度来实现资源的随需分配和自动增长,并且其资源的自动分配和增减不能超越物理节点本身的物理上限。尽管从控制端来看,云计算也将所有的IT资源看成是一个资源池,但是不同芯片的物理机会被归类到不同的资源池中。 比如说可以呼应某一个应用的请求,而给其分配一颗x86 CPU或者Power CPU、安腾CPU,分配内存、硬盘空间,再给其安装Linux系统、相关的应用,但是不能同时分配一颗x86 CPU和一颗其他的CPU以构成一个异构的环境。而且,如果节点中的物理机最高CPU数量是4颗的话,那么即使由10台这样的节点构成一个40CPU的资源池,也不能为某一个应用分配8颗CPU的虚拟节点。 从这种角度来说,Amazon在2006年所推出的EC2项目(Elastic Compute Cloud,弹性计算云)的确算的上是云计算项目,只不过那个时候云计算概念未兴起,而网格计算的概念方兴未艾,Amazon在那个时候依然用网格的概念向外推销该项目。 殊途同归 其实就像很多人大致了解的那样,网格计算与云计算的确有很多的相似之处,这两者都能够被看成是分布式计算所衍生出来的概念,都是为了让IT资源能够对用户透明,为了让IT资源能够达到更好的使用率。 从这个提高资源利用率的角度出发,逐渐诞生了Web服务的概念,然后网络公司通过部署数以万计的服务器构成庞大的计算资源,得以提供此前无法完成的新服务。企业或者个人能够通过互联网利用那些大网络公司所释放出来的计算资源,进行应用部署或者向外提供服务。这就是从网格计算到云计算的历史过程。 二者的意义就在于,无论是用户还是企业开发者,都能够通过互联网来获得数据或者进行计算,尽管本地资源有限,但是能够通过网络进行复杂的运算,其数据的计算过程对于用户来说就像互联网网络对于本地网络用户一样,正如大家所记得那个网络云,后端的实现是透明的。
分成为六类 为宠物找到了主人! 钱德沛教授:云计算和网格计算差别何在? 2008年10月16日,中国电子学会专家论坛——云计算研讨会在北京召开。前信息产业部部长、中国电子学会理事长吴基传,工业和信息化部副司长丁文武,李德毅院士、高庆狮院士、倪光南院士、钱德沛教授、郑纬民教授等专家学者,以及Google、微软、趋势科技、IBM等知名企业的专家汇聚一堂,共同讨论了云计算的概念、应用等问题。 席间,国家“十五”863计划“计算机软硬件技术” 主题专家组副组长、北京航空航天大学钱德沛教授介绍了自己关于云计算的看法,并分析了云计算与网格计算、Web计算等的差异,并提出云计算应该与网格计算结合、取长补短。 云计算与网格计算的概念 首先,究竟什么是云计算(Cloud Computing)呢?钱教授指出,云就是互联网——做网络的似乎总是把网络抽象成云;云计算就是利用在Internet中可用的计算系统,能够支持互联网各类应用的系统。云计算是以第三方拥有的机制提供服务,为了完成功能,用户只关心需要的服务,这是云计算基本的定义。 相对于网格计算(Grid Computing)和分布式计算,云计算拥有明显的特点:第一是低成本,这是最突出的特点。第二是虚拟机的支持,使得在网络环境下的一些原来比较难做的事情现在比较容易处理。第三是镜象部署的执行,这样就能够使得过去很难处理的异构的程序的执行互操作变得比较容易处理。第四是强调服务化,服务化有一些新的机制,特别是更适合商业运行的机制。 那么网格计算的特点又是什么呢? 网格计算有了十几年的历史。网格基本形态是什么?是跨地区的,甚至跨国家的,甚至跨洲的这样一种独立管理的资源结合。资源在独立管理,并不是进行统一布置、统一安排的形态。网格这些资源都是异构的,不强调有什么统一的安排。另外网格的使用通常是让分布的用户构成虚拟组织(VO),在这样统一的网格基础平台上用虚拟组织形态从不同的自治域访问资源。此外,网格一般由所在地区、国家、国际公共组织资助的,支持的数据模型很广,从海量数据到专用数据以及到大小各异的临时数据集合,在网上传的数据,这是网格目前的基本形态。 云计算与网格计算区别何在 可以看出,网格计算和云计算有相似之处,特别是计算的并行与合作的特点;但他们的区别也是明显的。主要有以下几点: 首先,网格计算的思路是聚合分布资源,支持虚拟组织,提供高层次的服务,例如分布协同科学研究等。而云计算的资源相对集中,主要以数据中心的形式提供底层资源的使用,并不强调虚拟组织(VO)的概念。 其次,网格计算用聚合资源来支持挑战性的应用,这是初衷,因为高性能计算的资源不够用,要把分散的资源聚合起来;后来到了2004年以后,逐渐强调适应普遍的信息化应用,特别在中国,做的网格跟国外不太一样,就是强调支持信息化的应用。但云计算从一开始就支持广泛企业计算、Web应用,普适性更强。 第三,在对待异构性方面,二者理念上有所不同。网格计算用中间件屏蔽异构系统,力图使用户面向同样的环境,把困难留在中间件,让中间件完成任务。而云计算实际上承认异构,用镜像执行,或者提供服务的机制来解决异构性的问题。当然不同的云计算系统还不太一样,像Google一般用比较专用的自己的内部的平台来支持。 第四,网格计算用执行作业形式使用,在一个阶段内完成作用产生数据。而云计算支持持久服务,用户可以利用云计算作为其部分IT基础设施,实现业务的托管和外包。 第五,网格计算更多地面向科研应用,商业模型不清晰。而云计算从诞生开始就是针对企业商业应用,商业模型比较清晰。 总之,云计算是以相对集中的资源,运行分散的应用(大量分散的应用在若干大的中心执行);而网格计算则是聚合分散的资源,支持大型集中式应用(一个大的应用分到多处执行)。但从根本上来说,从应对Internet的应用的特征特点来说,他们是一致的,为了完成在Internet情况下支持应用,解决异构性、资源共享等等问题。 那么,网格计算和云计算有没有可能取长补短、互为补充呢?钱教授提到,如果这两者结合起来,也许可以聚合大量分散的资源,从而支持各种各样的大型集中应用以及分散的应用。 最后,钱教授还谈到,在云计算技术方面,有三个需要关注的问题。第一是安全,因为要想作为公共基础设施必须取得用户的充分信任。第二是标准化,不能再走中间件的老路。第三是开源,要走开放的平台,这样才有发展。 云计算与网格计算的深入比较 作者:网界网 祁金华 在写这篇文章之前,曾经有很多人问过记者类似的问题,比如说,“云计算跟网格计算到底什么关系”、“他们两个的区别到底在哪里”、“能不能简单地讲一下其中的区别”? 其实,一下子很难讲清楚其中的具体区别。记者此前曾经在首次接触云计算概念时,将云计算看成“网格2.0”(参见:云计算:网格2.0,http://www.cnw.com.cn/P/165),这一点得到了一些业内人士的认可;后来记者也曾经翻译了美国《Network World》的一篇文章,澄清了有关云计算的一些定义(参见:云计算的五种定义考,http://www.cnw.com.cn/P/166)。 不过,记者认为这些都似乎还比较空泛。在采访过网格计算相关的技术专家和云计算方面的技术专家之后,记者尝试着给出一些自己的看法。 当然,从定义上来说,二者都试图将各种IT资源看成一个虚拟的资源池,然后向外提供相应的服务。云计算试图让“用户透明地使用资源”,而网格计算当初的口号就是让“使用IT资源像使用水电一样简单”。 根据维基百科所提供的定义,云计算是一种宽泛的概念,它允许用户通过互联网访问各种基于IT资源的服务,这种服务允许用户无需了解底层IT基础设施架构就能够享受到作为服务的“IT相关资源”。 而网格的内涵包括两个方面,一个方面是所谓的效用计算或者随需计算,在这一点上面,网格计算跟云计算是非常相似的,都是通过一个资源池或者分布式的计算资源来提供在线的计算或者存储等服务;另外一个方面就是所谓的“虚拟超级计算机”,以松耦合的方式将大量的计算资源连接在一起提供单个计算资源所无法完成的超级计算能力,这也是狭义上的网格计算跟云计算概念上最大的差别,也是本文要讨论的出发点。 目标不同 一般来说,谈到网格计算大家都会想到当年风靡一时的搜寻外星人项目,也就是说通过在本机安装一个屏幕保护软件,就能够利用大家每个人的PC闲暇时候的计算能力来参与搜寻外星人的计算。 这也说明了网格的目标,是想要尽可能地利用各种资源。它通过特定的网格软件,将一个庞大的项目分解为无数个相互独立的、不太相关的子任务,然后交由各个计算节点进行计算。即便某个节点出现问题,没有能够及时返回结果,也不影响整个项目的进程,甚至即便某一个计算节点突然崩溃,其所承担的计算任务也能够被任务调度系统分配给其他的节点继续完成。应该说,从这一点来说,作业调度是网格计算的核心价值。 现在谈到云计算的时候,我们就能够立刻想到通过互联网将数据中心的各种资源打包成服务向外提供。一般来说,尽管云计算也像网格计算一样将所有的资源构筑成一个庞大的资源池,但是云计算向外提供的某个资源,是为了完成某个特定的任务。比如说某个用户可能需要从资源池中申请一定量的资源来部署其应用,而不会将自己的任务提交给整个网格来完成。 从这一点来看,网格的构建大多为完成某一个特定的任务需要,这也是会有生物网格、地理网格、国家教育网格等各种不同的网格项目出现的原因。而云计算一般来说都是为了通用应用而设计的,没有专门的以某种应用命名的网格。 分配资源方式的不同 对于网格计算来说,其资源虽然也已经被池化,在外界看来就是一个巨大的资源池。对于要提交特定任务的用户来说,他并不知道自己的任务将会在哪些网格的物理节点上运行。他只是按照特定的格式,将作业任务提交给网格系统,然后等待网格返回结果。 而网格作业调度系统自动找寻与该任务相匹配的资源,然后寻找出空闲的物理节点,将任务分配过去直至完成。虽然网格能够实现跨物理机进行并行作业处理,但是需要用户先将并行算法写好,并且通过调度系统将作业分解到各个不同的物理节点进行,这个过程相对比较复杂,这也是很多网格计算被建设用来完成特定需求的原因。 国家教育网格项目组负责人金海教授曾经对记者表示,现阶段的教育网格还只能实现将某一个特定任务派往特定的某一个节点,也就是说网格可以监控某一个节点是空闲的,然后分派任务,但是如果没有合适的节点能够达到任务完成所需要的配置,那么任务就必须等待其他任务将资源释放出来,不能利用分散的配置。 而云计算是通过虚拟化将物理机的资源进行切割,从这个角度来实现资源的随需分配和自动增长,并且其资源的自动分配和增减不能超越物理节点本身的物理上限。尽管从控制端来看,云计算也将所有的IT资源看成是一个资源池,但是不同芯片的物理机会被归类到不同的资源池中。 比如说可以呼应某一个应用的请求,而给其分配一颗x86 CPU或者Power CPU、安腾CPU,分配内存、硬盘空间,再给其安装Linux系统、相关的应用,但是不能同时分配一颗x86 CPU和一颗其他的CPU以构成一个异构的环境。而且,如果节点中的物理机最高CPU数量是4颗的话,那么即使由10台这样的节点构成一个40CPU的资源池,也不能为某一个应用分配8颗CPU的虚拟节点。 从这种角度来说,Amazon在2006年所推出的EC2项目(Elastic Compute Cloud,弹性计算云)的确算的上是云计算项目,只不过那个时候云计算概念未兴起,而网格计算的概念方兴未艾,Amazon在那个时候依然用网格的概念向外推销该项目。 殊途同归 其实就像很多人大致了解的那样,网格计算与云计算的确有很多的相似之处,这两者都能够被看成是分布式计算所衍生出来的概念,都是为了让IT资源能够对用户透明,为了让IT资源能够达到更好的使用率。 从这个提高资源利用率的角度出发,逐渐诞生了Web服务的概念,然后网络公司通过部署数以万计的服务器构成庞大的计算资源,得以提供此前无法完成的新服务。企业或者个人能够通过互联网利用那些大网络公司所释放出来的计算资源,进行应用部署或者向外提供服务。这就是从网格计算到云计算的历史过程。 二者的意义就在于,无论是用户还是企业开发者,都能够通过互联网来获得数据或者进行计算,尽管本地资源有限,但是能够通过网络进行复杂的运算,其数据的计算过程对于用户来说就像互联网网络对于本地网络用户一样,正如大家所记得那个网络云,后端的实现是透明的。 为宠物找到了主人!
通过群体标注,图片如此分类! 社区常识决定不同社区有不同标注! 对文本进行群体标注会如何? 对视频图像进行群体标注又会如何? 通过标注可否实现跨媒体检索?
各尽其能,超出但没有超越 图灵机智能 (人工智能) 数值计算 群体智能(collective intelligence) 海量的存储和永不遗忘的记忆 快速的搜索和灵活的匹配 逻辑思维:确定的形式化推理能力 群体智能(collective intelligence) 常识知识(生活常识、社会常识、百科常识……) 形象思维:图像思维能力 感悟、联想、顿悟等 不确定性智能 云计算 图灵机
Wiki项目计划 维基教科书 维基百科 维基资源 维基新闻
网络智能 = 图灵机智能 ∽ 群体智能 云计算 = 图灵计算 ∽ 大众计算
为什么大家都喜欢云? 天空中大量云滴构成的云,远观有形,近观无边,千姿百态,飘逸不定,有时如朵朵棉花,有时一泻千里,或淡或浓,或卷或舒,自在洒脱,在长空中漂浮着,聚散着,变幻着,引发人类诸多遐想,造就多少不朽诗句。
量子物理中的电子云 量子物理中的电子云(electron cloud): 在原子核周围运动的电子,不是一个确定的轨道,而是弥漫空间的云状存在,形成一个概率分布的密度函数,可用薛定谔波动方程来描述。 电子云具有概然性、弥漫性、同时性等。
云计算一定是基于互联网的。互联网为大众提供一个个虚拟的、丰富的、按需即取的数据存储池、软件下载和维护池、计算能力池、多媒体信息资源池、客户服务池;提供人与人、社区与社区沟通的便捷平台。 93 93
互联网的生态 云滴聚集成云 云滴:服务 云:服务的聚合 水气凝结成云滴 阳光:用户需求 蒸发: 服务的发布 降水: 按需即取 水库——企业界称为“云数据中心” 阳光——代表用户需求 蒸发过程——服务的发布 云滴——服务 云——服务的聚合 降水——按需即取 通过水的生态循环改进服务和服务质量:人人都是信息的需求者,信息的发布者 整个系统遵循一定的网络协议?? 水库:“云数据中心” 类比水的生态循环,看基于网络的信息服务和服务质量。
大胆的设想: “生命的本质在于物质的组织形式,而不在于物质的自身”—— 人工生命之父克里斯·兰顿 Chris Langton(1949-) “生命的本质在于物质的组织形式,而不在于物质的自身”—— 人工生命之父克里斯·兰顿 信息资源网络的本质在于信息资源之间的组织形式,而不在于承载信息的图灵机自身 云计算的提出有可能导致软件工程的重大变革,突破图灵机模型的束缚:不在于单台图灵机上的软件,而在于网络上软件之间的相互作用。引发对计算机CPU核、操作系统、交互这三者关系的再认识! 95 95
图灵计算与云计算的比较 云计算 图灵计算 重点关注节点间的交互 重点关注CPU和操作系统 不确定的计算 确定的计算 尽力而为的解 最优解 无集中控制、局域性偏好依附 统一的调度 有主体行为能力 机械的执行 服务模型 可计算模型 人主动参与的计算 人不参与的计算
软件的网络化性质比单台图灵机上软件单元的性质更强烈地影响着网络软件的整体行为和特性,甚至出现涌现,如计算机病毒在全网的突然泛滥等。 97
软件 —— 永远的beta版 软件将没有版本的概念,采用永远在用的软件开发模式(the “forever beta” approach to software) 谷歌的Gmail, Gdoc已经采用 云计算淡化了软件产品的生命周期,服务商可以无数次在线更新软件,而用户与软件的互动使得软件向贴近用户需求的方向演化
软件即服务(SaaS) “SaaS”改变了操作系统、中间件等作为产品配置在客户端的传统,软件可以租用;用户端可以零安装、零维护、零剩余; 出现同一个应用软件系统(如CRM)同时租给许多不同用户使用(multi-tenance)
软件、平台和信息基础设施都是服务 PaaS:亚马逊(Amazon)的一个虚拟计算单元(相当于1.2Ghz的Intel Xeon的32位处理器、1.7GB内存、160GB存储器)付费为每小时0.1 美元,在S3上存储1GB的数据每个月只需0.16美元。
网上社区的群体智能(舆情)也许能够强烈地影响着网上社区的整体行为和特性,出现涌现。这种涌现甚至影响到社区之外的更大范围。 2009年6月伊朗大选结果引发了大规模的抗议活动,示威者纷纷通过Twitter、Facebook等网络工具,突破国内新闻封锁,沟通彼此,并向世界报道。伊朗发生着两场革命,一场在街头,一场在网络 101
四、云计算的基本内容
目前,太多的定义和太泛的解释使得云计算有成为“皇帝的新衣”之嫌,迫切需要业界汇聚共识!
内容一:虚拟计算 虚拟存储 虚拟机 虚拟网络 虚拟社区 虚拟计算能力 计算设施的本身细节和物理位置对用户透明。
内容二:变粒度和跨粒度计算 云滴在不同的粒度上提供服务: 云滴的弥散性——雾 云滴的聚合——云团 毛毛细雨,小雨,中雨,大雨 具体的、需求 复杂的软件、资源、服务和计算任务,被精细化和 碎片化,变得易于重组和扩展,可以即时性协作,实现服务聚合,完成变粒度的计算/服务任务。
对服务资源不同层次的管理和动态扩展,从不同的粒度上对“云”所提供的服务资源进行处理,形成面向不同社区用户、不同使用目的、表现形态各异的云滴和云。
内容三:不确定性计算 统计计算 群智计算 不确定性计算 互联网上信息的特点是海量和低质量。低质量包括高噪声、高冗余、不完备、不协调、不一致、随机、模糊、多变等。 统计计算 群智计算 不确定性计算 从时间的角度来看,任何真理都是历史 任何问题都是形式化 任何问题都是统计
搜索结果的不确定性 对于用户的一个请求,Google搜索引擎返回成千上万的相关网页,用户难以直接得到最关心的回答。 不断地在“下一页”中找寻答案并不是最终目标,如何将搜索返回的结果集聚合形成一个“摘要”的按需回答,才是解决问题的关键。 这个期望的“摘要”,实际上就是以网页作为云滴,给出逆向云发生器的期望,得到一个按需回答的、大致精确的“摘要”。
“云滴”和“期望” 把按用户请求返回的N个页面看作是 N 个“云滴”,通过网页语义相似性及其对用户请求的语义确定度计算,利用逆向云发生器进行简约得到 “期望” ,从而实现尽力而为的、非唯一的、按需服务的回答。 将搜索引擎返回的每一个页看作一个个“云滴”,通过逆向云发生器,逐层简约,最终得到用户的搜索期望。 网页语义的向量表示 这是未来十年的希望。
内容四:软计算 根本上是定性定量转换计算 内容计算:词(概念)计算、语义计算、文本计算、语音计算等;语构、语义、语境理解 图形图像理解 流媒体理解
云计算的应用 网络环境下信息资源的感知、存储、处理、发布、传播和租用; 网络化数据挖掘:用户主导、面向领域的跨系统、跨媒体、即时定制的服务或者服务组合。
也许,目前人们提及的云计算还仅仅是冰山上的一角!
热点问题一:云计算和网格计算
谁在“忽悠”谁? 网格计算:学术界热、企业界不热 云计算: 企业界热、学术界不热
在线维基百科对网格计算的定义 Grid computing is the combination of computer resources from multiple administrative domains applied to a common task, usually to a scientific, technical or business problem that requires a great number of computer processing cycles or the need to process large amounts of data. 将搜索引擎返回的每一个页看作一个个“云滴”,通过逆向云发生器,逐层简约,最终得到用户的搜索期望。 网页语义的向量表示 这是未来十年的希望。
Many for one 网格计算:依托专网或互联网,将处于不同地域、不同领域的多个计算机资源组织起来,统一调度,组成一台虚拟的“超级计算机”, 完成一个共同的任务,如一个要求大量计算处理周期和大量数据的科学计算问题。 What is SETI@home? SETI@home is a scientific experiment that uses Internet-connected computers in the Search for Extraterrestrial Intelligence (SETI). You can participate by running a free program that downloads and analyzes radio telescope data. 从SETI@home项目正式启动以来,至2005年就已经有300万志愿者参加了这个项目,他们从指定的站点下载射电望远镜收集的信息的片断,用自己的计算机运行分析,总处理数据量达到了15T。这相当于使用一台PC机工作482023年,相当于使用超级计算机工作48年。 我们所处的太阳系仅仅是银河系4000亿颗恒星中的一颗,而银河系不过是总星系中数以亿计的星系中的一个。我们常常会想,在茫茫的宇宙中定然有很多很多的生命存在,而且其中会有和人类一样有着高智商的生物—外星人。 外星人可能试图接触我们 美国康奈尔大学的两位物理学家菲利普·莫里森和朱塞佩·科尼在他们发表在《自然》杂志上的一篇文章里,首次阐述了有关无线电信号可以在两个星球之间传播的问题。这直接引发了用射电望远镜探测宇宙间是否有其他文明存在的提议。 科学家们认为:如果“外星人”在试图与我们接触的时候,在“他们”的信号中加入一些有意义的信息,那么信号几乎可以肯定是脉冲信号。 在宇宙中,存在着很多电磁波,但是绝大多数自然界的电磁波是杂乱无章的,较有规律的脉冲很有可能是脉冲星或黑洞发出来的,另一个可能性就是外星人发出来的。因为脉冲星发出来的电磁波频率非常高,理论上黑洞发出来的脉冲过于短促而人类暂时无法探测到。所以,一系列的脉冲可以很容易地被分别出来,而且具有离散抵消机制的脉冲明显被认为是人造信号(自然的离散通常造成高频先到)。我们如果能找到这样的脉冲信号,几乎就能肯定外星人正在试图接触我们。 从地外信号中寻找蛛丝马迹 1960年8月8号,美国射电天文学家德雷克用一架26米的射电望远镜对附近的两颗星星进行了观察。这被认为是现代“地外文明搜寻计划”的首次尝试。自那以后,全世界涌现了60多家有关的机构。SETI(Search For Extraterres Trial Intelligence)研究所是这些机构中做得最出色的一个。 SETI研究所通过对阿莱伯克射电望远镜采集的信号进行分析,希望从中寻找外星人的蛛丝马迹。我们先来看一看SETI研究所是怎样分析这些信息的。 由于行星的自转,“外星人”的信号发生器和我们的射电望远镜都是在沿着各自行星的中心轴做圆形运动。这种运动的结果是天空对于射电望远镜来说是“漂移”的。通常,任何目标在“漂移”过射电望远镜的碟形天线的焦点中线(或者说目标束)时大约要12秒的时间。因此只有在12秒内产生并消失的信号才有可能被认为是地外信号。 要找到外星人信号,科学家要做的第一件事就是消除由于行星“漂移”所带来的多普勒效应(啁啾频率)。最好的方法是,在每一个啁啾频率上,对107秒的数据消除啁啾之后, 再将数据分成8块,每块13.375秒的数据块。每个13.375秒的数据块用0.07Hz的滤波器搜索,试图发现一些有意义的峰值信号(这意味着对每个啁啾频率上的每个数据块要进行约 131072次测试)。在这第一步的处理中,计算机要进行约2000亿次的运算。接下来,将滤波器的带宽加倍,重复进行测试,直到带宽加到1200 Hz,这样需要2750亿次的运算。 科学家们认为,外星人发出来的信号可能是连续的强脉冲或有间隔的规律脉冲。因此,接下来SETI研究所采用了两种方法对信号进行分析。 一种是用于搜索较强脉冲的三相脉冲法。三相脉冲法是在整个频谱的每个频段上,搜索那些超过特定门限的脉冲。对于超越门限的每一对脉冲信号,SETI程序再搜索其中间脉冲信号。 另一种是可以用来搜索较平均但较弱脉冲的快速折叠算法。快速折叠算法是通过将数据包分割成相同大小的块,然后将这些块相加。这样,如果块的大小正好是脉冲周期的倍数,那么脉冲信号就会因为叠加而增强,就会从背景噪声中显现出来。最困难的是,我们根本不知道脉冲的频率是多少,所以不得不尝试不同的频率。 据估计,计算机要完成大约2.4万亿到3.8万亿次浮点运算,才能完成一个工作单元(大约0.25M)。 网格计算消化海量数据 要想完成这样的运算,必须需要一台完全难以实现的超级计算机来完成这个工作。SETI研究所根本不可能建造或者购买这样的计算机,因此他们采取了另一种平衡的方法。那就是用比较小的计算机而花更多的时间来完成这个工作。但新的问题是,这样就会有许许多多的堆积如山的数据等待处理。那么,他们是否可以利用大量的这种小型计算机同时处理不同的数据呢? 伯克利(UC Berkeley)的SETI计划的成员注意到已经有成千上万的计算机是可以利用的。这些计算机中有很多通常是什么也不做,只是在运行屏幕保护,白白地浪费电。SETI研究所希望能够通过借用网上闲置的计算机来完成这个既有趣而又十分困难的任务。好在这些要被分析的数据可以很容易地被分解成很多小的数据包,这些小的数据包可以同时被处理,因为它们之间是相互独立的。因此,SETI@home网格也就产生了。 虽然到目前为止尚未找到外星人,但是,SETI@home项目充分证明了网格计算的强大威力,同时也让我们感觉到网格计算其实离我们很近。 随着普通计算机运算能力的增强、天文望远镜的改进、网格技术的发展,SETI研究所的科学家们越来越乐观地相信,他们能够在不久的将来找到宇宙来的“人造”信号,以证明在浩瀚的宇宙中人类并不孤独。
在线维基百科对云计算的定义 Cloud computing is a style of computing in which dynamically scalable and often virtualized resources are provided as a service over the Internet. 将搜索引擎返回的每一个页看作一个个“云滴”,通过逆向云发生器,逐层简约,最终得到用户的搜索期望。 网页语义的向量表示 这是未来十年的希望。
One for many 云计算:互联网上某些节点强大的信息资源,包括存储资源、计算资源、软件资源、数据资源、管理资源,通过云计算以互联网上的服务方式,变成广大用户动态、可伸缩的虚拟资源,为用户所用。强调需求驱动、用户主导、按需服务,即用即付,用完即散,不对用户集中控制,用户不关心服务者在什么地方。
网格计算和云计算的相同点 资源共享 虚拟计算
并行计算为主:依托网络将跨地域的计算机组织起来并行作业,但需要通过调度系统将作业分解到各个不同的物理节点去。 网格计算 云计算 并行计算为主:依托网络将跨地域的计算机组织起来并行作业,但需要通过调度系统将作业分解到各个不同的物理节点去。 集群计算为主:节点自主、自治,节点之内常常是集群计算 屏蔽异构:用中间件屏蔽异构系统,使用户面向同一环境,实现资源共享 承认异构:承认节点在原理、规模、能力上的差异性,依靠互操作来实现节点之间的资源共享 完成一次性特定任务:要完成的任务是预先设定的 完成持久性多样化服务:中心提供计算、存储等资源,用户利用云计算按需聚合、柔性重组,获取持久、个性化服务, 协作式运营:带宽保证、性能保障,结果确定 商业式运营:尽力而为的服务、按租使用,按用付费,多租赁,即用即散 钱德沛教授:云计算和网格计算差别何在? 2008年10月16日,中国电子学会专家论坛——云计算研讨会在北京召开。前信息产业部部长、中国电子学会理事长吴基传,工业和信息化部副司长丁文武,李德毅院士、高庆狮院士、倪光南院士、钱德沛教授、郑纬民教授等专家学者,以及Google、微软、趋势科技、IBM等知名企业的专家汇聚一堂,共同讨论了云计算的概念、应用等问题。 席间,国家“十五”863计划“计算机软硬件技术” 主题专家组副组长、北京航空航天大学钱德沛教授介绍了自己关于云计算的看法,并分析了云计算与网格计算、Web计算等的差异,并提出云计算应该与网格计算结合、取长补短。 云计算与网格计算的概念 首先,究竟什么是云计算(Cloud Computing)呢?钱教授指出,云就是互联网——做网络的似乎总是把网络抽象成云;云计算就是利用在Internet中可用的计算系统,能够支持互联网各类应用的系统。云计算是以第三方拥有的机制提供服务,为了完成功能,用户只关心需要的服务,这是云计算基本的定义。 相对于网格计算(Grid Computing)和分布式计算,云计算拥有明显的特点:第一是低成本,这是最突出的特点。第二是虚拟机的支持,使得在网络环境下的一些原来比较难做的事情现在比较容易处理。第三是镜象部署的执行,这样就能够使得过去很难处理的异构的程序的执行互操作变得比较容易处理。第四是强调服务化,服务化有一些新的机制,特别是更适合商业运行的机制。 那么网格计算的特点又是什么呢? 网格计算有了十几年的历史。网格基本形态是什么?是跨地区的,甚至跨国家的,甚至跨洲的这样一种独立管理的资源结合。资源在独立管理,并不是进行统一布置、统一安排的形态。网格这些资源都是异构的,不强调有什么统一的安排。另外网格的使用通常是让分布的用户构成虚拟组织(VO),在这样统一的网格基础平台上用虚拟组织形态从不同的自治域访问资源。此外,网格一般由所在地区、国家、国际公共组织资助的,支持的数据模型很广,从海量数据到专用数据以及到大小各异的临时数据集合,在网上传的数据,这是网格目前的基本形态。 云计算与网格计算区别何在 可以看出,网格计算和云计算有相似之处,特别是计算的并行与合作的特点;但他们的区别也是明显的。主要有以下几点: 首先,网格计算的思路是聚合分布资源,支持虚拟组织,提供高层次的服务,例如分布协同科学研究等。而云计算的资源相对集中,主要以数据中心的形式提供底层资源的使用,并不强调虚拟组织(VO)的概念。 其次,网格计算用聚合资源来支持挑战性的应用,这是初衷,因为高性能计算的资源不够用,要把分散的资源聚合起来;后来到了2004年以后,逐渐强调适应普遍的信息化应用,特别在中国,做的网格跟国外不太一样,就是强调支持信息化的应用。但云计算从一开始就支持广泛企业计算、Web应用,普适性更强。 第三,在对待异构性方面,二者理念上有所不同。网格计算用中间件屏蔽异构系统,力图使用户面向同样的环境,把困难留在中间件,让中间件完成任务。而云计算实际上承认异构,用镜像执行,或者提供服务的机制来解决异构性的问题。当然不同的云计算系统还不太一样,像Google一般用比较专用的自己的内部的平台来支持。 第四,网格计算用执行作业形式使用,在一个阶段内完成作用产生数据。而云计算支持持久服务,用户可以利用云计算作为其部分IT基础设施,实现业务的托管和外包。 第五,网格计算更多地面向科研应用,商业模型不清晰。而云计算从诞生开始就是针对企业商业应用,商业模型比较清晰。 总之,云计算是以相对集中的资源,运行分散的应用(大量分散的应用在若干大的中心执行);而网格计算则是聚合分散的资源,支持大型集中式应用(一个大的应用分到多处执行)。但从根本上来说,从应对Internet的应用的特征特点来说,他们是一致的,为了完成在Internet情况下支持应用,解决异构性、资源共享等等问题。 那么,网格计算和云计算有没有可能取长补短、互为补充呢?钱教授提到,如果这两者结合起来,也许可以聚合大量分散的资源,从而支持各种各样的大型集中应用以及分散的应用。 最后,钱教授还谈到,在云计算技术方面,有三个需要关注的问题。第一是安全,因为要想作为公共基础设施必须取得用户的充分信任。第二是标准化,不能再走中间件的老路。第三是开源,要走开放的平台,这样才有发展。 云计算与网格计算的深入比较 作者:网界网 祁金华 在写这篇文章之前,曾经有很多人问过记者类似的问题,比如说,“云计算跟网格计算到底什么关系”、“他们两个的区别到底在哪里”、“能不能简单地讲一下其中的区别”? 其实,一下子很难讲清楚其中的具体区别。记者此前曾经在首次接触云计算概念时,将云计算看成“网格2.0”(参见:云计算:网格2.0,http://www.cnw.com.cn/P/165),这一点得到了一些业内人士的认可;后来记者也曾经翻译了美国《Network World》的一篇文章,澄清了有关云计算的一些定义(参见:云计算的五种定义考,http://www.cnw.com.cn/P/166)。 不过,记者认为这些都似乎还比较空泛。在采访过网格计算相关的技术专家和云计算方面的技术专家之后,记者尝试着给出一些自己的看法。 当然,从定义上来说,二者都试图将各种IT资源看成一个虚拟的资源池,然后向外提供相应的服务。云计算试图让“用户透明地使用资源”,而网格计算当初的口号就是让“使用IT资源像使用水电一样简单”。 根据维基百科所提供的定义,云计算是一种宽泛的概念,它允许用户通过互联网访问各种基于IT资源的服务,这种服务允许用户无需了解底层IT基础设施架构就能够享受到作为服务的“IT相关资源”。 而网格的内涵包括两个方面,一个方面是所谓的效用计算或者随需计算,在这一点上面,网格计算跟云计算是非常相似的,都是通过一个资源池或者分布式的计算资源来提供在线的计算或者存储等服务;另外一个方面就是所谓的“虚拟超级计算机”,以松耦合的方式将大量的计算资源连接在一起提供单个计算资源所无法完成的超级计算能力,这也是狭义上的网格计算跟云计算概念上最大的差别,也是本文要讨论的出发点。 目标不同 一般来说,谈到网格计算大家都会想到当年风靡一时的搜寻外星人项目,也就是说通过在本机安装一个屏幕保护软件,就能够利用大家每个人的PC闲暇时候的计算能力来参与搜寻外星人的计算。 这也说明了网格的目标,是想要尽可能地利用各种资源。它通过特定的网格软件,将一个庞大的项目分解为无数个相互独立的、不太相关的子任务,然后交由各个计算节点进行计算。即便某个节点出现问题,没有能够及时返回结果,也不影响整个项目的进程,甚至即便某一个计算节点突然崩溃,其所承担的计算任务也能够被任务调度系统分配给其他的节点继续完成。应该说,从这一点来说,作业调度是网格计算的核心价值。 现在谈到云计算的时候,我们就能够立刻想到通过互联网将数据中心的各种资源打包成服务向外提供。一般来说,尽管云计算也像网格计算一样将所有的资源构筑成一个庞大的资源池,但是云计算向外提供的某个资源,是为了完成某个特定的任务。比如说某个用户可能需要从资源池中申请一定量的资源来部署其应用,而不会将自己的任务提交给整个网格来完成。 从这一点来看,网格的构建大多为完成某一个特定的任务需要,这也是会有生物网格、地理网格、国家教育网格等各种不同的网格项目出现的原因。而云计算一般来说都是为了通用应用而设计的,没有专门的以某种应用命名的网格。 分配资源方式的不同 对于网格计算来说,其资源虽然也已经被池化,在外界看来就是一个巨大的资源池。对于要提交特定任务的用户来说,他并不知道自己的任务将会在哪些网格的物理节点上运行。他只是按照特定的格式,将作业任务提交给网格系统,然后等待网格返回结果。 而网格作业调度系统自动找寻与该任务相匹配的资源,然后寻找出空闲的物理节点,将任务分配过去直至完成。虽然网格能够实现跨物理机进行并行作业处理,但是需要用户先将并行算法写好,并且通过调度系统将作业分解到各个不同的物理节点进行,这个过程相对比较复杂,这也是很多网格计算被建设用来完成特定需求的原因。 国家教育网格项目组负责人金海教授曾经对记者表示,现阶段的教育网格还只能实现将某一个特定任务派往特定的某一个节点,也就是说网格可以监控某一个节点是空闲的,然后分派任务,但是如果没有合适的节点能够达到任务完成所需要的配置,那么任务就必须等待其他任务将资源释放出来,不能利用分散的配置。 而云计算是通过虚拟化将物理机的资源进行切割,从这个角度来实现资源的随需分配和自动增长,并且其资源的自动分配和增减不能超越物理节点本身的物理上限。尽管从控制端来看,云计算也将所有的IT资源看成是一个资源池,但是不同芯片的物理机会被归类到不同的资源池中。 比如说可以呼应某一个应用的请求,而给其分配一颗x86 CPU或者Power CPU、安腾CPU,分配内存、硬盘空间,再给其安装Linux系统、相关的应用,但是不能同时分配一颗x86 CPU和一颗其他的CPU以构成一个异构的环境。而且,如果节点中的物理机最高CPU数量是4颗的话,那么即使由10台这样的节点构成一个40CPU的资源池,也不能为某一个应用分配8颗CPU的虚拟节点。 从这种角度来说,Amazon在2006年所推出的EC2项目(Elastic Compute Cloud,弹性计算云)的确算的上是云计算项目,只不过那个时候云计算概念未兴起,而网格计算的概念方兴未艾,Amazon在那个时候依然用网格的概念向外推销该项目。 殊途同归 其实就像很多人大致了解的那样,网格计算与云计算的确有很多的相似之处,这两者都能够被看成是分布式计算所衍生出来的概念,都是为了让IT资源能够对用户透明,为了让IT资源能够达到更好的使用率。 从这个提高资源利用率的角度出发,逐渐诞生了Web服务的概念,然后网络公司通过部署数以万计的服务器构成庞大的计算资源,得以提供此前无法完成的新服务。企业或者个人能够通过互联网利用那些大网络公司所释放出来的计算资源,进行应用部署或者向外提供服务。这就是从网格计算到云计算的历史过程。 二者的意义就在于,无论是用户还是企业开发者,都能够通过互联网来获得数据或者进行计算,尽管本地资源有限,但是能够通过网络进行复杂的运算,其数据的计算过程对于用户来说就像互联网网络对于本地网络用户一样,正如大家所记得那个网络云,后端的实现是透明的。 确定的交互:按规定要求和程序输入/输出,人不主动参与 人机交互、群体智能:大众参与的计算,包括不确定性、软计算,相互沟通交流
热点问题二:关于安全 云计算本身安全不安全? 云计算为改善安全能做出什么贡献?
云计算不是专门为了解决安全问题的新式武器,它不能避免软件中出现漏洞,网络上出现病毒等 云计算把安全作为服务的形式(SaaS),实现安全服务的专业化、社会化,改变当前人人都在打补丁、个个都在杀病毒的状况;也可以把备份作为服务的形式,实现专门的云备份服务。
热点问题三:“私有云” 会不会有私有云? 企业讲的私有云是什么?
五、云计算对信息产业的影响
影响一:信息产业面临重新洗牌 大量的中小企业软件开发商面临着工作平台、工作对象、工作方式的重组: 在云计算的大潮中要么做大做强服务,成为“大款” ;要么“傍大款”,依附发展;否则被淘汰。 面向单机 面向网络 面向软件 面向服务 软件工程 需求工程 工作平台: 工作对象: 工作方式:
如同电力时代高压传输问题解决之后大规模甚至超大规模核电厂的建立一样,信息时代做大做强了的大规模甚至超大规模的数据中心、存储中心、软件中心、计算中心、媒体中心、娱乐中心、安全中心的建立,势必成为未来云计算的基本要素。 将搜索引擎返回的每一个页看作一个个“云滴”,通过逆向云发生器,逐层简约,最终得到用户的搜索期望。 网页语义的向量表示 这是未来十年的希望。
影响二:软件产业结构面临调整 云计算使得信息服务的社会化成为可能,改变并精细化了大众需求,催生新的市场和新的服务业; 软件产业结构发生变化,基于内容的信息服务业所占比重越来越大: 单机的系统软件和中间件所占比重逐渐减小,软件依附于应用; 嵌入式软件更加个性化、柔性化。 如:诗词消费群体,My MP3,个人匹配兴趣搜索引擎等 2008年我国软件产值构成分析
用户只为自己所得到的服务付费。基于内容的服务(如音乐服务、视频服务、交通服务、客户关系管理服务、安全服务等)在高度综合、集中、专业化的同时,又高度分化、碎片化、精细化。一方面,龙头服务企业凸显;另一方面,又能够满足无穷无尽社区表现出的长尾市场的多样化需求。 将搜索引擎返回的每一个页看作一个个“云滴”,通过逆向云发生器,逐层简约,最终得到用户的搜索期望。 网页语义的向量表示 这是未来十年的希望。
基于内容的服务高度精细化、碎片化的案例 舞剧服务中心 歌剧服务中心 京剧服务中心 地方剧服务中心 二人转服务中心 赵本山文艺作品服务中心
影响三:软件开发的组织方式面临变革 出现各种各样开源、开放的软件合作开发社区。 淡化软件产品的生命周期,软件在线更新,贴近用户新需求,强调软件的演化。 软件频繁地被重用和重组,在第一时间满足客户需求。
影响四:大众普遍参与形成群体智慧 海量的草根用户在偏好依附发展,构成网络软件生态环境的基础。 万维网上的知名服务吸引了大众普通参与开发,确保了服务质量,扩大了应用覆盖范围。 数据来源于http://www.programmableweb.com 各种各样的信息资源中心和P2P运用相得益彰。
影响五:网络端设备多元化个性化 网络环境下泛在的计算 手机、游戏机、电视机、上网本、笔记本电脑的差别变小 端产品 iX 更加简洁、多样,泛在计算成为趋势 对于端设备制造商而言: 通过I/O接口连接网络的端设备必须具备灵活的功能,能方便地进行功能的柔性重组,解决广义的“最后一公里”问题。
云计算在中国:服务提振经济
Thanks Email: leedeyi@tsinghua.edu.cn Homepage: http://www.ldy.csai.tsinghua.edu.cn