分布式计算是一种计算方法,和集中式计算是相对的。随着计算技术的发展,有些应用须要很是巨大的计算能力才能完成,若是采用集中式计算,须要耗费至关长的时间来完成。分布式计算将该应用分解成许多小的部分,分配给多台计算机进行处理。这样能够节约总体计算时间,大大提升计算效率。算法
定义
广义定义
所谓分布式计算是一门计算机科学,它研究如何把一个须要很是巨大的计算能力才能解决的问题分红许多小的部分,而后把这些部分分配给许多计算机进行处理,最后把这些计算结果综合起来获得最终的结果。 最近的分布式计算项目已经被用于使用世界各地成千上万位志愿者的计算机的闲置计算能力,经过因特网,您能够分析来自外太空的电讯号,寻找隐蔽的黑洞,并探索可能存在的外星智慧生命;您能够寻找超过1000万位数字的梅森质数;您也能够寻找并发现对抗艾滋病病毒的更为有效的药物。这些项目都很庞大,须要惊人的计算量,仅仅由单个的电脑或是我的在一个能让人接受的时间内计算完成是决不可能的。
中国科学院的定义
分布式计算是一种新的计算方式。所谓分布式计算就是在两个或多个软件互相共享信息,这些软件既能够在同一台计算机上运行,也能够在经过网络链接起来的多台计算机上运行。分布式计算比起其它算法具备如下几个优势:
一、稀有资源能够共享。
二、经过分布式计算能够在多台计算机上平衡计算负载。
三、能够把程序放在最适合运行它的计算机上。
其中,共享稀有资源和平衡负载是计算机分布式计算的核心思想之一。
意义格局
分布式计算与人类
因为现代人类各个课题学科繁多,涉及面广,而分类又细。而当今的每一个学科彷佛都须要进行大量的计算。天文学研究组织须要计算机来分析太空脉冲(pulse),星位移动;生物学家须要计算机来模拟蛋白质的折叠(protein folding)过程;药物学家想要研制克服艾滋病(AIDS)或非典(SARS)的药物;数学家想计算最大的质数和圆周率的更精确值;经济学家要用计算机分析计算在几万种因素考虑下某个企业/城市/国家的发展方向从而宏观调控。因而可知,人类将来的科学,时时刻刻离不开计算。而分布式计算(Distributed Computing),以其独特的优势——便宜、高效而愈来愈受到社会的关注。
分布式计算格局
就目前来看,全球的各类分布式计算已有约百种,这些计算大多互无联系、独立管理、独立使用本身的一套软件。这种分布式计算互相割据的格局很不利于发展的须要。好比,某个生物学研究机构须要利用世界各地志愿者的计算机来模拟蛋白质折叠的过程,那个生物学研究机构没有分布式计算方面的专业人才,而可是社会上也并无任何公司能够提供这样的服务,他们就不得不本身花费大量精力用于开发分布式计算的服务器、客户端。这样一来,原来能够用于研究生物的时间用在了别的地方。刚才提到的生物学研究机构就是美国斯坦福大学的PANDE小组。
BOINC一统大局
为了改变这种杂乱无章的割据,美国加州大学伯克利分校(UC Berkeley)首先提出了创建BOINC的想法。BOINC的中文全称是伯克利开放式网络计算平台(Berkeley Open Infrastructure for Network Computing),他可以把许多不一样的分布式计算项目联系起来统一管理。并对计算机资源进行统一分配(比方您对研究艾滋病药物和探索地外文明同时感兴趣,您就能够同时选择两个运行,并设置优先级)。对统计评分系统进行统一管理(不管你在为哪一个项目工做,只要你奉献CPU时间长,就积分高)。有了这样的统一管理,的确给PANDE小组这样的科学研究机构提供了便利!
BOINC已经成熟,多个项目已经成功运行于BOINC平台之上,如SETI@home,LHC@home等。
安全性
对用户方来讲,加入任何一个项目以前,您必须确保您能够信任项目的研制方,主要涉及两方面:
计算机上的隐私数据
您从项目方下载的计算程序,运行在本机,并且能够访问网络,所以,只有可靠的项目方才能保证您计算机上的隐私数据不会恶意的取走、修改等。
我的计算机的寿命
虽然分布式计算的计算程序通常运行在最低优先级,不会对您的平常使用形成影响,但计算程序全负荷运行时仍会对计算机的各个部件形成必定压力,要了解更多请查看分布式计算对计算机软硬件的影响。数据库
对项目方来讲,参加分布式计算的志愿者毕竟不是项目方本身的人员,并非全体可信任,所以必须引入必定的冗余计算机制,才能防止计算错误、恶意做弊等。安全
下面附带分布式计算入门教程
教学课程:分布式计算入门服务器
(课程针对大数据分步式计算中的相关技术进行讲解,核心讲解流式计算和内存计算技术,阐述阿里云在处理这些功能时所使用的技术,并对阿里在这里的技术优化方式进行了详细的讲解。)网络
教程课时并发
课时1:流式计算概述 27:45负载均衡
课时2:流计算与批量计算的区别 07:16框架
课时3:流式计算典型系统技术分析 19:09分布式
课时4:阿里计算核心技术概述 25:49学习
课时5:有状态计算实现方式 17:35
课时6:StreamSQL 14:11
课时7:大数据和数据库的结合 33:12
课时8:分析型数据库服务ADS 05:55
课时9:统一计算框架 16:01
课程目标
适合人群
更多精品课程:
阿里云大学官网(阿里云大学 - 官方网站,云生态下的创新人才工场)