Szerző: Dojcsák Dániel

2012. január 18. 12:01

Hogyan működik a Google kereső?

A Google leginkább egy misztikus fekete dobozra hasonlít. Egészen sok mindent lehet tudni a működés fő elemeiről, de a külső szemlélő számára átláthatatlan a folyamat, ahogy a milliárdnyi webes dokumentum univerzumaiból azonnal elérhető találatokat kapunk.

A 2012-es Superweek konferencián Gary Illyés, a Google zürichi irodájában webmester trendek elemzője nyitotta fel egy néhány percre a Google kereső motorháztetőjét. Gary elmondása szerint a kereső működésének alapjait az új Google-alkalmazottaknak egy 6 órás prezentációban szokták elmagyarázni, ezúttal azonban mindössze röpke 25 perc állt rendelkezésre.

A Google és minden más modern kereső tevékenységének alapja, hogy az általa felfedezett webhelyeket letölti, kereshető rendszerbe rakja és az oldalakat, dokumentumokat értékeli. A Google alapja és sikerének kulcsa mind a mai napig a rangsorolás algoritmusán nyugszik. Sergei Brin és Larry Page, a cég alapítói 1998-ban írták meg a Stanford Egyetemen "The anatomy of a larga-scale hypertextual Web search engine" című tanulmányukat, amiben lefektették elméleteik alapját. Az elv lényege, hogy a weboldalak fontosságát a rájuk mutató linek száma, minősége alapján határozza meg. Ezt megelőzően minden kereső kulcsszó alapon, a keresések gyakorisága szerint határozta meg a fontosságot.

A szabadalmaztatott PageRank algoritmus felforgatta a keresőpiacot, sokáig szinte kizárólag ez alapján rangsorolt a nyugati világ legnépszerűbb keresője. Az évek során a Google sok titkos adalékot adott a PageRankhez, sőt, mostanra már maga a mérőszám nem is számít túl sokat a több tucat egyéb kritikus szempont és a körülbelül 400 féle szignál mellett, ami meghatározza a dokumentumok relevanciáját egy adott keresésre. A recept a Coca-Cola esetéhez hasonlóan titkos, pontosan senki nem tudja, hogyan zajlik a teljes indexelési értékelési folyamat, a folyamatoknak mindössze a logikai felépítését ismerheti meg a nép.

Nem mehet teljes gázzal

Gary Illyés előadásában hangsúlyozta, hogy a kereső működése egy átláthatatlanul bonyolult folyamat, a működtetése pedig már az elején komoly problémákba ütközik. A Google a rendelkezésére álló erőforrásaival megtehetné, hogy a világ összes weboldalát és weben fellelhető dokumentumát állandóan ismétlődve térképezné fel, de ennek nagyon gyorsan az lenne az eredménye, hogy összeomlana az internet. Fura elképzelni, de ha a keresőrobotok teljes gázzal nekiesnének a webnek, akkor a hálózat bizonyos pontjai nagyon gyorsan túlterhelődnének.

Az elemző szerint a webmesterek a jelenlegi állással ellentétben nagyon nem szeretnék a keresőket, ha "brute force" megoldásokat használnának. Erre szerencsére nincs is szükség, egyrészt azért, mert mára az algoritmusok pontosan képesek megállapítani, hogy a webes tartalomnak mely része változik nagyon ritkán és mik az online világ ütőerei. Továbbá a webnek van egy jelentős része, amit szükségtelen alaposan vizsgálni, ilyen például minden, amit a Google spamnek gondol vagy gyenge és jelentéktelen tartalomnak.

A feladat évekkel ezelőtt az volt, hogy egy olyan rendszer jöjjön létre, ami képes felismerni a hasznos és haszontalan, a pörgős és statikus, az egyedi és ismétlődő tartalmak közti különbségeket és ennek megfelelően időzíteni a crawlerek, azaz a keresőrobotok látogatásait. A mai Google már pontosan felismeri egy híroldalon az adatvédelmi szabályzatot és az impresszumot, tudja, hogy a láblécben talált információk minden oldalon ott vannak és többnyire a tartalom szempontjából lényegtelen kiegészítéseket tartalmaznak. Jó eredménnyel méri fel a gépezet azt is, hogy mi a spam tartalom és minőségi értékeléseket képes hozzáadni minden egyes URL-hez.

