Současný Google

O technologiích, které používá současný vyhledávač Google, není známo mnoho: Google jako komerční firma uvolňuje méně informací, než v době, kdy šlo o akademický projekt. Jisté je, že celý vyhledávač je rozdělen do několika tzv. datacenter, rozmístěných po celém světě. Datacentra zodpovídají dotazy nezávisle, dotazy se mezi ně rozdělují pomocí rotace DNS záznamů (jmenné servery Google na každý dotaz vrací vstupní IP adresu jiného datacentra, vybírá je na základě geografické polohy uživatele a vytížení jednotlivých center). Datacentrum se skládá z velkého počtu “běžných” PC, používajících upravenou verzi operačního systému Linux. Takové počítače které mají lepší poměr cena/výkon než vysoce výkonné (ale současně velmi drahé) servery. V prvním čtvrtletí 2003 sahala paleta konfigurací od jednoprocesorových Intel Celeron 533 MHz po dvouprocesorové Intel Pentium III 1,4 GHz, s jedním nebo více 80 GB IDE disky. Podle odhadů z dubna 2004 se v datacentrech nachází přibližně 63 tisíc počítačů, což činí cluster Googlu nejvýkonnější na světě. Spolehlivost je zajištěna na softwarové úrovni – při výpadku je počítač vyřazen z clusteru a jeho úlohy převezme jiný.

Vyhledávání

Je-li vyhodnocován jednoslovný dotaz, zkoumá se seznam hitů pro dané slovo. Google má u každého hitu uložen i jeho druh (titulek, text odkazu, URL, obyčejný text velkým písmem, obyčejný text malým písmem, …); každému druhu je pak přiřazena určitá váha. Na tyto váhy lze nahlížet jako na vektor. Stejně tak je ohodnocen počet hitů pro každý druh – ohodnocení na začátku roste lineárně s počtem, ale pak se závislost “narovnává”, takže pokud počet výskytů překročí určitou mez, ohodnocení dále neroste. Skalární součin vektoru vah a vektoru ohodnocení počtu výskytů tvoří ohodnocení relevance dokumentu, jehož kombinace s PageRankem určí konečné pořadí dokumentu ve výsledku. Pro víceslovné dotazy je situace komplikovanější – musí se procházet několik seznamů hitů najednou, aby bylo možné ohodnocovat výsledky na základě vzdálenosti jednotlivých výskytů. Pro každou nalezenou skupinu hitů je spočítána vzdálenost výskytu všech nalezených slov v textu dokumentu (nebo odkazu), které je přiřazeno jedno z deseti ohodnocení. Počty výskytů se potom nepočítají jen pro různé druhy hitů, ale i pro každou dvojici druh-vzdálenost. Oba tyto údaje jsou převedeny na příslušná ohodnocení, a jejich skalární součin tvoří ohodnocení relevance dokumentu.

„Vždy odpouštějme svým nepřátelům, nic je nedokáže víc rozzuřit.“ Oscar Wilde