1 / 11

6.4 Verwaltung semistrukturierter Daten

6.4 Verwaltung semistrukturierter Daten. - was ist das? Datenverwaltung für XML-Dokumente Daten in XML-Gewand eigentlich XML-Dokumente Abbildung auf relationale und objektrelationale DBS Indexierung Anfragesprachen: XML Query - RDF-Datenbanken: erste Versuche. Indexierung.

oya
Download Presentation

6.4 Verwaltung semistrukturierter Daten

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 6.4 Verwaltung semistrukturierter Daten • - was ist das? • Datenverwaltung für XML-Dokumente • Daten in XML-Gewand • eigentlich XML-Dokumente • Abbildung auf relationale und objektrelationale DBS • Indexierung • Anfragesprachen: XML Query • - RDF-Datenbanken: erste Versuche

  2. Indexierung • Performance matters ! • Naive Lösung zur Auswertung von existsNode etc: • Parsen des Dokuments, Baum traversieren • CLOB mit invertierten Listen (wie oben: z.B. Intermedia) • Grundsätzliches Problem: Indexierung Semistrukturierter Daten • Warum eigentlich schwierig?? • Wertindex / Textindex  • "Finde alle Objekte, die über einen Pfad erreichbar sind" : Pfadindex

  3. Indexierung Lore-System (Stanford '97)Abiteboul et al.: Indexing semistructured data, Tech. Rep, Stanford Univ., ftp://db.stanford.edu/pub/papers/semiindexing98.ps. • Dataguides* • Idee: - alle Pfade des Datengraphen merken- Index, wenn die erreichbaren Objekte gespeichert werden * Datenverzeichnis (keine Standardübersetzung)

  4. Dataguide (2) • Definition • Gegeben eine semistrukturierte DB (typisch hierarchisch, auch für Graph-DB definiert) • Ein Datenverzeichnis (Dataguide) für DB ist ein Graph G mit: • Jeder Pfad in DB kommt in G vor (Bezeichner-Pfad, nicht Daten!) • Jeder Pfad in G kommt in DB vor • Pfade in G sind eindeutig (aber nicht in DB!)

  5. Dataguides (3) Problem: mehr als ein korrektes Datenverzeichnis für eine DB

  6. Dataguides (4) I 1 II Nicht stark (strong) c b a {x} {z} {z'} {I,II} {1} {1} {I,II} {a,b} {c} {a,b,c} {x,z,z'} {x} {z,z'} "Strong Dataguide": äquivalente Pfade in Guide äquivalent in DB

  7. Dataguides (5) • Algorithmus zur "Indexerstellung": Dataguide G: Knoten (G) = { {wurzel}} Kanten =  while Veränderung do s = nonDetSelect (Knotenmenge (G)) a = Select (Labels) Knoten (G) =+ {s'={y|x in s, es existiert (x->y, label a) in Kantenmenge(DB)} Kanten (G) =+ (x->y, label a)

  8. x x 10 13 12 11 11 3 9 7 8 6 2 5 4 9 1 1 x x x b a a c a d a a x 2,3,4,5,6 d a b c 7,8,10,12,13 7,13 Dataguides (6) DB Beachte: Konstruktion eines deterministischen aus nichtdetermini-stischem Automaten! b Dataguide G Kann offenbar groß werdenWenn DB Baum: Größe von G <= Größe DB

  9. Indexierung Bsp: Lore-System (Stanford '97)Abiteboul et al.: Indexing semistructured data, Tech. Rep, Stanford Univ., ftp://db.stanford.edu/pub/papers/semiindexing98.ps. Ein hierarchisches Datenbänken... ... und die zughörigen Pfade • ... Und ein "DataGuide" (Widom et al.: "DataGuides: Enabling Query.....", Proc VLDB 1997) • enthält jeden möglichen Pfad der hierarchischen DB • "gibt es einen bestimmten Pad in der DB"- wie heißen die Nachfolger des aktuellen Knotens • Erweiterung zu Index durch Menge der erreichbaren Objekte

  10. Systeme: Tamino • Tamino (SoftwareAG) "Native data store"

  11. ... Tamino • Beispiel für Integration mit tabellarischen Daten Anfrage: ...?_xql=hospital/patient[p-surname="Jones"]/doctor Sprache: X-Query

More Related