593-955期

【766專題】雲端運算在商業智慧上的應用/part2

網格運算(Grid Computing) 何謂網格運算(Grid Computing)?大家可以思考一下,當全世界數百萬人同時連線到Google做查詢時,Google如何確保這數百萬人能在1秒內(不含網路傳輸資料的時間)獲得查詢的結果。要能處理這數百萬人的查詢,一種可能的方式就是利用一台功能很強的伺服器來協助資料的查詢。然而,機器效能的成長速度卻遠遠不及資料的成長速度。一台功能很強的伺服器,在資料呈指數成長的情況下,立即會呈現力不從心的現象,查詢效能會大大的降低。另一種較為可行的方式則是利用網格運算(Grid Computing),來協助大量資料的查詢。網格運算是分散式計算(Distributed Computing)的實現。它將網路上多台電腦(通常是數千台電腦)的計算資源整合成單一資源來使用。當需要大量計算時,它便利用分配器(Dispatcher)將這些大量的計算分散到不同的電腦中去執行,並加以整合。當資料快速成長而查詢效能大大降低時,網格運算便可利用增加電腦(計算資源),無限擴充其計算能力的方式來加以解決。 我們學校的Moodle系統,在推行之初也遇到多人同時連線到Moodle,使得Moodle無法處理多人同時使用的情形,進而造成當機。然而,當在許多學院同時架構Moodle主機分散計算後,當機的情形就很少發生了。這也是分散式計算的另一成功案例。圖1是利用網格運算去處理大量查詢的示意圖。在圖1中,當使用者提出一個查詢時,分配器便會將此工作指派給工作較不繁忙的電腦去執行資料檢索的工作。 在上圖1中,電腦都是兩兩配對,一個是工作中的電腦,一個則是備用電腦。當工作中的電腦發生問題時,備用電腦會立即接替它而成為工作中的電腦,使查詢的工作不會因電腦發生問題而降低其查詢效能。此時,就可開始維修發生問題的電腦。當維修完成後,此電腦的角色就變成是備用電腦,隨時準備接替發生問題的電腦。

發佈留言