Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz...

32
Semistructured Semistructured Data Data Autor: Stefan Autor: Stefan Josten Josten 1. Juli 1999 1. Juli 1999 Seminar: Seminar: Intelligenz im Intelligenz im Intranet Intranet Thema: Thema:

Transcript of Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz...

Page 1: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Semistructured DataSemistructured Data

Autor: Stefan JostenAutor: Stefan Josten

21. Juli 199921. Juli 1999

Seminar:Seminar: Intelligenz im IntranetIntelligenz im Intranet

Thema:Thema:

Page 2: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Semistructured DataSemistructured Data

Gliederung:

1. Einleitung2. Ein Modell für semistrukturierte Daten3. Query Languages4. Struktur in unstrukturierten Daten5. Ausblick6. Zusammenfassung

Page 3: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

BegriffsbildungBegriffsbildungSemistructured DataSemistructured Data

Der Begriff “Semistructured Data” wurdefür Daten eingeführt, die weder auf einem festenSchema beruhen noch völlig chaotisch sind. Da die Struktur in die Daten eingebettet ist (selbstbeschreibend), liegen sie irgendwo dazwischen.

Wie kommt es zu semistrukturierten Daten ?Wie kommt es zu semistrukturierten Daten ?

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 4: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

3 Hauptgründe: Unterschiedliche Struktur der Daten Datenintegration Zugriff (Browsing)

... Motivation ... Motivation

Beobachtung:

Viele der heutigen Daten sind nicht konform mit den

traditionellen objektorientierten oder relationalen Verfahren

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 5: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Unterschiedliche Struktur der Daten:Unterschiedliche Struktur der Daten: Verschiedene Applikationen speichern Daten in verschiedenen Formaten Kein existierendes Datenmodell ist allumfassend Neue Datenformate

3 Hauptgründe (1)Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 6: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Es kommt immer öfter vor, daß neue Datenarten in existierenden Datenbanken mit fester Struktur erfaßt werden müssen Heterogene Datenquellen mit unbekannter Struktur (Fusion,

Partner,..) Neuentwicklung oft zu teuer, riskant, langwierig, ineffizient...

Datenintegration:Datenintegration:

3 Hauptgründe (2)Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 7: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

3 Hauptgründe (3)

Anfragen müssen auch ohne genaue Kenntnis des Schemas möglich sein Anfrage auf Schemakomponenten wie z.B.: Wo kann ... gefunden

werden Anfragen auf das WWW

Zugriff (Browsing):Zugriff (Browsing):

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 8: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Heutige Daten sind nicht konform mit den traditionellen Datenmodellen

Informationen sind auch in der Struktur der Daten enthalten:HTML, SGML...

Heterogene, teilweise undokumentierte Datenbanken, z.B. durch Partner, Fusionen, ...

Erhöhte Anforderungen an Zugriff

Neue Verfahren nötig

ZusammenfassungZusammenfassungSemistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 9: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Modell für semistrukturierte DatenModell für semistrukturierte Daten

Das verbreitetste Modell ist das Object Exchange Modell Das verbreitetste Modell ist das Object Exchange Modell (OEM):(OEM):

Daten als Sammlung von Objekten repräsentiertDaten als Sammlung von Objekten repräsentiert Objekte können atomar oder komplex seinObjekte können atomar oder komplex sein atomare Objekte haben als Werte Basistypen (int,string,..)atomare Objekte haben als Werte Basistypen (int,string,..) komplexe Objekte haben als Werte (Attribut,Objekt) - komplexe Objekte haben als Werte (Attribut,Objekt) -

Paare Paare

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 10: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

OEM- Modell als GraphOEM- Modell als Graph

OEM- Daten werden durch einen Graphen modelliert:OEM- Daten werden durch einen Graphen modelliert:

Die Knoten sind die ObjekteDie Knoten sind die Objekte Die Kanten sind mit den Attributen beschriftetDie Kanten sind mit den Attributen beschriftet Die Blätter enthalten die atomaren ObjekteDie Blätter enthalten die atomaren Objekte Es gibt eine Wurzel, von der alle anderen Objekte erreichbar Es gibt eine Wurzel, von der alle anderen Objekte erreichbar

sind sind

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 11: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

OEM- ModellOEM- Modell

Formale DefinitionFormale Definition

Semistrukturierte Daten sind ein Tupel G=(Semistrukturierte Daten sind ein Tupel G=(V,E,r,vV,E,r,v)) V:V: Menge von Knoten; Menge von Knoten; V V ist Vereinigung von ist Vereinigung von VVc c undund VVaa

