Fulltextové vyhledávání Miroslav Prachař S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2008 1 1
Cíl Dosavadní možnosti vyhledávání Analýza dalších potřeb při vyhledávání Technologické možnosti Implementace Budoucnost S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2007
Dosavadní možnosti vyhledávání I Podpora vyhledávání od počátku vývoje UIS Původně jednoduchá funkcionalita Postupné rozšiřování Vznik portálových vyhledávacích aplikací S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2007
Dosavadní možnosti vyhledávání II Podpora číselných a řetězcových údajů do délky 4000 znaků Pouze indexování „metadat“ Dostačující u některých objektů (lidé, předměty, pracoviště, …) U jiných potřeba indexovat i samotný obsah (Dokumentový server, přílohy e- mailů, helpdesk, diskuze…) S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2007
Analýza dalších potřeb I Metadata ukládány jako databázové typy NUMBER VARCHAR2 Vlastní obsah záznamů/dokumentů BLOB (Binary Large Object) .doc, .pdf, … CLOB (Character Large Object) Řetězce/texty nad 4000 znaků S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2007
Analýza dalších potřeb II Rozsáhlost textových dokumentů Odlišná filozofie indexování Podpora speciálních operátorů ve vyhledávácích dotazích Vhodná prezentace výsledků → fulltextové technologie S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2007
Technologické možnosti Komerční řešení Google Search Appliance Oracle Text ConText CZ / ConText SK Vývoj vlastní fulltextové technologie Přizpůsobení přesně pro účely UIS Větší časová náročnost Možnost kombinace s některými komerčními produkty S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2007
Implementace indexování Inverzní index Odlišná filozofie od „klasického“ indexování Extrahuje tzv. tokeny z indexované sady dokumentů Ke každému tokenu přiřazuje seznam dokumentů, ve kterých se vyskytuje Případně další přídavné informace S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2007
Princip implementace inverzního indexu v UIS S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2007
Aktualizace indexu Realizace na aplikační úrovni speciálním modulem Úvodní naindexování (u obsáhlejších záznamů časově náročnější ) Indexování změn Indexování nového/změněného záznamu nejpozději do 5 min. S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2007
Vyhledávací dotazy I Logické operátory Speciální fulltextové operátory AND, OR, NOT Implicitně AND Speciální fulltextové operátory NEAR, PHRASE Case insensitive Volitelná citlivost na diakritiku S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2007
Vyhledávací dotazy II Pokročilejší fulltextové operátory Operátor pravostranného rozšíření * Umožňuje podřetězcové vyhledávání Operátor STEM reprezentovaný znakem $ Na klíč se aplikuje lexikální analýza Zjistí, dle jakého slovního základu se mají generovat další tvary klíče, přes které se bude vyhledávat Pro implementaci využití produktu ConText CZ firmy Sefira S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2007
Příklady vyhledávacích dotazů I informační systém univerzity vyhledá záznamy obsahující slovo „informační“ a zároveň „systém“ a zároveň „univerzity“ informační OR systém vyhledá záznamy obsahující slovo „informační“ nebo slovo „systém“ informační NEAR systém vyhledá záznamy, kde slova „informační“ a „systém“ jsou v textu blízko sebe univerzitní PHRASE informační PHRASE systém vyhledá záznamy, kde slova „univerzitní“, „informační“ a „systém“ následují v textu bezprostředně za sebou S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2007
Příklady vyhledávacích dotazů II informac* vyhledá záznamy obsahující informace, informaci, informacemi, informační, informačních, $jde vyhledá záznamy obsahující studium nebo některý z jeho vyskloňovaných tvarů - jdu, jdem, jdete, šli, nešlo, jít, jdouce,… $studuje NEAR $predmet vyhledá záznamy, kde slova studuje a předmět nebo slova z nich odvozená jsou v textu blízko sebe informac* OR system* vyhledá záznamy, obsahující buď nějaké slovo začínající „informac…“ nebo slovo začínající „system…“ S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2007
Další vývoj Operátor levostranného rozšíření Kvalitní parsování dotazů Podpora vnoření operátorů Použití závorek Maximální efektivnost indexovacích algoritmů a rychlost fulltextových dotazů Hodnocení relevance nalezeného dokumentu Podpora stoplistů (různé druhy) Nasazení do různých oblastí UIS S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2007
Děkuji za pozornost. Dotazy? 23. – 25. dubna 2007 S4U – Seminář o Univerzitním informačním systému 23. – 25. dubna 2007