分布式計(jì)算是一門計(jì)算機(jī)科學(xué),它研究如何把一個(gè)需要非常巨大的計(jì)算能力才能解決的問題分成許多小的部分,然后把這些部分分配給許多計(jì)算機(jī)進(jìn)行處理,最后把這些計(jì)算結(jié)果綜合起來得到最終的結(jié)果。分布式網(wǎng)絡(luò)存儲(chǔ)技術(shù)是將數(shù)據(jù)分散地存儲(chǔ)于多臺(tái)獨(dú)立的機(jī)器設(shè)備上。分布式網(wǎng)絡(luò)存儲(chǔ)系統(tǒng)采用可擴(kuò)展的系統(tǒng)結(jié)構(gòu),利用多臺(tái)存儲(chǔ)服務(wù)器分擔(dān)存儲(chǔ)負(fù)荷,利用位置服務(wù)器定位存儲(chǔ)信息,不但解決了傳統(tǒng)集中式存儲(chǔ)系統(tǒng)中單存儲(chǔ)服務(wù)器的瓶頸問題,還提高了系統(tǒng)的可靠性、可用性和擴(kuò)展性。
概述當(dāng)計(jì)算機(jī)的程序和數(shù)據(jù)通過網(wǎng)絡(luò)分布在多于一個(gè)的計(jì)算機(jī)上時(shí),計(jì)算就成為“分布式的”。以前的計(jì)算通常是由計(jì)算中心完成的。盡管仍存在這樣的計(jì)算中心,大小企業(yè)卻逐漸將應(yīng)用程序移至(分布到)企業(yè)中能最有效地完成計(jì)算的 地點(diǎn)進(jìn)行,通常是桌面工作站、局域網(wǎng)服務(wù)器、部門服務(wù)器、Web服務(wù)器和其他服務(wù)器的混合。比較流行的是客戶/服務(wù)器模式,客戶機(jī)只具有一定的功能,其他的功能需要從提供服務(wù)的服務(wù)器那里獲得。HTTP協(xié)議就是一個(gè)例子。在分布式計(jì)算環(huán)境中,數(shù)據(jù)的存儲(chǔ)和處理可在本地工作站上進(jìn)行。
分布式計(jì)算分布式計(jì)算是近年提出的一種新的計(jì)算方式。所謂分布式計(jì)算就是在兩個(gè)或多個(gè)軟件互相共享信息,這些軟件既可以在同一臺(tái)計(jì)算機(jī)上運(yùn)行,也可以在通過網(wǎng)絡(luò)連接起來的多臺(tái)計(jì)算機(jī)上運(yùn)行。分布式計(jì)算是一種計(jì)算方法,和集中式計(jì)算是相對的。隨著計(jì)算技術(shù)的發(fā)展,有些應(yīng)用需要非常巨大的計(jì)算能力才能完成,如采用集中式計(jì)算,需要耗費(fèi)相當(dāng)長的時(shí)間來完成。分布式計(jì)算將該應(yīng)用分解成許多小的部分,分配給多臺(tái)計(jì)算機(jī)進(jìn)行處理。這樣可以節(jié)約整體計(jì)算時(shí)間,大大提高計(jì)算效率1。
分布式計(jì)算比起其它算法具有以下幾個(gè)優(yōu)點(diǎn):
1、稀有資源可以共享;
2、通過分布式計(jì)算可以在多臺(tái)計(jì)算機(jī)上平衡計(jì)算負(fù)載;
3、可以把程序放在最適合運(yùn)行它的計(jì)算機(jī)上;
其中,共享稀有資源和平衡負(fù)載是計(jì)算機(jī)分布式計(jì)算的核心思想之一。
實(shí)際上,網(wǎng)格計(jì)算就是分布式計(jì)算的一種。如果我們說某項(xiàng)工作是分布式的,那么,參與這項(xiàng)工作的一定不只是一臺(tái)計(jì)算機(jī),而是一個(gè)計(jì)算機(jī)網(wǎng)絡(luò),顯然這種“螞蟻搬山”的方式將具有很強(qiáng)的數(shù)據(jù)處理能力。網(wǎng)格計(jì)算的實(shí)質(zhì)就是組合與共享資源并確保系統(tǒng)安全。
分布式計(jì)算的方法
分布式計(jì)算是利用互聯(lián)網(wǎng)上的計(jì)算機(jī)的 CPU 的閑置處理能力來解決大型計(jì)算問題的一種計(jì)算科學(xué)。下面,我們看看它是怎么工作的:
首先, 要發(fā)現(xiàn)一個(gè)需要非常巨大的計(jì)算能力才能解決的問題。這類問題一般是跨學(xué)科的、極富挑戰(zhàn)性的、人類急待解決的科研課題。其中較為著名的是:
1.解決較為復(fù)雜的數(shù)學(xué)問題,例如:GIMPS(尋找最大的梅森素?cái)?shù))。
2.研究尋找最為安全的密碼系統(tǒng),例如:RC-72(密碼破解)。
3.生物病理研究,例如:Folding@home(研究蛋白質(zhì)折疊,誤解,聚合及由此引起的相關(guān)疾?。?。
4.各種各樣疾病的藥物研究,例如:United Devices(尋找對抗癌癥的有效的藥物)。
5.信號處理,例如:SETI@Home(在家尋找地外文明)。
從這些實(shí)際的例子可以看出,這些項(xiàng)目都很龐大,需要驚人的計(jì)算量,僅僅由單個(gè)的電腦或是個(gè)人在一個(gè)能讓人接受的時(shí)間內(nèi)計(jì)算完成是決不可能的。在以前,這些問題都應(yīng)該由超級計(jì)算機(jī)來解決。但是, 超級計(jì)算機(jī)的造價(jià)和維護(hù)非常的昂貴,這不是一個(gè)普通的科研組織所能承受的。隨著科學(xué)的發(fā)展,一種廉價(jià)的、高效的、維護(hù)方便的計(jì)算方法應(yīng)運(yùn)而生——分布式計(jì)算!
分布式計(jì)算與互聯(lián)網(wǎng)的普及隨著計(jì)算機(jī)的普及,個(gè)人電腦開始進(jìn)入千家萬戶。與之伴隨產(chǎn)生的是電腦的利用問題。越來越多的電腦處于閑置狀態(tài),即使在開機(jī)狀態(tài)下CPU的潛力也遠(yuǎn)遠(yuǎn)不能被完全利用。我們可以想象,一臺(tái)家用的計(jì)算機(jī)將大多數(shù)的時(shí)間花費(fèi)在“等待”上面。即便是使用者實(shí)際使用他們的計(jì)算機(jī)時(shí),處理器依然是寂靜的消費(fèi),依然是不計(jì)其數(shù)的等待(等待輸入,但實(shí)際上并沒有做什么)?;ヂ?lián)網(wǎng)的出現(xiàn), 使得連接調(diào)用所有這些擁有閑置計(jì)算資源的計(jì)算機(jī)系統(tǒng)成為了現(xiàn)實(shí)。
分布式計(jì)算項(xiàng)目那么,一些本身非常復(fù)雜的但是卻很適合于劃分為大量的更小的計(jì)算片斷的問題被提出來,然后由某個(gè)研究機(jī)構(gòu)通過大量艱辛的工作開發(fā)出計(jì)算用服務(wù)端和客戶端。服務(wù)端負(fù)責(zé)將計(jì)算問題分成許多小的計(jì)算部分,然后把這些部分分配給許多聯(lián)網(wǎng)參與計(jì)算的計(jì)算機(jī)進(jìn)行并行處理,最后將這些計(jì)算結(jié)果綜合起來得到最終的結(jié)果。
當(dāng)然,這看起來也似乎很原始、很困難,但是隨著參與者和參與計(jì)算的計(jì)算機(jī)的數(shù)量的不斷增加, 計(jì)算計(jì)劃變得非常迅速,而且被實(shí)踐證明是的確可行的。一些較大的分布式計(jì)算項(xiàng)目的處理能力已經(jīng)可以達(dá)到甚而超過世界上速度最快的巨型計(jì)算機(jī)。
您也可以選擇參加某些項(xiàng)目以捐贈(zèng)的 Cpu 內(nèi)核處理時(shí)間,您將發(fā)現(xiàn)您所提供的 CPU 內(nèi)核處理時(shí)間將出現(xiàn)在項(xiàng)目的貢獻(xiàn)統(tǒng)計(jì)中。您可以和其他的參與者競爭貢獻(xiàn)時(shí)間的排名,您也可以加入一個(gè)已經(jīng)存在的計(jì)算團(tuán)體或者自己組建一個(gè)計(jì)算小組。這種方法很利于調(diào)動(dòng)參與者的熱情。
參與計(jì)算隨著民間的組隊(duì)逐漸增多, 許多大型組織(例如公司、學(xué)校和各種各樣的網(wǎng)站)也開始了組建自己的戰(zhàn)隊(duì)。同時(shí),也形成了大量的以分布式計(jì)算技術(shù)和項(xiàng)目討論為主題的社區(qū),這些社區(qū)多數(shù)是翻譯制作分布式計(jì)算項(xiàng)目的使用教程及發(fā)布相關(guān)技術(shù)性文章,并提供必要的技術(shù)支持。
那么誰可能加入到這些項(xiàng)目中來呢? 當(dāng)然是任何人都可以! 如果您已經(jīng)加入了某個(gè)項(xiàng)目,而且曾經(jīng)考慮加入計(jì)算小組, 您將在中國分布式計(jì)算總站及論壇里找到您的家。任何人都能加入任何由我站的組建的分布式計(jì)算小組。希望您在中國分布式總站及論壇里發(fā)現(xiàn)樂趣。
參與分布式計(jì)算——一種能充分發(fā)揮您的個(gè)人電腦的利用價(jià)值的最有意義的選擇——只需要下載有關(guān)程序,然后這個(gè)程序會(huì)以最低的優(yōu)先度在計(jì)算機(jī)上運(yùn)行,這對平時(shí)正常使用計(jì)算機(jī)幾乎沒有影響。如果你想利用計(jì)算機(jī)的空余時(shí)間做點(diǎn)有益的事情,還猶豫什么?馬上行動(dòng)起來吧,你的微不足道的付出或許就能使你在人類科學(xué)的發(fā)展史上留下不小的一筆呢。
分布式存儲(chǔ)系統(tǒng)分布式存儲(chǔ)系統(tǒng),是將數(shù)據(jù)分散存儲(chǔ)在多臺(tái)獨(dú)立的設(shè)備上。傳統(tǒng)的網(wǎng)絡(luò)存儲(chǔ)系統(tǒng)采用集中的存儲(chǔ)服務(wù)器存放所有數(shù)據(jù),存儲(chǔ)服務(wù)器成為系統(tǒng)性能的瓶頸,也是可靠性和安全性的焦點(diǎn),不能滿足大規(guī)模存儲(chǔ)應(yīng)用的需要。大數(shù)據(jù)時(shí)代的來臨使得對分布式存儲(chǔ)系統(tǒng)的研究具有重要的意義:
針對海量數(shù)據(jù)存儲(chǔ),分布式數(shù)據(jù)存儲(chǔ)以其良好的可擴(kuò)展性。健壯性和高效性超越了傳統(tǒng)的集中式存儲(chǔ)技術(shù),但針對其本身的許多性能指標(biāo)比如數(shù)據(jù)冗余度、數(shù)據(jù)存取速度、帶寬占用率、存儲(chǔ)花費(fèi)和可靠性等使得不同的系統(tǒng)和不同的個(gè)人、企業(yè)對存儲(chǔ)要求的側(cè)重點(diǎn)不同。數(shù)據(jù)存儲(chǔ)多考慮存取效率、存儲(chǔ)花費(fèi),對數(shù)據(jù)抗毀性研究甚少。
針對海量數(shù)據(jù)的管理和維護(hù),維護(hù)數(shù)據(jù)一致性是分布式存儲(chǔ)系統(tǒng)維護(hù)數(shù)據(jù)的一個(gè)重點(diǎn)方向,由于互聯(lián)網(wǎng)環(huán)境千變?nèi)f化,數(shù)據(jù)更新速度和轉(zhuǎn)換頻率不斷加快,使得數(shù)據(jù)一致性維護(hù)面臨諸多問題,如可靠性問題、數(shù)據(jù)冗余問題、網(wǎng)絡(luò)動(dòng)蕩問題和惡意攻擊等問題嚴(yán)重影響了一致性維護(hù)策略的制定和發(fā)展。
P2P 數(shù)據(jù)存儲(chǔ)系統(tǒng)P2P數(shù)據(jù)存儲(chǔ)系統(tǒng)采用 P2P 網(wǎng)絡(luò)的特點(diǎn),即每個(gè)用戶都是數(shù)據(jù)的獲取者和提供者,沒有中心節(jié)點(diǎn),所以每個(gè)用戶都是對等存在的。利用這種特點(diǎn)建立而成的P2P 數(shù)據(jù)存儲(chǔ)系統(tǒng)可以將數(shù)據(jù)存放于多個(gè)對等節(jié)點(diǎn)上,當(dāng)需要數(shù)據(jù)時(shí),可以利用固定的資源搜索算法尋找數(shù)據(jù)資源,從而獲取想要的數(shù)據(jù)。
P2P 數(shù)據(jù)存儲(chǔ)系統(tǒng)的這種特點(diǎn)使得它非常適合存儲(chǔ)大量數(shù)據(jù)。首先,由于沒有中心服務(wù)器的存在,數(shù)據(jù)被分散存儲(chǔ)與各個(gè)對等節(jié)點(diǎn)上,這樣就不會(huì)出現(xiàn)某個(gè)節(jié)點(diǎn)負(fù)載過重的問題,可擴(kuò)展性好;其次,對于網(wǎng)絡(luò)攻擊的抗打擊能力強(qiáng),當(dāng)存在網(wǎng)絡(luò)攻擊時(shí),受打擊的節(jié)點(diǎn)損失的數(shù)據(jù)僅僅是整個(gè)數(shù)據(jù)存儲(chǔ)系統(tǒng)的一小部分,大部分資源仍然處于安全狀態(tài);最后,得益于P2P網(wǎng)絡(luò)優(yōu)良的可擴(kuò)展性和易維護(hù)性,P2P 數(shù)據(jù)存儲(chǔ)系統(tǒng)也有著這些優(yōu)點(diǎn)。
云存儲(chǔ)系統(tǒng)云存儲(chǔ)系統(tǒng)是一種網(wǎng)絡(luò)存儲(chǔ)系統(tǒng),通過將大量的數(shù)據(jù)存儲(chǔ)服務(wù)器集合起來,在內(nèi)部表現(xiàn)為多個(gè)存儲(chǔ)服務(wù)器協(xié)同工作,共同承擔(dān)數(shù)據(jù)存儲(chǔ)的任務(wù),將數(shù)據(jù)存儲(chǔ)任務(wù)劃分為多個(gè)子任務(wù)并行存儲(chǔ),從而減小了數(shù)據(jù)存儲(chǔ)的時(shí)間,并增加數(shù)據(jù)安全性。簡單來說,云存儲(chǔ)就是將數(shù)據(jù)或者文件存放到云端,數(shù)據(jù)使用者可以在任意地方通過互聯(lián)網(wǎng)非常方便的存取數(shù)據(jù),并且數(shù)據(jù)存儲(chǔ)在云端有著高安全性、低花費(fèi)等優(yōu)點(diǎn)2。
應(yīng)用所謂分布式就是指數(shù)據(jù)和程序可以不位于一個(gè)服務(wù)器上,而是分散到多個(gè)服務(wù)器,以網(wǎng)絡(luò)上分散分布的地理信息數(shù)據(jù)及受其影響的數(shù)據(jù)庫操作為研究對象的一種理論計(jì)算模型。分布式有利于任務(wù)在整個(gè)計(jì)算機(jī)系統(tǒng)上進(jìn)行分配與優(yōu)化,克服了傳統(tǒng)集中式系統(tǒng)會(huì)導(dǎo)致中心主機(jī)資源緊張與響應(yīng)瓶頸的缺陷,解決了網(wǎng)絡(luò)GIS 中存在的數(shù)據(jù)異構(gòu)、數(shù)據(jù)共享、運(yùn)算復(fù)雜等問題,是地理信息系統(tǒng)技術(shù)的一大進(jìn)步。
傳統(tǒng)的集中式GIS 起碼對兩大類地理信息系統(tǒng)難以適用,需用分布式計(jì)算模型。第一類是大范圍的專業(yè)地理信息系統(tǒng)、專題地理信息系統(tǒng)或區(qū)域地理信息系統(tǒng)。這些信息系統(tǒng)的時(shí)空數(shù)據(jù)來源、類型、結(jié)構(gòu)多種多樣,只有靠分布式才能實(shí)現(xiàn)數(shù)據(jù)資源共享和數(shù)據(jù)處理的分工合作。比如綜合市政地下管網(wǎng)系統(tǒng),自來水、燃?xì)狻⑽鬯臄?shù)據(jù)都分布在各自的管理機(jī)構(gòu),要對這些數(shù)據(jù)進(jìn)行采集、編輯、入庫、提取、分析等計(jì)算處理就必須采用分布式,讓這些工作都在各自機(jī)構(gòu)中進(jìn)行,并建立各自的管理系統(tǒng)作為綜合系統(tǒng)的子系統(tǒng)去完成管理工作。而傳統(tǒng)的集中式提供不了這種工作上的必要性的分工。第二類是在一個(gè)范圍內(nèi)的綜合信息管理系統(tǒng)。城市地理信息系統(tǒng)就是這種系統(tǒng)中一個(gè)很有代表性的例子。世界各國管理工作城市市政管理占很大比例,城市信息的分布特性及城市信息管理部門在地域上的分散性決定了多層次、多成份、多內(nèi)容的城市信息必須采用分布式的處理模式。
很明顯,傳統(tǒng)的集中式地理信息系統(tǒng)不能滿足分工明確的現(xiàn)代社會(huì)的需求,分布式地理信息系統(tǒng)的進(jìn)一步發(fā)展具有不可阻擋的勢頭。而且,分布式GIS 與網(wǎng)絡(luò)GIS 、客戶/服務(wù)器GIS計(jì)算模型、WWW計(jì)算模型的關(guān)系都很密切。分布式GIS 是實(shí)現(xiàn)網(wǎng)絡(luò)GIS 的途徑,是實(shí)現(xiàn)NGIS的一種重要計(jì)算模型;CIS模型實(shí)際上是分布式GIS 可供采用的一種具體化計(jì)算模型;WWW模型實(shí)際上也是分布式GIS模型可采用的一種具體化模型,而且也是具有相當(dāng)發(fā)展前途的分布式GIS模型。分布式GIS 與當(dāng)今主導(dǎo)地理信息系統(tǒng)發(fā)展方向的技術(shù)的緊密聯(lián)系使分布式GIS相應(yīng)地成為地理信息系統(tǒng)的主要發(fā)展趨勢。
本詞條內(nèi)容貢獻(xiàn)者為:
徐恒山 - 講師 - 西北農(nóng)林科技大學(xué)