Technológia

Huszonnégy öszvér

A tudományos világból már számos informatikai fejlesztés találta meg útját az üzleti életbe – két évtizeddel ezelõtt még maga az internet is csak pár amerikai egyetemet kötött össze. Újabban hasonló jelenségnek lehetünk tanúi egy másik fejleménnyel, a gridekkel kapcsolatban is.

A gridek (magyar megfelelõjük talán a számítóhálózat lehetne) alapkoncepciója meglehetõsen egyszerûen megfogalmazható. Minek állítsunk üzembe és mûködtessünk méregdrága szuperszámítógépet, ha ugyanazt a teljesítményt és kapacitást elõ lehet teremteni számos, egyenként viszonylag kis teljesítményû, de együttesen nagy erõt képviselõ számítógép összekapcsolásával is? Hogy egy (talán nem tökéletes) példával éljünk: ugyanazt a terhet elviheti egy elefánt vagy kéttucatnyi öszvér is.

Az egyszerû alapkoncepció mögött azonban számtalan ördög rejlett, és részben rejtezik ma is – a részletekben. Elõször is, nem könnyû a különféle proceszszorarchitektúrákat, operációs rendszereket, programozási nyelveket és hálózati protokollokat beszélõ rendszereket rábírni az együttmûködésre. Másodszor, az egyes számítógépeket összekapcsoló hálózatnak elég nagy kapacitással, sávszélességgel kell rendelkeznie ahhoz, hogy a gépek közötti együttmûködés megvalósítható legyen. Ezek az akadályok az utóbbi években kezdenek elhárulni. A fejlett gazdaságú országokban gyakorlatilag korlátlanul – és viszonylag olcsón – áll rendelkezésre a hálózati sávszélesség, másrészt az internetre kötött számítógépek teljesítménye is nagyot fejlõdött. Különösen a hálózatok fejlõdése látványos: míg a processzorok (és így a számítógépek) sebessége Moore törvényének értelmében 18 hónaponként megduplázódik, addig a hálózat sebessége 9 havonta növekszik a kétszeresére. Egyes elõrejelzések szerint 2001 és 2010 között a számítógépek teljesítménye a 60-szorosára, míg a hálózatok sebessége közel a 4000-szeresére nõ.

Problémák és megoldások
Mi is hát a grid? Ahány kutató, szervezet vagy cég, annyiféle definícióval lehet találkozni. Ami közös bennük, azt talán a következõképpen lehetne összefogni: olyan földrajzilag elosztott, dinamikusan módosítható hardver- és szoftver-infrastruktúra, amely az erõforrások megosztásával teszi lehetõvé a nagy számítási teljesítményt megkövetelõ feladatok végrehajtását. Egyszerûbben fogalmazva: kisebb vagy nagyobb teljesítményû számítógépek összekapcsolása egyetlen nagyobb teljesítményû egésszé.

A grid egész koncepciója különbözik a hagyományos elosztott rendszerekétõl, ezért szinte minden területen új megoldások kifejlesztését igényli. Mutatóba néhány a problémák közül: az erõforrások megosztásához – beleértve a számítógépeket, a háttértárakat, az adatbázisokat, a rendszerbe bekapcsolt érzékelõket – megoldást kell találni azok felkutatására, igénylésére, foglalására, ütemezésére; a rendszerek összekapcsolása felvet biztonsági kérdéseket (hitelesítés, jogosultságok ellenõrzése, azonosítás); a számítási feladatok elosztása és koordinált végrehajtása esetleg több ezer számítógép között újfajta programozási megközelítést igényel; és végül, de nem utolsósorban az ideiglenes vagy állandó virtuális közösségek létrejötte feszegeti a hagyományos szervezeti kereteket.

