Grid computing: V roli virtuálního superpočítače

DEFINICE Jako grid computing se označuje postup, při kterém se využívá hardwarové a softwarové infrastruktury integru...


DEFINICE
Jako grid computing se označuje postup, při kterém se využívá hardwarové a
softwarové infrastruktury integrující high-endové i osobní počítače, sítě,
databáze a vědecké nástroje z více zdrojů tak, že vznikne virtuální
superpočítač. Na něm může jeden nebo více uživatelů řešit výpočetně náročné
úkoly.
Pojem "grid computing" (volně lze přeložit jako síťové provádění výpočtů,
přičemž síť zde vystupuje v posunutém významu oproti klasické počítačové síti
anglicky "network") si v poslední době získal velkou popularitu. A to i přesto
anebo možná právě proto že bývá používán pro označení do jisté míry odlišných
výpočetních modelů.
Za základní ideu grid computingu v té formě, která mu zřejmě přinesla u
veřejnosti největší popularitu, bývá označována myšlenka využití momentálně
nepotřebného výpočetního výkonu bežných osobních počítačů. Většina z nás má
totiž na stole PC, které po delší či kratší úseky času jen nečinně vyčkává na
další úkoly. Může se to dít v okamžiku, kdy od něj odejdeme, ale i při
provádění výpočetně nenáročných operací (např. jednoduchá práce s textovým
editorem). Pokud využijeme volnou kapacitu tisíců takových strojů, získáme
virtuální superpočítač.

Nejen sci-fi
Nejznámější implementací grid computingu a zřejmě také největším distribuovaným
počítačem světa je projekt SETI@home (Search for ExtraTerrestrial Intelligence
project), zabývající se hledáním mimozemských inteligentních civilizací. Světlo
světa spatřil na Kalifornské univerzitě v Berkeley.
SETI@home používá nevytíženou kapacitu počítačů připojených kdekoli na světě k
internetu k tomu, aby její spojený výkon pomohl se zpracováním dat, na němž
standardně pracuje jeden superpočítač přímo v kampusu v Berkeley. Projekt
SETI@home zvýšil povědomí o technice grid computingu, ale současně ji v myslích
mnoha lidí tak trochu degradoval odeslal ji totiž mezi další technologie, které
nacházejí uplatnění snad jen v říši science fiction.

V byznysu
Díky pokroku v technologii, která stojí v pozadí grid computingu, může již dnes
řada firem využívat jeho principů k realizaci komplexních výpočetních úloh.
Počítače ve firemní síti, které za běžných okolností slouží ke zcela jiným
účelům, se tak mohou podílet např. na detailním návrhu součástí mechanických
strojů nebo na výpočetní realizaci ekonomických scénářů typu "co když", jež
využívají obrovských databází finančních dat.
Předpokládá se, že jednoho dne budou moci poskytovatelé služeb využít grid
computing k vytvoření virtuálního superpočítače, jehož procesorový čas bude
možno pronajímat firmám kdekoli na celém světě.

Jak to funguje
Grid computing sice pracuje na principu využití distribuovaných výpočetních
zdrojů, ale je pochopitelně třeba si při něm uchovávat centrální dohled nad
celým procesem. Jako vedoucí týmu a kontrolor provozu tu funguje jeden nebo
více centrálních serverů. V praxi je možno vytvořit celou hierarchickou
strukturu řídících serverů, které se vzájemně řídí, a koordinují tak výpočetní
výkon, který dodávají počítače umístěné na samém konci celého řetězce.
Server, který má řízení všech počítačů na starosti, rozděluje celou úlohu na
podúlohy a pak je přiřazuje ke zpracování jednotlivým připojeným počítačům, jež
mají právě k dispozici nějaký nevyužitý procesorový výkon. Následně provádí
monitorování průběhu zpracování a v případě, že zpracování podúlohy z nějakého
důvodu selže, restartuje ji anebo ji předá jinému počítači v síti. Když je
dokončeno zpracování všech podúloh, server složí výsledky dohromady a pokračuje
další úlohou tak dlouho, dokud není vyřešen celý zadaný úkol.

