12.03 Štěpán Škrob uvedl přednášku, bude mít následující strukturu:
- Robot
- Tvorba stránek
- Hledání
- Vnitřnosti
- Ukázka administračního rozhraní
12.07 Robot
- Robot stáhne 2 milióny stránek/den.
- Denní objem cca 8GB.
- Robot "normalizuje URL" (bez či s www, encodované znaky, URL se rozbije na části, ignorují se různé části - např. www, PHPSESSID, rand). Výsledkem je MD5 hash.
- Pokud najde url, tak se ho pokusí stáhnout a když se mu to napoprvé nepovede, jde do banlistu, ze kterého automaticky vypadne za 3měsíce.
- Stránka se při reindexaci má 3x3 pokusy (pokud se nezdaří, je vyřazena z vyhledávání (pokud server nevyhodil 50X chybu), při úspěšném pokusu opět vložena).
- Při vyřazení z hledací databáze se ztratí zpětné odkazy (které se obnovují cca měsíc).
- robots.txt se stahuje pravidelně za 2-8 dní, nemá vliv na již zaindexované stránky
- robots.txt povoluje (cituji) stejně jako google *, $
- je možné, že se bude v budoucnu implementovat sitemap
- stránky s vyšším rankem mají větší pravděpodobnost, že se dostanou do databáze (při přidávání se porovnává s náhodným číslem, když je náhodné číslo menší, stránka se přidá, jinak se zahodí)
- Uchovává se posledních N (10?) změn a zaznamenává se, jestli se stránka změnila, nebo ne. Podle toho se určuje perioda stahování (podle ranku jsou max. a min. hodnoty).
- Přeindexování by mělo být max. jednou za 2 měsíce
- Po stáhnutí stránky se aplikují filtry (content-type - nevyhovující na banlist, binární data - nevyhovující na banlist, detekce jazyka - akceptuji pouze české, meta tag robots - noindex, nofollow)
- Limity pro stahování: time-out, datová velikost
- Parser vyhazuje duplicity - přes MD5 celé stránky (zůstává první)
- Z parseru vyjde textový derivát (titulek, url, odstavce, odkazy...)
- V indexeru je zpracován textový derivát (lemmatizace, doplňování diakritiky, vytváří index v paměti) a připraví data pro dynamické úryvky ve výsledku
- Přeindexace - znovu do přidávacího formuláře (několik hodin), zároveň přegenerování screenshotu
- Screenshoty běží nad jádrem IE (200 000 screenshotů/den)
12.50 Tvorba stránek
- Upozornění před javascriptem, flashem, JS redirect, nutnost cookies
- Doporučuje se mapa webu
- Nepoužívat skryté text
- Volně cituji: "Nejsem seo-optimalizátor. Mám dojem, že je titulek hodně důležitý." -
- Stránky s neunikátními titulky mají velký problém
- Meta tagy se ignorují (kromě robots, refresh)
- Přednášející zauvažoval, že by se při zobrazování mohl zobrazovat description, pokud obsahuje klíčové slovo (podobně jako google)
- Vyhledávač nemá rád věci, které na stránce nejsou přímo vidět (chybí kontakt mezi zadaným a viděným)
- Doporučují se dělat SEO-friendly URL (oddělení pomlčkami - špatný příklad: jakpsatweb.cz ;-), co nejkratší URL (pouze krátké názvy domén (asi 3 slova) a i celkově URL)
- Pokud má dokument víc možností URL, přesměrovat na jednu
- Správně odpovídat chybovými stránkami (exp. 404, při systémových chybách 500 - jinak ban)
13.08 Hledání
- cca do 250milis projde 40GB dat a zobrazí výsledek (cca 200dotazů za vteřinu)
- Zpracování dotazu - rozloží na slova, pročistí (neznámé znaky), lemmatizace a doplnění diakritiky, výběr lemmatu ("TV nova" v. "nová TV"; stát - sloveso, podst. jm.; "Byt v Praze" v. "Být v Praze")
- relevance: shodnost vzájemné pozice slov v textu (čím blíž si jsou, tím líp) oproti dotazu, shoda s původním tvarem slova se hodnotí v kategoriích: titulek, text po odstavcích (3x), URL, zpětné odkazy.
- volně: 1000 x "sex" v titulku = 1 x "sex"
- titulky mají velkou váhu, protože se téměř dá hledat pouze podle nich
- texty zpětných odkazů jsou brány podle ranku
- váhy se mění cca za 1/4 roku
- výsledky jsou seřazeny čistě podle výsledné relevance
- spojení mezi katalogem a fulltextem pouze ten, že se titulek z katalogu zaindexuje k dané stránce
- při řazení se odstraňují podobné stránky a méně relevantní stránky ze stejného webu
- podobná stránka se určí na základě charakteristických řetězců slov - N náhodně zvolených řetězců o M slovech. Podobná, když asi 8 z 10 řetezců je shodných.
- problémové jsou eshopy
- doporučení - neduplikovat zbytečně části stránek (i v rámci jednoho webu)
- Zajímavý nápad: zapracovat speciální značky přímo do html "odtud až potud to indexuj"
- problémy byly u screenshotgenerátoru a podvrhováním obrázků
- operátory site: a ""
13.33 Vnitřnosti
Webovka se po zadání dotazu zeptá cache, pokud se nenajde, zeptá se search serveru, který si nechá sestavati další věcí od title serverů.
Hardware:
Search servery - IBM 346 - 11x (Dual Xeon 3GHz, ram 2GB, 6x SCSI 72GB, 15kRPM, RAID 0) - jeden server cca 120 000,- Kč. Běží na minimální výkon - hodně toho odfiltruje cache (Díky našeptávači;-)
Title servery - IBM 336 - 2x (Dual Xeon 3GHz, ram 2GB 14x SCSI 72GB, 15kRPM, RAID 1+0)
O. S. GNU Debian Linux "Sarge"
13.48 Administrační rozhraní
Menu: Url, domény (Hledat doménu, hledat doménu 2. řádu, přidat novou doménu, smazat doménu, zařadit url v doméně ke zpracování), hledání, problémy(informace o řešení, limity domén 2. řádu, limity domén, duplicitní domény, duplicity v parametrech), konfigurace, testy, uživatelé, monitoring.
U domény se dají vyspecifikovat ignorované parametry, frekvence dotazování.
U hledání se může zkoušet vyhledávání s různě nastavenými váhami.
Váhy jsou různé podle zadané fráze (víceslovné, jednoslovné...)
- jednoslovný - víc rank
- víceslovný - míň rank
U problematických stránek - duplicitní domény - jaká je hlavní
Ehm, fujjtext je překlep nebo úmysl? :-)
Jinak díky! Zajímavé čtení.