Ušetřete

Hlavní navigace

Webfast - jak funguje a co je pod pokličkou

Pravděpodobně jste již zaznamenali nový fulltextový vyhledávač, který spustilo Centrum.cz. O tom, co umí, jak funguje a jaké má cíle, jsem si povídal s Ingrid Fikr (ze společnosti NetCentrum, provozovatele portálu Centrum.cz), kterou doplňoval Martin Mareš (známý vývojář kernelu a jeden z autorů Webfastu).

ROOT.cz: Asi bych začal otázkou, co nového a převratného přináší www.webfast.cz? V čem je jiný než známé české vyhledávače nebo Google, který je nekorunovaným králem vyhledávačů a funguje i v ČR (RedBox)?

Webfast používá fulltextovou technologii Centrum.cz a navíc má uživatelský interface prostý všech grafických reklam. Je zaměřený pouze na rychlé a účinné vyhledávání. To je v .cz zatím výjimkou oproti ostatním českým vyhledávačům. Google samotný je takový už od začátku, ale např. redboxovský interface k němu nikoliv.

Za další velkou výhodu považuji jeho schopnost vyrovnat se daleko lépe než Google se záludnostmi českého kódování znaků a s existencí akcentů nad písmenky. Díky tomu má Webfast výborné pokrytí domény .cz.

Dalšími výhodami jsou: Nastavování vah u vyhledávaných slov, podrobný výběr kategorií slov, která mají být hledána, možnost explicitně nastavovat, zda a jak se mají ve vyhledávání rozlišovat akcenty, poradí si i s různými způsoby kódování češtiny.

ROOT.cz: Nastavování vah u vyhledávaných slov je ten faktor Q?

Jen zčásti…

ROOT.cz: Můžete tuto technologii podrobněji popsat? Předpokládám, že je to obdoba Googlovského ratingu stránky, který se počítá podle odkazování na ni. Myslíte si, že je váš princip lepší, horší, srovnatelný, nebo prostě jiný?

Srovnávat se dá velice těžko. Je prostě jiný. Hlavně proto, že na rozdíl od Google je hodnotící systém stavěný na obecně booleovské dotazy.

Q je funkce přiřazující dvojici (stránka, dotaz) jakousi míru „kvality“ stránky vzhledem k počtu dotazů, což je pokus o aproximaci subjektivní míry relevance odpovědět čímsi objektivním.

Zahrnuje:

  • bonus za výskyty slov (za každé vyhledané slovo, které se v dotazu vyskytuje pozitivně [tj. bez NOT], 10000 bodů; v dotazu je ale možno nastavit i jinou hodnotu [to je právě to zmiňované nastavování vah] a vyjádřit tak, že na některých slovech záleží více, nebo použít obdobu altavisťáckého rozlišování, co hledat a podle čeho výsledky třídit)
  • bonus za blízké výskyty (pokud se některá slova zapsaná v dotazu za sebou vyskytnou za sebou i v dokumentu, připočítávají se další body)
  • bonus za typy (různé typy výskytů [např. v nadpisech či klíčových slovech] jsou hodnoceny různě)
  • znevýhodnění za aproximace – u dlouhých dokumentů nemá vyhledávač kompletní informace o pozicích slov, takže fráze jen odhaduje; v takových případech se započítává polovina bodů.
  • statický rating stránky (poloha v hierarchii URL + manuálně konfigurované body pro různé servery, o kterých je známo, že poskytují výrazně relevantní nebo naopak výrazně irelevantní informace)
  • dynamický rating stránky (něco jako googleovský page ranking podle odkazů)

ROOT.cz: Kolik stránek máte v .cz indexováno a hlavně jak aktuálně?

Celkem jsme již nasbírali přes 16 mil. stránek (včetně duplikátů, redirektů, stránek, které kvůli chybám nelze stáhnout atd.) a stránky stále sbíráme. Stránek, které jsou opravdu v indexu (po odstranění chyb, redirektů, spojení shodných stránky do jedné apod.) je přes 6 mil. Nyní indexujeme v několika týdenních intervalech, ale přecházíme na plynulé reindexování.

ROOT.cz: Za jak dlouho zindexuje doménu .cz?

Za cca 2 týdny.

ROOT.cz: Indexuje striktně pouze doménu .cz? Většinu uživatelů asi zajímá i Slovensko.

Indexuje pouze .cz; na .sk běží samostatný vyhledávač www.webfast.sk na Centrum.sk.

ROOT.cz: Pokud se nepletu, dělal Martin Mareš i na projektu sherlock.cz, vychází webfast i z něho, nebo je postaven na „zelené louce“?

Jádrem Webfastu i Fulltextu Centrum.cz je Sherlock 2.0, což je obecný vyhledávací server, vzdálený potomek Sherlocka. Od svého „pradědečka“ zdědil již jen některé nápady, celý kód byl od oněch časů od základu přepsán.

ROOT.cz: Jak dlouho vývoj trval a kolik lidí se na něm podílelo (podílí)?

První verze Sherlocka byla vyvinuta na jaře 1997. Sherlock 2.0, na kterém nyní běží Webfast, byl naprogramován ve dvou lidech během ledna až dubna tohoto roku. V tomto počtu se pracuje na další verzi. V době mezi těmito dvěma verzemi probíhal jen velice pozvolný vývoj. Na webovém rozhraní a testování celého systému se podílelo několik dalších lidí.