Ha egy tartalom csak súrolja a webes hulladék kategória határát és még Matt Cutts se mondaná rá, hogy spam, de az algoritmus úgy ítéli meg, hogy mégis az, akkor a robotok egyszer átnézik a tartalmat, majd hosszú időre magára hagyják és nyilván az indexekben is nehezen bukkanhat fel.

A Googlebot értelmes?!

A Googlebot mondhatni egy értelmes “lény”, valójában egy egyszerű webes kliens. Körülbelül úgy kell elképzelni mint a cUrl vagy a Lynx parancssoros böngészőket, amik képesek olvasni a HTML kódokat, renderelő motor viszont nincs mögöttük. A Googlebot a tartalmat csupán letölti, de nem értelmezi, nem minősíti, a benne lévő JavaScripteket nem futtatja le, az oldalakat nem rendereli. Természetesen a webhelyekre vonatkozó előírásokat betartja, a robots.txt állományt minden esetben ellenőrzi és ahol nem szívesen látott vendég, oda nem is megy be. Ellenben követi a HTML átirányításokat és vizsgálja az URL-t, értelmezi azt és kitalálja, hogy a benne található paraméterekből mit hagyhat figyelmen kívül.

Egy adott tartalmi oldal vagy dokumentum felett végtelen számú URL állítható elő a paraméterek miatt, a Googlebot egyik alapvető feladata az, hogy kibogozza ezeket és megállapítsa, hogy melyik az elsődleges és alapvető URL, amit általánosan lehet használni. A többi URL sem megy a kukába, bekerülnek egy közös adatbázisba, de a feldolgozás során mindig az elsődleges cím kerül használatba.

Egy algoritmus mindenek felett

A használat alatt nem csak azt értjük, hogy a keresőoldalon megjelenő találatok alapanyagaként szerepel, ugyanis a Google-nél szabály az, hogy egyik belső fejlesztő csapat sem ír saját letöltőket, klienseket, hanem szigorúan mindenki a sztenderd rendszert használja. Egyrészt felesleges erőforrás-pazarlás lenne, ha a csapatok párhuzamosan elkezdenének azonos megoldásokat kódolni, másrészt minőségbiztosítási okokból sem lenne szerencsés hagyni ezt. A rendelkezésre álló erőforrások és lehetőségek birtokában egy hibás döntés is elég lenne ahhoz, hogy illetéktelen, törvényeket megszegő robotok fussanak végig akár véletlenül a weben. A hivatalos Googlebot jólnevelt, a szabályok betartását a cég ellenőrzi.

A Googlebot munkája a kutatásban és a letöltésben gyakorlatilag ki is merül. Itt kapcsolódik be a második fokozat, az elemző szoftver, a Parser. Ennek elsődleges feladata, hogy minden szöveges tartalmat HTML-be konvertáljon, kereshetővé, értelmezhetővé tegyen. A web tele van például PDF állományokkal, amik alapból nem használhatóak, de miután a Parser átmegy rajtuk, máris a rendszer hasznos tagjaivá válnak. A Parser szintén egy univerzális eszköz a Google berkein belül, a botokhoz hasonlóan szintén mindenki ezt használja, hasonló okokból.

Parser: JavaScriptet is futtat

A konvertálás mellett a Parser fontos feladata, hogy kivonja a komplex URL-eket a dokumentumokból és az eredményeket a közös URL-adatbázisba öntse be. Továbbá felismeri a Googlebottal ellentétben a nem-HTML átirányításokat is, mint például a metatageket vagy a JavaScript megoldásokat is. 2010 óta publikus, hogy a Parser adott esetben végrehajtja, lefuttatja a scripteket, ha átirányításról van szó, akkor az a link is bekerül az indexelésbe, keresésbe és rangsorolásba.

A Parser felismeri az oldalon szereplő korlátozásokat, például a noindex vagy a nosnippet címkéket és ezt eltárolja az adatbázisban, az oldal a webmester akaratának megfelelően kerül be vagy marad ki bizonyos találatokból. Ha a webmester nem engedi rá a tartalomra a keresőt, az akkor is képes megállapítani, hogy mi van benne - ha elegendő számú és minőségű link mutat egy nem követhető oldalra, akkor a Google a ráutaló jeleket értelmezve felvázolja, hogy az adott dokumentum miről szól, anélkül, hogy konkrétan feltérképezné. Persze, ha a robot teljesen ki van tiltva, akkor ez nem történik meg.

