Stáhnout prezentaci
Prezentace se nahrává, počkejte prosím
ZveřejnilZdeňka Vlčková
1
PRÉCIS OD NESTRUKTUROVANÝCH KLÍČOVÝCH SLOV JAKO DOTAZŮ K STRUKTUROVANÝM DATABÁZÍM JAKO ODPOVĚDÍM Martin Lacina
2
OSNOVA Motivace Datový model Dotazy a jejich vyhodnocení Architektura systému Uživatelské testování
3
ZÁKLADNÍ CHARAKTERISTIKA dotazy pomocí klíčových slov nad relačními databázemi odpověď na dotaz je celá relační databáze, která je logickou podmnožinou původní DB logická podmnožina obsahuje nejen položky přímo související s danými klíčovými slovy dotazu, ale i položky, které se k nim různými způsoby implicitně vztahují cílem je poskytnout uživateli mnohem hlubší náhled do původních dat dotazy mohou obsahovat více klíčových slov v kombinaci s operátory AND, OR, NOT
4
MOTIVACE PRO VZNIK k internetu má přístup velké množství lidí dostupný obsah je často uložen ve strukturovaných databázích uživatelé nemají (a neměli by mít) znalosti o datových modelech a dotazovacích jazycích pro každý konkrétní zdroj informací mají jen nepřesnou představu o tom, co chtějí najít chtějí dosáhnout svých cílů s minimální námahou je stále důležitější překlenout propast mezi volným vnímáním světa průměrným uživatelem a systémy (polo-)strukturované reprezentace světa stále větší význam je přikládán volně formulovaným dotazům
5
MOTIVAČNÍ PŘÍKLAD 'précis' je to co člověk očekává jako odpověď na svou otázku, nebo výchozí bod, který jej navede k úplnější odpovědi Příklad: pokud položíme otázku "Woody Allen", pak možná odpověď (précis) by mohla vypadat třeba takto : „Woody Allen se narodil 1. prosince 1935 v Brooklynu (New York, USA). Jeho práce jako režiséra obsahuje Match Point (2005), Melinda and Melinda (2004), Anything Else (2003). Hrál ve filmech Hollywood Ending (2002), The Curse of the Jade Scorpion (2001).“ na nestrukturovaný dotaz "Woody Allen" dostáváme strukturovanou odpověď
6
POŽADAVKY NA ODPOVĚĎ odpověď není jedna tabulka (jako v SQL), ale databáze, která je logickou podmnožinou původní databáze obsahuje nejen položky přímo spojené s klíčovými slovy dotazu, ale i ty, které se k nim různými způsoby implicitně vztahují je možné určit, jak rozsáhlá odpověď bude
7
POUŽITÍ A VÝHODY lepší náhled do původních dat získání ucelené podmnožiny reálných dat z velké databáze, např. pro test nové aplikace před nasazením výhodou je spojení jednoduchosti dotazu s komplexností a strukturou odpovědi pokud byla původní databáze normalizovaná, pak je i odpověď ve formě databáze normalizována nad odpovědí se lze dále dotazovat a upřesňovat požadavky na výslednou podobu odpovědi, což by nad jednou nenormalizovanou tabulkou bylo nepřirozené a často i nemožné
8
DATOVÝ MODEL použitý autory článku relační databáze obohacené o další vlastnosti relační schéma R i (A i 1,... A i ki ) databázové schéma D je množina relačních schémat naplněním schémat daty vynikají relace a databáze databáze D odpovídá schématu databáze D Relace R i odpovídá schématu relace R i prvky relací jsou n-tice
9
LOGICKÁ PODMNOŽINA DATABÁZE Def. Mějme relační databázi D, pak její logická podmnožina označená L má následující vlastnosti: množina jmen relací ve schématu L je podmnožinou jmen relací schématu původní databáze D pro každou relaci R i v L je množina jejích atributů podmnožinou množiny atributů relace z D, která má stejné jméno pro každou relaci R i v L je množina jejích n-tic podmnožinou množiny n-tic původní relace R i (s využitím projekce na atributy přítomné ve výsledné relaci)
10
GRAF SCHÉMATU DATABÁZE Def. Graf schématu databáze G=(V,E) je orientovaný graf odpovídající schématu databáze D. v množině vrcholů grafu rozlišujeme dva typy vrcholů relační vrcholy atributové vrcholy obdobně pro hrany projekční hrany hrany spojení Předpokládáme, že graf schématu databáze D je souvislý.
11
CESTY V GRAFU SCHÉMATU cesty v grafu vždy začínají v relačním vrcholu relace B je z relace A dosažitelná, pokud existuje cesta v grafu G z relace A do relace B dosažitelnost n-tice z jedné relace do n-tice v jiné relaci cílová relace musí být dosažitelná z výchozí relace po cestě musí existovat n-tice, které se postupně spojují od počáteční až k cílové n-tici hrany v grafu vyjadřují explicitní vztahy mezi vrcholy orientované cesty v grafu vyjadřují "implicitní" vztahy mezi relačními vrcholy značí "implicitní" spojení relací z relačního do atributového vrcholu "implicitní" projekce relace na atribut
12
ANOTACE SCHÉMATU VAHAMI
13
SCHÉMA PŘÍKLADOVÉ DATABÁZE THEATRE(tid, name, phone, region) PLAY(tid, mid, date) MOVIE(mid, title, year, did) GENRE(mid, genre) DIRECTOR(did, dname, blocation, bdate, nominat) CAST(mid, aid, role) ACTOR(aid, aname, blocation, bdate, nominat) v některých případech bude použito jen první písmeno názvu relace
15
PRÉCIS DOTAZ dotaz je kombinací termů z klíčových slov a logických operátoru AND, OR a NOT term může být jedno slovo ("Titanic") nebo fráze ("Julia Roberts") uzavřená v závorkách Def. Počáteční n-tice pro databázi D a précis dotaz Q je taková n-tice, která obsahuje v alespoň jednom atributu term z dotazu, a to ať v pozitivní nebo negativní formě sémantika položeného dotazu (odpověď) je zjištěna ze samotného dotazu a z množiny omezení, které jsou na odpověď kladeny
16
OMEZENÍ DOTAZU mohou být určena uživatelem při zadání dotazu uložena v uživatelském profilu uložena v systému 2 hlavní skupiny tříd omezení dotazu omezení na relevanci definována na základě vah hran grafu strukturální omezení definována na elementech grafu pro vytvoření instance omezení lze využívat agregační funkce (min, max, avg, sum) i porovnávací operátory (>, <, =) a jejich kombinace
17
PŘÍKLADY OMEZENÍ DOTAZU minimální váha cesty, minimální váha podgrafu # relací, # atributů na relaci # spojení (tj. maximální délka cesty v grafu)
18
VYUŽITÍ VAH A OMEZENÍ rozdílné nastavení vah v grafu schématu databáze nebo rozdílné množiny omezení mohou pro stejný précis dotaz vydat různé výsledky Příklad: Filmový kritik se pravděpodobně bude zajímat o detailnější informace o filmech, zatímco filmový fanoušek spíše upřednostní krátkou odpověď obsahující kina, kde může filmy z výsledku dotazu shlédnout. Příklad: Odpověď pro mobilní telefon může obsahovat méně atributů než odpověď pro stolní počítač. lze předdefinovat různá ohodnocení grafu a různé množiny omezení pro různá použití uživatel může začít s dotazem na těsně vázané objekty a postupně jej směřovat určitým směrem a rozšiřovat jej na volněji vázané informace
19
SÉMANTIKA DOTAZU
20
PŘÍKLADY DOTAZŮ Množina omezení je prázdná q 1 : “Alfred Hitchcock” OR “Gregory Peck” q 2 : “Clint Eastwood” AND “thriller” thrillery, kde hrál Clint Eastwood thrillery režírované Clintem Eastwoodem herci hrající v thrillerech režírovaných Clintem Eastwoodem q 3 : “Gregory Peck” AND NOT “drama” q 4 : (“Clint Eastwood”AND“thriller”)OR(“Gregory Peck” AND NOT “drama”)
21
INTERPRETACE DOTAZU při hledání možné interpretace dotazu je třeba vzít v úvahu: graf schématu databáze sémantiku dotazu výskyty termů z dotazu v relacích databáze Příklad: možné interpretace dotazu "Clint Eastwood" AND "thriller" thrillery, kde hrál Clint Eastwood thrillery režírované Clintem Eastwoodem herci hrající s Clintem Eastwoodem v nějakém thrilleru a mnoho dalších interpretace dotazu se určuje naleznutím počátečního podgrafu grafu schématu databáze
22
POČÁTEČNÍ PODGRAF
23
VÁHA PODGRAFU
24
VÁHA PODGRAFU - PŘÍKLAD
25
ROZŠÍŘENÝ PODGRAF
26
INTERPRETACE DOTAZU Def. Množina všech možných rozšířených podgrafů dotazu Q nad databází D při množině omezení C obsahuje schéma logické podmnožiny databáze G’, které obsahuje nejrelevantnější informace o dotazu Q při omezení C.
27
ARCHITEKTURA SYSTÉMU
28
při každém dotazu Q nad databází D s grafem schématu G jsou provedeny následující kroky parsování dotazu převedení dotazu na disjunktivní normální formu z invertovaného indexu pro obsah databáze se zjistí, které části databáze obsahují klíčová slova z dotazu, tj. zjištění množiny počátečních relací (pokud je prázdná, pak dotazování končí) vytvoří se schéma logické podmnožiny databáze dle množiny počátečních relací společně s relacemi, které je propojují v grafu G a s jejich atributy, které se mají objevit ve výsledku dle platných omezení naplnění schématu logické podmnožiny databáze daty nejdříve se vloží počáteční n-tice poté n-tice z daších relací v grafu G' dle sémantiky dotazu a poskytnutých omezení
29
EXPERIMENTÁLNÍ VÝSLEDKY Implementace Prototyp systému v C++ Oracle 9i release 2 Server Pentium IV 3GHz 512 MB paměti během experimentů byl server více méně nezatížen 2 testovací databáze The Internet Movie Database (IMDb), www.imdb.com Restarurační data, www.gastronomia.gr
30
UŽIVATELSKÉ TESTOVÁNÍ 14 užívatelů s dobrou znalostí jazyka SQL a databází zvolená databáze IMDB uživatelé dostali seznam třiceti témat obsahujících klíčová slova z invertovaného indexu jejich úkolem bylo najít informace o daných tématech pomocí SQL pomocí metody précis
31
Čas, který uživatel strávil dotazováním databáze, než byl spokojen s výsledkem
32
Spokojenost uživatelů s výsledky a náročnosti jejich dosažení S1 – SQL před použitím metody précis S2 – SQL po použití metody précis S3 – metoda précis
33
ZDROJE [1] Alkis Simitsis, Georgia Koutrika, Yannis Ioannidis, “Précis: from unstructured keywords as queries to structured databases as answers”, The VLDB Journal (2008) 17:117-149 [2] Alkis Simitsis, Georgia Koutrika, Yannis Ioannidis, "The Essence of a Query Answer," Data Engineering, International Conference on, pp. 1382-1386, 2006 IEEE 22rd International Conference on Data Engineering, 2006
Podobné prezentace
© 2024 SlidePlayer.cz Inc.
All rights reserved.