Lokálně i globálně
Zatímco v síti umístěné v jedné lokalitě (ve vysokoškolském areálu, ve firmě
apod.) se všechny výpočty provádějí na počítačích propojených jednou
geograficky omezenou sítí, v globální síti mohou být počítače, které se výpočtu
účastní, umístěny v jakékoli síti, která jim umožňuje připojení na internet.
Zde však může být za určitých okolností problémem rychlost odezvy sítě, resp.
přenosové zpoždění. Různé počítače tu zpracovávají jednotlivé podúkoly za velmi
odlišných podmínek.
Ještě předtím, než může dojít k realizaci jakéhokoli zpracování, jsou
identifikovány a lokalizovány veškeré dostupné zdroje. Musí být vyjednán
přístup k nim a hardware a software musejí být nakonfigurovány tak, aby byly
dostupné zdroje efektivně využity. V projektech, kde je účast dobrovolná (např.
již zmíněný SETI@home), leží zpravidla problémy konfigurace do značné míry na
uživateli, u komerčních systémů je obstarává příslušný správce.

Práce na vývoji
Protože hlad po větší kapacitě pro uchování dat a po rychlejším zpracování
informací neklesá, vědci plánují v několika příštích letech experimenty s
petabajtovými datovými archivy a průmysloví giganti, jako např. IBM, Microsoft,
Oracle nebo Sun Microsystems, závodí ve vývoji strategií pro grid computing.
"Je tu velký zájem o grid computing ze strany komerčních subjektů," říká Ian
Foster, šéf projektu Globus ANL (Argonne National Laboratory) a profesor
počítačových věd na Chicagské univerzitě. "Původně šlo především o využití této
technologie jako způsobu efektivnějšího využití výpočetních zdrojů, dnes jsme
se však již posunuli dále."
Foster tvrdí, že grid computing přitáhl v posledních letech velkou pozornost
především díky významnému pokroku ve třech klíčových oblastech: ve všeobecné
konektivitě prostřednictvím internetu, v dramatickém vzrůstu kapacity sítě a ve
vývoji nástrojů pro spolupráci. Nemalou roli podle něj hraje i přijetí
technologie grid computingu jako vhodného modelu pro realizaci komerčních
výpočtů.

Co je, co není
Přesné stanovení, co vlastně je a co není grid computing, může být záludnou
otázkou. Jedním z argumentů v této diskusi může být tvrzení, že vlastně
jakékoli výpočty prováděné v síti jsou formou grid computingu. Má být definice
odvozena z velikosti použité sítě, z účelu nasazení celého systému, z jeho
architektury nebo z nějakého jiného kritéria?
Foster propaguje seznam bodů, které určují, co je grid computing. Aby bylo
možno považovat spojené počítače za grid, musejí podle něj dělat následující
činnosti:
koordinovat zdroje, které nejsou objektem centralizovaného řízení
používat standardní, otevřené a obecně použitelné protokoly a rozhraní
poskytovat službu s definovanou kvalitou
"Vytvoření infrastruktury velkého rozsahu vyžaduje definici a přijetí
standardních protokolů a služeb. Dobrým příkladem může být skupina protokolů
TCP/IP, jež je srdcem internetu," vysvětluje Foster.

Do budoucnosti
Projekt Globus a GGF (Global Grid Forum) pracují na definování takových
standardů a protokolů. Pracuje se rovněž na řešení problémů, které souvisejí s
postupy, jejichž prostřednictvím lze aplikovat koncepty grid computingu na
zpracování vědeckých a inženýrských úloh.
Již nyní je jako open source k dispozici Globus Toolkit, který byl vyvinut v
ANL (Argonne National Laboratory) a na Univerzitě Jižní Karoliny. Ten zahrnuje
bezpečnostní protokoly a další služby nezbytné pro praktické využití grid
computingu. Jde např. o služby pro zjišťování dostupných zdrojů, o správu
těchto zdrojů a o přístup k datům. K dispozici jsou softwarové knihovny, které
po-dporují tvorbu gridů i aplikací, které je mohou využít.
Podle Fostera pracuje v současnosti na standardech v této oblasti několik
skupin z oblasti vědy i průmyslu. Mají přitom množství stejných zájmů. "Každého
zajímá otázka bezpečnosti, ochrana jeho dat. A každého přirozeně zajímá rovněž
cena za správu takové sítě a možnosti její interoperability," říká Foster.









Komentáře
K tomuto článku není připojena žádná diskuze, nebo byla zakázána.