Caffeine: osztályozó részleg

Amennyiben ez a fázis is készen van, akkor lép akcióba az indexelést végző program, a Caffeine. Ahogy a neve is sejteti, ennek a szoftvernek az erőssége, hogy rendkívül gyorsan képes értelmezni a rendelkezésére bocsátott információkat és azokat újrarendezni és a felhasználók elé tálalni. A Caffeine a feltérképezett dokumentumokat percek alatt képes feldolgozni és továbbadni a kiszolgáló felületnek, ennek köszönhető, hogy az elmúlt években a gyakran frissített oldalak tartalmai szinte azonnal megjelennek a keresési találatok közt. Teljesen természetes, hogy egy híroldal megjelent anyaga a publikálás után 1-2-3 percen belül már a találatok közt szerepel.

Pedig minden egyes feltérképezett dokumentum átfut a Caffeine rendszeren. A program több száz műveletet végez el azonnal, például kiszámolja a PageRanket, felismeri a spam formákat, megkeresi az URL kanonikus verzióját, felismeri a kulcsszóhalmozást, a duplikált és rejtett tartalmakat. Ha a szöveg ugyanolyan színű mint a háttér, azt instant büntetéssel jutalmazza a Google Caffeine.

400 szempont ír le egy webes dokumentumot

A Caffeine kezdetben 200, mára már körülbelül 400 különböző jelet használ minden egyes dokumentum minősítésére. Ezek listája természetesen féltve őrzött titok, a fenti példák triviálisak és néhány egyéb is könnyen kikombinálható józan paraszti ésszel is akár. Miután mind a 400 jelet elemzett, a Caffeine létrehoz egy belső használatra szánt egyedi dokumentumot az eredetiből, amibe bekerül minden kinyert és képzett információ is. Ez azonnal bekerül az indexbe, majd körülbelül fél perccel később már a megfelelő keresésre a a találati listában is feltűnik a link és minden kiegészítő információ.

Toxikus vezetők szivárványa

Az IT munkakörülményeket, a munkahelyi kultúrát alapjaiban határozzák meg a vezetők, főleg ha még toxikusak is.

Toxikus vezetők szivárványa Az IT munkakörülményeket, a munkahelyi kultúrát alapjaiban határozzák meg a vezetők, főleg ha még toxikusak is.

A Caffeine alapos, az általa elemzett 400 szempont közt olyanok is feltűnnek, amik az adatok vizuális helyét is figyelembe veszik a weboldalon. A korábbi keresőkben teljesen lényegtelen volt, hogy az oldalon belül hol jelent meg egy szöveg, a Caffeine esetében viszont már-már emberi kényesség képzelhető el. Kitalálja, hogy mi az igazi tartalom, mi lehet fontos, mi lehet releváns.

Csak működik

Az eredmény pedig egy olyan webkereső, amibe ha címet írunk térképet mutat, ha paraméterekkel szűkítünk, akkor a megfelelő dokumentumokat tálalja elénk, megmutatja az oldal előnézetét és valóban percek alatt visszaadja az új és fontos tartalmakat. Persze furcsa dolgok mindig történhetnek, a listákba bekerülhetnek érdekes, emberi ésszel átgondolva nem odaillő dolgok, de a webmesterek is meglepődnek néha, hogy milyen kulcsszavakra keresve jutottak el látogatók az oldalukra. A kereső működése így leírva egyértelmű és tiszta, de akit komolyabban érdekel az találhat a webmester fórumokban, szakblogokban vagy a szakértők környezetében igazi ínyencségeket.

Nagyon széles az a skála, amin az állásinterjú visszajelzések tartalmi minősége mozog: túl rövid, túl hosszú, semmitmondó, értelmetlen vagy semmi. A friss heti kraftie hírlevélben ezt jártuk körül. Ha tetszett a cikk, iratkozz fel, és minden héten elküldjük emailben a legfrissebbet!

a címlapról