A gridkutatások célja éppen ezért az, hogy a különféle számítógéprendszerek heterogenitását eltakarva, azokból egységes, közösen kezelhetõ és felhasználható egészet hozzon létre. A talán legelterjedtebb és legismertebb kezdeményezés a Globus Project, amely különféle szolgáltatásokat és eszközkészleteket javasol számítóhálózatok létrehozására. A Globus megoldásokat kínál az erõforrás-kezelésre, a távoli állománykezelésre, az információs szolgáltatásokra és a biztonságra is. Ez persze korántsem jelenti azt, hogy kész vagy tökéletes lenne. Számos, fontosnak mondható funkció hiányzik még belõle, többek között az adatbázisok elérése és megosztása vagy a végponttól végpontig terjedõ szolgáltatás- minõségbiztosítás.

Házasság a webszolgáltatásokkal
Ezeken a hiányosságokon (is) igyekszik segíteni a Globus eszközkészlet legújabb változata, az Open Grid Services Architecture (OGSA); végleges változata várhatóan az idén megjelenik. Ez már összekapcsolja a tudományos világban született grideket az üzleti életben megfogant webszolgáltatásokkal. Utóbbiak szintén a számítógépek interneten keresztüli együttmûködését célozzák, de inkább állandó szolgáltatásokat tesznek elérhetõvé külsõ felek számára.

A gridek célja ugyanakkor, hogy a távoli számítógépeket és más erõforrásokat idõlegesen, egy adott cél érdekében is ki lehessen használni. Ettõl függetlenül a gridtechnológia sokat vehet át a webszolgáltatásokból, különösen ami a szolgáltatások leírásának szabványát illeti. Nem véletlen tehát, hogy a nagy informatikai cégek is látnak fantáziát a gridekben, és megkezdték a technológia felkarolását. A Globus Project támogatóinak sorában olyan informatikai cégek találhatók, mint az IBM, a Sun Microsystems, a HP, a Microsoft vagy a Fujitsu. A Gartner egy elemzõje szerint nem véletlen ez az élénk érdeklõdés. Bár a vállalatok manapság még azzal vannak elfoglalva, hogy vertikálisan integrálják alkalmazásaikat az internettel és az olyan eszközökkel, mint például a portálok; ám ha ezt sikeresen befejezték, akkor horizontálisan is ki akarják terjeszteni informatikai környezetüket partnereik, beszállítóik és vevõik felé. Erre szolgálnak a webszolgáltatások, és azokon túlmutatva a gridek is.

A gyakorlat
Grideket megvalósíthatnak egyes cégek is, hogy olyan számítási teljesítmény birtokába jussanak, amelyhez egyébként különleges szuperszámítógép kellene. A Shell például Intel processzoros kiszolgálókkal és a Globus eszközkészletével hoz létre olyan rendszert, amellyel az olaj- és gázkutatás céljaira dolgoz fel szeizmikus adatokat. Ha cégek vagy szervezetek között mûködik egy grid, akkor sem kell attól félni, hogy a „közösbe” beadott számítógépek állandóan leterheltek lesznek, és semmi más munkára nem marad szabad kapacitásuk. A grid nem egyenlõ az erõforrásokhoz való korlátlan hozzáféréssel, hanem sokkal inkább ellenõrzött megosztás.

Az erõforrás tulajdonosa megszabhat szabályokat arra vonatkozóan, hogy mely erõforrások, mikor és milyen mértékben vehetõk igénybe a grid céljaira, és ezért pénzt is kérhet (illetve fizet, amikor neki van szüksége a kapacitásra). Éppen ezért a gridarchitektúrának fontos eleme az elszámolás is. Az elszámolás képessége teszi lehetõvé azt is, hogy a grideket, illetve azok kapacitását egyfajta szolgáltatásként tegyék elérhetõvé mások számára. Már vannak példák arra, hogy a meglévõ számítási és tárolókapacitást (vagyis annak egy meghatározott részét) mintegy bérbe adják annak, akinek idõlegesen nagyobb teljesítményre van szüksége, ami nagy lépést jelent az „on-demand computing”, azaz az igény szerinti számítástechnika világa felé.