ROOT.cz: Na jakých technologiích je Webfast postaven (software, hardware, programovací jazyk)?

Celý systém běží na dvou PC. Jedno pracuje na přípravě indexu, druhé slouží jako vyhledávací server. Oba stroje mají přibližně stejnou konfiguraci. Jeden 1GHz procesor, 512 MB RAM, cca 150 GB diskové pole. Vše pochopitelně pod Linuxem.

O softwaru trošku podrobněji: Webfast sestává z vyhledávacího jádra (Sherlock 2.0) a webového front-endu, který překládá uživatelské dotazy do formátu používaného jádrem (což je víceméně jazyk, ve kterém se zadává advanced search) a naopak odpovědi jádra převádí do HTML. Celý systém je velice modulární a moduly lze propojovat mnoha způsoby, typická konfigurace (kterou právě teď Webfast používá) vypadá asi takto:

gatherer → indexer → sherlockd < → front-end

Gatherer prochází Web, stahuje všechny stránky, konvertuje je do interního formátu (dekomprimuje, převádí kódování, parsuje HTML atd.) a ukládá do databáze; přitom objevuje odkazy na nové stránky a také průběžně zkoumá, jestli se některá z již známých stránek nezměnila nebo nepřestala existovat.

Indexer vychází z dat nasbíraných gatherem a generuje podle nich indexy. Taktéž detekuje duplikáty, počítá váhy dokumentů a udržuje slovníky.

Sherlockd odpovídá na uživatelské dotazy zprostředkované front-endem pomocí indexů připravených indexerem.

Mimo front-endu, který je v PHP, a filtrovacích a konfiguračních pravidel, pro která se používá speciální jednoúčelový jazyk, je všechno naprogramováno v čistém C bez jakýchkoliv neobvyklých knihoven (po otestování mnoha takových se ukázalo daleko robustnější a efektivnější si všechno naprogramovat sa­mi).

ROOT.cz: S jakým ohlasem se Webfast setkal u uživatelů a jaké ambice má do budoucna?

Máme mnoho spokojených uživatelů (zdroj – právě probíhající on-line průzkum mezi uživateli), kteří si nejvíce cení:

  • rychlosti, přehlednosti a přesnosti vyhledávání,
  • velkého množství nalezených odkazů (široký výběr, nalézá i odlišné odkazy v porovnání s jinými vyhledávači),
  • je ideální pro modemové připojení (hlavně díky možnosti nastavování počtu odkazů na stránce a nepřítomnosti grafické reklamy),
  • řazení výsledků (dle Q),
  • otevírání odkazu v novém okně,
  • úrovně vyhledávače a přirovnávají Webfast ke Googlu.

Sympatické jsou reakce od udivených webmasterů, kteří nevěří svým očím, na jaké všechny stránky se Sherlock dostane, dušujíce se, že na ně zaručeně odnikud nevede odkaz (což ovšem jednoduchý dotaz typu ref „http://www.xxx­.cz/yyy/zzz.html“ obvykle vysvětlí).

Do budoucna máme samozřejmě ambice stát se nejlepším vyhledávačem na světě ;-).

ROOT.cz: Myšleno zcela vážně? Máte ambice poskytnout technologii i jiným serverům a expandovat do zahraničí?

Naším prioritním cílem je samozřejmě být nejlepším vyhledávačem v ČR – proto se zaměřujeme na specifické české oříšky, např. diakritiku. Podobné problémy mají další jazyky a také na ně je vyhledávač připraven. Zároveň chceme, aby byl Webfast srovnatelný s Googlem, takže uživatelé, hledající převážně na českém internetu, budou mít jednoduchou volbu – Webfast.

Na druhé straně je Webfast také ukázkou kvalitní české vyhledávací technologie. Klademe velký důraz na spokojenost uživatelů, kteří našli rychle potřebné informace na českém internetu a zároveň vnímáme Webfast jako silný referenční bod pro další Centrum technologie. Vyhledávací technologie jsou obecně zajímavé pro velké servery, jež chtějí svým uživatelům nabídnout na svých stránkách možnost vyhledávání. Nebráníme se pronajímání našich technologií a nemusí jít pouze o pronájem vyhledávací technologie. Jsme schopni poskytovat vysokozátěžové inet aplikace např. redakční, reklamní a e-mailové systémy, WebSearch a e-commerci.

ROOT.cz: Děkuji za rozhovor.

Ohodnoťte jako ve škole:
Průměrná známka 3,13

Školení: Výpočty na grafických procesorech

  • Úvod do technologie CUDA.
  • Architektura SIMT, CUDA Kernel.
  • Textury, příklady kódů, konfigurace.
´

Zjistěte více informací o školení>>

       
10 názorů Vstoupit do diskuse
poslední názor přidán 9. 12. 2001 22:58

Tento text je již více než dva měsíce starý. Chcete-li na něj reagovat v diskusi, pravděpodobně vám již nikdo neodpoví. Pro řešení aktuálních problémů doporučujeme využít naše diskusní fórum.

Zasílat nově přidané příspěvky e-mailem