Interoperable Informationssysteme
Aufbau der heutigen Sitzung Motivation für die Vorlesung als Ganzes in eher abstrakter Form, “roter Faden”, Interoperabilität, Heterogenität, semistrukturierte Datenmodelle, XML. Auflistung der Inhalte der Vorlesung, Beginn des ersten Teils.
Einleitung Was ist Interoperabilität? Was sind semistrukturierte Datenmodelle? Zusammenhang Interoperabilität – semistrukturierte Datenmodelle? Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Problem Grosse Datenmengen sind verfügbar. Daten werden unterschiedlich modelliert. Systeme zur Datenverwaltung haben unterschiedliche Fähigkeiten. Informationssysteme existieren nebeneinander innerhalb einer Organisation/Firma, teilweise innerhalb, teilweise ausserhalb der Organisation (z.B. Vergleich Kundenliste - Top500-Liste), sämtlich ausserhalb des Unternehmens “Information Brokering”, “Virtual Enterprises”, z.B. Dienst, der verschiedene Auctioning-Angebote zusammenfasst. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Problem Man will integrierten Zugriff. Jene Unterschiede/Charakteristika der Sourcen sollten transparent sein; Benutzer soll sich nicht darum kümmern müssen wie Daten modelliert sind, welches System verwendet wird, wo Daten gespeichert sind. Integrierter Zugriff - Anfragen über mehrere Sourcen, Überbrückung der Heterogenität. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Interoperable Datenbanken Definition gemäss ‘Computing Dictionary’: “A database front-end which communicates with multiple heterogeneous databases and makes them appear as a single homogeneous entity with semantic calls.” Hier jedoch keine Beschränkung auf Datenbanken bzw. relationales Datenmodell, sondern Betrachtung von beliebigen Sourcen, z.B. auch Dokument-Server, File-Systeme, Web-Server. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
‘Integrierter Zugriff’ Benutzeroberfläche, die das Absetzen von Anfragen erlaubt, die für alle Komponenten bestimmt ist, Transformation der Daten in einheitliches Datenmodell, Entwicklung von Anwendungen gegen diese Modellierung. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Interoperabilität und XML Notwendigkeit, möglichst allgemeines Datenmodell zu verwenden. XML hat sich als universelles Daten-Austauschformat etabliert, Verwendung von XML als Modell für den integrierten Zugriff. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Heterogenität Warum sprechen wir über Heterogenität? Heterogenität ist der Grund dafür, dass unser Problem schwierig ist; wären Systeme nicht heterogen, hätte man das Problem nicht. Heterogenität – Motivation für semistrukturierte Datenmodelle, herkömmliche Datenmodelle sind z.T. ‘lästiges Korsett’. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Heterogenität Anwendungsunabhängige Unterschiede: Datenmodell (z.B. relational vs. objektorientiert), Anfragesprache. Unterschiede bei der Modellierung (im gleichen Modell): Weglassen von Information, explizite Strukturierung, z.B. ‘Name’ vs. ‘Vorname - Nachname’, unterschiedliche Bedeutung der Attribute (trotz gleicher Bezeichnung, z.B. Preis - netto oder brutto?) Unterschiede auf Instanzenebene, z.B. Beträge in CHF - Beträge in Lira. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Heterogenität - Beispiel Klemens Bruno Böhm Bad Homburg, Zürich 65000 CHF Wigbert F. Böhm Stuttgart 35000 DM Prof. Stein Hans Jörg Schek Zürich > 100000 CHF Mohan Almaden Torsten Grabs Zürich < 100000 CHF Unterschiedliche Zahl von Wohnorten Unterschiedliche Darstellung des Zweitnamens Unterschiedliche Währung beim Jahreseinkommen (Konvertierung = Informationsverlust) Uneinheitliche Darstellung zusammengesetzter Vornamen Jahreseinkommen nicht immer als exakter Wert Fehlende/nicht bekannte Werte Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Datenmodell, Schema, Typ (1) Diese Folie – Begriffe für Erklärung semistrukturierter Datenmodelle. Definition Datenmodell laut Ullman: Formalismus und Notation zur Beschreibung von Datenstrukturen und eine Menge von Operationen, die zum Manipulieren und Validieren der Daten verwendet werden. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Datenmodell, Schema, Typ (2) Typ - Menge von Werten, mit denen eine Variable oder eine Konstante belegt sein darf; Schema laut Ullman: Spezifikation der Typen von Entities in Datenbank und der Beziehungen zwischen Instanzen dieser Typen; Art, wie Entities und Beziehungen auf einer Abstraktionsebene auf der nächstniedrigeren ausgedrückt werden. Beispiel: Array Konzeptionelles Schema: integer array A[1..n; 1..m] Physisches Schema: A[i, j] ist an Position a0 + 4(m(i-1)+j-1) Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Semistrukturierte Daten Verallgemeinerung bekannter Datenmodelle, Motivation: kein explizites Schema vorhanden, (implizites) Schema kann sich (im Laufe der Zeit) ändern, keine starke Typisierung, d.h. Attribut kann (für unterschiedliche Objekte) unterschiedlichen Typ haben, Reihenfolge, z.B. Reihenfolge der Kapitel eines Dokuments. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Semistrukturierte Daten - Fortsetzung Semistrukturierte Daten sind allgegenwärtig: Dokumente z.B. Gesetzestexte, Wörterbucheinträge, HTML-Dokumente, Daten universelles Austauschformat, z.B. für E-Commerce. Welche Rolle spielt XML? Zahlreiche Tools, zahlreiche DTDs, Standard des W3C, Grundlage zahlreicher weiterer Standards. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Semistrukturierte Daten (3) Zusammenhang ‘Querying- und Transformationsmechanismen’ und ‘Interoperabilität’, Indexierung semistrukturierter Daten: Beschleunigung des deklarativen Zugriffs, viele Anfragen ohne Indexstrukturen praktisch nicht evaluierbar, Index ist verkürzte Beschreibung des Datenbank-Inhalts (aus einer bestimmten Sicht). Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Markup Zusätzliche Information, die in Dokumenttext eingefügt wird. Jedes Textverarbeitungssystem generiert Markup, z.B. \par (in RTF) identifiziert Anfang eines neuen Absatzes, \sb240 spezifiziert 12-pt Space. Benutzer gibt Markup nur in seltenen Fällen selbst ein, z.B. mit LaTeX. Generalized Markup: spezifiziert nicht das Aussehen des Dokuments, identifiziert Strukturbestandteile des Dokuments, \sb240 ist kein Generalized Markup. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Markup - HTML als Beispiel <div> <h3>The Autobiography of Benjamin Franklin</h3> Benjamin Franklin <i>8.99</i> … </html> Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Logischer Markup mit XML <?xml version='1.0’?> <bookstore> <book genre="autobiography"> <title>The Autobiography of Benjamin Franklin</title> <author> <first-name>Benjamin</first-name> <last-name>Franklin</last-name> </author> <price>8.99</price> </book> <book genre="novel"> … </book> </bookstore> Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Warum will man mit Generalized Markup arbeiten? (1) Trennung zwischen logischer und Layout-Struktur führt zu höherer Flexibilität, insbesondere kann man unterschiedliche Darstellungen für unterschiedliche Benutzer und unterschiedliche Anforderungen erzeugen, Beispiel: Lektor soll alle Eigennamen im Wörterbuch ueberpruefen. hat man bessere Strukturierungsmöglichkeiten (Strukturierung muss nicht immer explizit dargestellt werden, feinere Typisierung). Beispiel: Differenzierung Vorname – Nachname. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung Bullet 1: Layout zum einen, bestimmte Strukturbestandteile hervorheben, z.B. Zutaten Zum anderen: Umstrukturierung – kompaktes Woerterbuch mit nur einer Bedeutung
Warum will man mit Generalized Markup arbeiten? (2) Dokument mit logischem Markup enthält i.a. mehr Information, leichteres kooperatives Arbeiten bzw. bessere Dokumentation eigener Arbeitsschritte. Konsistenz der Dokumente: 'intra-document consistency', 'inter-document consistency'. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung Bullet 2: 24 Gründe, warum Begriff im Wörterbuch kursiv
Was leistet XML? (1) Ziel von XML – nicht Standardisierung des Generalized Markups. Man will unterschiedliche Dokumenttypen haben, mit jeweils unterschiedlichem Markup. Beispiele: Inventarliste Buchhandlung, Kochrezept. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Was leistet XML? (2) Ziel von XML: der Darstellung von Generalized Markup im Dokument (Syntaxebene), Festlegung, welcher Markup wo im Dokument zulässig, z.B. Kochrezept muss Zutaten enthalten, Zutaten müssen vor der Zubereitung kommen. Nicht obligatorisch, solche Festlegungen zu treffen. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Dokumenttypdefinition Dokumenttypdefinition (DTD) ist im wesentlichen Menge von Regeln/ Grammatik, DTD gibt vor, was für Markup (an welcher Stelle genau im Dokument des Typs) vorkommen darf. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Beispiel: Bookstore DTD <!ELEMENT bookstore (book)*> <!ELEMENT book (title,author+,price?)> <!ATTLIST book genre CDATA #REQUIRED> <!ELEMENT title (#PCDATA)> <!ELEMENT author ( name |(firstname,lastname))> <!ELEMENT price (#PCDATA)> <!ELEMENT name (#PCDATA)> <!ELEMENT firstname (#PCDATA)> <!ELEMENT lastname (#PCDATA)> Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Logische Dokumentstruktur bookstore Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung ... book book title author price title author price The Autobio- graphy of ... 8.99 The Gorgias 9.99 first- name last- name name Benjamin Franklin Plato
Inhalt der Vorlesung (1) Datenmodell 1: OEM Queries 1: Deklarativer Zugriff auf semistrukturierte Daten Anforderungen, Flexibilität, zwei Sprachen Datenmodell 2: XML Abgrenzung zum relationalen Modell, Zusammenhang XML – Dokumente, ‘Praxis-Features’: Kodierung von Chars, Entities, vordefinierte Typen Datenmodell 3: XML und verwandte Standards DOM, SAX, XPointer, XLink Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Inhalt der Vorlesung (2) Schema und Typen Motivation, DataGuides, Datalog, Simulationen Systeme 1: Indexstrukturen für semistrukturierte Daten unterschiedliche Indices unterstützen unterschiedliche Anfragen, DataGuides, PAT-Trees, STORED, XML-Features von SQL Server, Evaluierung von XML-Queries Datenmodell 4: Metadaten MPAA, Dublin Core, RDF Queries 2: Transformationsmechanismen für semistrukturierte Daten XSLT, YAT Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Inhalt der Vorlesung (3) Systeme 2: Query Processing in verteilten, heterogenen Umgebungen Query-Evaluierung, Queryoptimierung Systeme 3: Infrastrukturen für die Integration heterogener Informationssysteme Harmony – was bekommt man, was muss man selbst leisten? A0-Algorithmus Systeme 4: Erweiterbare Query-Optimierung Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Abgrenzung gegenüber anderen Lehrveranstaltungen Zusammenhang zu ‘Data Warehousing’: Data Warehouse - Materialisierung integrierter Sicht bzw. Teilen davon, insbes. Aggregate, bzw. historischer Entwicklung der Daten, multidimensionales Datenmodell (Datenmodell wurde nicht entworfen, um mit Heterogenität gut umzugehen.) Konsistenzerhaltung, effiziente Berechnung der materialisierten Sicht, physischer Entwurf, neue Operatoren auf höherem Abstraktionsniveau. Zusammenhang zu ‘Objekten höherer Ordnung’ -Mechanismen zum Kommunikationsaufbau zwischen Informationsobjekten. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung
Abgrenzung gegenüber anderen Lehrveranstaltungen Materialisierungen, physischer Entwurf - hier kein Thema, alle Sichten sind virtuell. Anderes Datenmodell. Hier vorgestellte Konzepte sind orthogonal zu den Mechanismen zur Verwaltung von Objekten höherer Ordnung. Inter- operabilität Hetero- genität Semistrukt. Daten- modelle XML Inhalt der Vorlesung