EE: Menge von Kanten; : Menge von Kanten; EE ist Teilmenge von ist Teilmenge von VVcc x x AA x x VV

AA: Menge von Attributen (int, string, symbol, ...): Menge von Attributen (int, string, symbol, ...) rr ist die Wurzel (Element von ist die Wurzel (Element von V V)) vv: : VVa a -> -> DD bildet die atomaren Objekte auf die Menge der bildet die atomaren Objekte auf die Menge der

atomaren Werte atomaren Werte DD (int, string, ...) ab (int, string, ...) ab

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 12: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Graphische Repräsentation: BeispielGraphische Repräsentation: Beispiel

Veranstaltung

Vorlesung Übung

DozentTitel Termin

Übung_zu_VL

Vorname Nachname

DozentTermin

Raum

Computerspielen1999

Hans Müller

Maier 1997 48-226

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 13: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Textuelle Repräsentation BeispielTextuelle Repräsentation Beispiel

Veranstaltung: &o1 { Vorlesung: &o5

{ Dozent: &o7{Vorname: &o20 "Hans", Nachname: &o25 "Müller"},

Titel: &o31 "Computerspielen", Termin: &o45 1999, Übung_zu_VL: &o9}

Übung: &o9{ Dozent: &o21 "Maier", Termin: &o42 1999, Raum: &o45 "48 - 226"}

}

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 14: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Bezug zum objektorientierten ModellBezug zum objektorientierten Modell Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Klasse PersonName : StringTel : Int Klaus 3184

Holger 5674

OOM:

OEM:

Holger 5674 Klaus 3184

Element Element

Name NameTel Tel

Mayer

Nachname

io

io

Page 15: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Query LanguagesQuery Languages

Es existiert eine ganze Reihe unterschiedlicherQuery Languages, um auf semistrukturierteDaten zuzugreifen.

2 davon werden vorgestellt:• Lorel (Lightweight Repository Language)• UnQL (Unstructured Query Language)

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 16: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Lorel BeispielLorel Beispiel

select x.Dozentfrom Veranstaltung.(Vorlesung) | (Übung) xwhere x.Termin < 1998

VeranstaltungVorlesung Übung

DozentTitel Termin

Übung_zu_VL

Vorname Nachname

DozentTermin

Raum

Computerspielen1999

Hans Müller

Maier 1997 48-226

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 17: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

LorelLorel

Ein Vorteil von Lorel ist die Fähigkeit reguläre Ausdrücke auszuwerten:

• ( ) ? : Option• ( ) | ( ) : Alternative• ( ) . ( ) : Konkatenation• ( ) + : Mehrfach (mind. 1)• ( ) * : Mehrfach (mind. 0)

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 18: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

UnQLUnQL

Die Unstructured Query Language wurde aus der strukturellen Rekursion hergeleitet

Vorteil: Anfragen und Transformation mit demselben Formalismus möglich

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 19: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Strukturelle Rekursion besteht aus mindestens einer rekursiven Funktion, die mit Hilfe von Regeln definiert wurde.

Beispiel: (1) f({ })={ } (2) f(t1 U t2) = f(t1) U f(t2)(3) f(v) = if isInt(v) then {result : v}

else { }(4) f({s : t}) = f(t)

UnQL: strukturelle RekursionUnQL: strukturelle RekursionSemistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 20: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

UnQL: Beispiel 1UnQL: Beispiel 1

(1) f({ }) = { }(2) f(t1 U t2) = f(t1) U f(t2)(3) f(v)=if isInt(v) then {result : v}

else { }(4) f({s : t}) = f(t)

VeranstaltungVorlesung Übung

DozentTitel Termin

Übung_zu_VL

Vorname Nachname

DozentTermin

Raum

Computerspielen1999

Hans Müller

Maier 1997 48-226

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 21: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

f ({Veranstaltung : &o1})= f (&o1) (4)= f ({Vorlesung: &o5, Übung: &o9}) = f ({Vorlesung: &o5} U {Übung: &o9}) = f ({Vorlesung: &o5}) U f({Übung: &o9}) (2)= f (&o5) U f (&o9) (4)

f(&o5) = f ({Dozent: &o7, Titel: &o31, Termin: &o45})= f({&o7, &o31, &o45}) (4)

.

.

= f (1999) U f(1997)= {result : 1999} U {result : 1997} (3)= {result : 1999, result : 1997}

Page 22: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

