Mellékleteink: HUP | Gamekapocs
Keres
Nyaralás után, augusztus 28-án és 29-én Scrum és Java fejlesztői meetupokkal jövünk.

Milyen architektúra szolgálja ki a Google-t?

Bizó Dániel, 2008. január 02. 17:13
Ez a cikk több évvel ezelőtt születetett, ezért előfordulhat, hogy a tartalma már elavult.
Frissebb anyagokat találhatsz a keresőnk segítségével:

A Google működésével kapcsolatos fejtegetések egyik legtöbb érdeklődésre számot tartó területe a keresőmotort kiszolgáló nyilvánvalóan gigantikus géppark. Az alkalmazott szerverek száma továbbra is vad találgatások területe, ugyanakkor a cég egyik mérnökének előadása a szokásosnál részletesebben taglalja a hardver és szoftverarchitektúra koncepcióit.

[HWSW] A Google működésével kapcsolatos fejtegetések egyik legtöbb érdeklődésre számot tartó területe a keresőmotort kiszolgáló nyilvánvalóan gigantikus géppark. Az alkalmazott szerverek száma továbbra is vad találgatások területe, ugyanakkor a cég egyik mérnökének előadása a szokásosnál részletesebben taglalja a hardver és szoftverarchitektúra koncepcióit.

Nagyon nagy problémák

A Google a világ vezető keresőjeként nemcsak nagy mennyiségű adatot dolgoz fel, de hatalmas forgalmat kell lekezelnie megfelelően gyorsan ahhoz, hogy színvonalas szolgáltatást nyújtson. A vállalat keresőmotorja több milliárd weblapot és képet feltérképező indexe alapján másodpercenként átlagosan több mint tízezer keresést kell kiszolgálnia világszerte, egyenként néhány tizedmásodperc alatt. A Google gépparkjáról régóta legendák keringenek, egyes becslések százezres nagyságrendű, világszerte elosztott parkról beszélnek.

Jeffrey Dean, a Google kutatómérnöke a Washingtoni Egyetemen tartott hosszas előadásában ecsetelte a Google előtt álló kihívásokat, és az azok megoldására kidolgozott módszereket. A problémák forrása kézenfekvő módon az adattömeg és terhelés nagysága, melyekhez gyakorlatilag teljes rendelkezésre állás társul. A Google hivatalosan több mint 4 milliárd leindexelt weblapról beszél, melyek átlagosan 10 kilobájt tárterületet igényelnek, így közel 40 terabájt adat elérhetőségét kell biztosítani.

Sok kicsi

A hatalmas méretek egyik következményeként a Google nagy és erőteljes, "márkás" szerverek helyett teljesen közönséges kétutas, belépőkategóriás gépek mellett döntött, melyek sokkal költséghatékonyabbnak bizonyulnak, főként ami a számítási kapacitást illeti. Pénzszűkében a Google saját maga építette gépeit működésének elején, így az alsókategóriás rendszerek alkalmazása hagyományos gyakorlat a cégnél. Dean elmondta, hogy az adatközpontokba költözéssel, mivel azok terület alapon számláznak, az volt a cél, hogy minél nagyobb sűrűséget érjenek el.

A gyorsan duzzadó géppark egyik következménye, hogy a nagy számok törvénye miatt ma már naponta több szerver hibásodik meg a Google gépparkjában világszerte, amit a kereső szoftveresen biztosított redundanciával old meg, vagyis a hibatűrés szoftveresen, rendszerszinten került megoldásra. Ez azért is praktikus, mert a szükséges teljesítmény érdekében párhuzamosságot biztosítva egyébként is többszörös adatredundancia található a rendszerben, így gyakorlatilag az éles gépek egymás replikái is egyben.

Szilánkok

Az elosztott rendszer egyetlen hatalmas, kezelhetetlen indextábla helyett rengeteg úgynevezett szilánkra darabol szét, mondta el a mérnök. A szilánkok legfőbb jellemzője és rendezőelve a weblaptulajdonosok és keresőoptimalizációból élők számára jól ismert PageRank, mely igyekszik adott oldal relevanciáját, máshogyan fogalmazva népszerűségét, fontosságát jellemezni egy 0-tól 10-ig terjedő skálán. A magasabb szinten lévő oldalakat indexelő szilánkokból több másolat készül, szintén kapacitásbeli megfontolások miatt, hiszen valószínűleg több keresés érinti majd. Ugyanez a metodika érvényes magukra a weblapokra és más dokumentumokra is.

Dean beszélt arról is, hogy a Google igyekszik felhasználói közelébe telepítenie adatközpontjait, hogy minél rövidebb idő alatt ki tudja szolgálni a lekéréseket, így világszerte találhatóak farmjai. Ennek egyszerű magyarázata, hogy a gyorsabb szolgáltatást többet veszik igénybe a felhasználók, sokkal interaktívabbnak érezni azt. Egy-egy keresés találatait akár több mint ezer gép igénybevételével rak össze a vállalat. Nem hivatalos információk szerint Magyarországon is található egy ilyen farm, több ezer géppel.

A Dean közel egyórás előadásáról készült videót letöltheti a HWSW szerveréről innen (~120 MB, Windows Media Video).

Augusztus 28-án és 29-én Scrum és Java fejlesztői meetupokkal jövünk. A program éles, lehet regisztrálni.