Seznam.cz mění technologii hledání

Seznam 14.9.2010 spouští novou verzi technologie fulltextového vyhledávání. Původní změna, která neměla mít zásadnější význam na vyhledané výsledky, se ale podle testovacího zkušebního vyhledávače stala docela zásadním míchátkem výsledků. A zřejmě k lepšímu.

Hlavní změnou je jiný způsob uložení slov v databázi (indexu) hledání.

Na našem obvyklém testovacím místě searchtest.seznam.cz jsme spustili nově připravovanou verzi našeho fulltextového vyhledávání. Ačkoliv byla změna tentokrát cílená hlavně na změnu technologie a předpokládali jsme, že se na výsledcích tolik neprojeví, tak se na některých projevila. Nebylo to ale cílem.

Co bylo tedy předmětem změny?
Dříve jsme měli v databázi uložená tzv. „lemmata“ – tj. základní tvar každého zaindexovaného slova. Výhodou bylo jednodušší vyhodnocování dotazů, protože se pro každé slovo hledalo jedno lemma a ne množství různých tvarů. Toto byla paradoxně i největší nevýhoda – nebylo možné rozlišovat tvary jednoho slova, což se zvláště negativně projevovalo u slov jejichž některý tvar kolidoval s jiným dotazem.

Nové zpracování oproti tomu ukládá do databáze všechna slova v takovém tvaru, tak jak se přesně vyskytují na stránce a následně pak rozšiřuje slova dotazu o možné tvary. Vyhodnocení je o něco náročnější, ale umožňuje řídit jak se které slovo má přesně vyhledat.