UnQL Beispiel 2UnQL Beispiel 2

Anfrage und Transformation:

(1) f({ }) = { }(2) f(t1 U t2) = f(t1) U f(t2)(3) f(v) = v(4) f({s : t}) = if s = Termin then {Termin : g(t)} else {s : f(t)}

(1) g({ }) = { }(2) g(t1 U t2) = g(t1) U g(t2)(3) g(v) = if isInt(v) then Int2String(v) else v(4) g({s : t}) = {s : g(t)}

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 23: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Struktur in unstrukturierten DatenStruktur in unstrukturierten Daten

Die Eigenschaft selbstbeschreibend bedeutet, daß das Schema in den Daten eingebettet ist und nicht endgültig vorliegt.

Vorteil:hohe Flexibilität bei Änderung der Daten

Nachteil:• Einfügen ist ineffizient • Auswerten der Anfragen kann ineffizient sein• Anfragen sind schwer zu formulieren

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 24: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Struktur in unstrukturierten DatenStruktur in unstrukturierten Daten

Hauptvorteil der semistrukturierten Daten ist, daß sie nicht in Schemas gezwängt wurden.

Trotzdem ist es manchmal sinnvoll, eine Art Schema einzuführen.

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 25: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

2 Ansätze:2 Ansätze:

• Schemas werden getrennt von den Daten beschrieben. • Das Schema wird automatisch von den Daten abgeleitet.

Wissenschaftler suchen nach Wegen, Regelmäßigkeiten in der Struktur der Daten zu finden, ohne ein konkretes Schema zu früh festzulegen

Finden von SchemasFinden von Schemas Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 26: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

ProblemeProbleme

Da semistrukturierte Daten unabhängig von einem Schema existieren können, ergeben sich neue Arten von Problemen:

• Bei gegebenen Schema S und Daten D ist es schwer zu entscheiden, ob D mit S übereinstimmt.• Existiert ein Schema S, das die Schemas S1 und S2 umfaßt ?

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 27: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

WWW und Semistructured Data (1)WWW und Semistructured Data (1)

Extensible Markup Language (XML)Extensible Markup Language (XML)gewinnt immer mehr an Bedeutunggewinnt immer mehr an Bedeutung

Eine neue Klasse von Datenmanagement- Eine neue Klasse von Datenmanagement- Problemen entsteht.Problemen entsteht.

Zentrale Anwendung von XML ist derZentrale Anwendung von XML ist derelektronische Datenaustauschelektronische Datenaustausch

Das Datenaufkommen steigt.Das Datenaufkommen steigt.

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 28: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

WWW und Semistructured Data (2)WWW und Semistructured Data (2)

Extensible Markup Language

XML

Objekte(Elements)

Attribute(Tags)

Das Schema ist auch in die Daten

eingebettet

Auffallende Ähnlichkeiten zu Semistructured Data

Semistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 29: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Semistructured Data:• neues Datenbankenparadigma• Schema in den Daten enthalten• vereinfacht Datenaustausch• OEM Modell am bekanntesten• traditionelle Ansätze als Teilmenge enthalten• Geeignet um mit strukturierten Dokumenten (z.B HTML) umzugehen

ZusammenfassungZusammenfassungSemistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 30: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

Beispiel:

The internet movie database.

http://us.imdb.com

Semistructured Data in der PraxisSemistructured Data in der PraxisSemistructured DataSemistructured Data

EinleitungEinleitung ZusammenZusammen--fassungfassung

AusblicAusblickk

Query Query LanguageLanguagess

ModellModell Struktur inStruktur inunstr. Datenunstr. Daten

Page 31: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

LiteraturverzeichnisLiteraturverzeichnis

Dan Suciu: An Overview of Semistructured Data, Peter Buneman: Semistructured Data, 1997Peter Buneman, Susan Davidson, Mary Fernandez, Dan Suciu:

Adding Structure to Unstructured Data,1997Peter Buneman, Alin Deutsch, Wang-Chiew Tan:

A deterministic model for semi-structured dataPeter Buneman, Benjamin Pierce:

Union Types for Semistructured DataHartmut Liefke: Horizontal Query Optimization on Ordered

Semistructured DataStefan Braß: Querying Semistructured Data and the WWW

Semistructured DataSemistructured Data

Page 32: Semistructured Data Autor: Stefan Josten 21. Juli 1999 Seminar: Intelligenz im Intranet Intelligenz im Intranet Thema:

ENDEENDE

Semistructured DataSemistructured Data