Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Informationsintegration Mediator/Wrapper-Architektur & Peer-Data-Management 8.11.2004 Felix Naumann.

Ähnliche Präsentationen


Präsentation zum Thema: "Informationsintegration Mediator/Wrapper-Architektur & Peer-Data-Management 8.11.2004 Felix Naumann."—  Präsentation transkript:

1 Informationsintegration Mediator/Wrapper-Architektur & Peer-Data-Management Felix Naumann

2 Felix Naumann, VL Informationsintegration, WS 05/062 Überblick Mediator-Wrapper Architektur Gio Wiederholds Definitionen Konfigurationen Mediatoren Wrapper Peer-Data-Management Architektur Anwendungen

3 Felix Naumann, VL Informationsintegration, WS 05/063 Daten werden zu Informationen

4 Felix Naumann, VL Informationsintegration, WS 05/064 Mediatoren A mediator is a software module that exploits encoded knowledge about certain sets or subsets of data to create information for a higher layer of applications Wiederhold `92 [Wie92] Ein Mediator ist eine Softwarekomponente, die Wissen über bestimmte Daten benutzt, um Informationen für höherwertige Anwendungen zu erzeugen.

5 Felix Naumann, VL Informationsintegration, WS 05/065 Autonome Systeme Mediator-Wrapper Architektur Quelle 1 Quelle 2Quelle 3 Wrapper 1Wrapper 2Wrapper 3 Mediator Anwendung 1Anwendung 2

6 Felix Naumann, VL Informationsintegration, WS 05/066 Autonome Systeme Mediator-Wrapper Architektur Quelle 1 Quelle 2Quelle 3 Wrapper 1Wrapper 2Wrapper 3 Mediator Anwendung 1Anwendung 2

7 Felix Naumann, VL Informationsintegration, WS 05/067 Mediator-Wrapper Architektur Quelle 1 Quelle 2Quelle 3 Wrapper 1Wrapper 2Wrapper 3 Mediator Anwendung 1Anwendung 2 Externe Schemas Föderiertes Schema Export Schemas Komponenten Schemas Lokale Schemas

8 Felix Naumann, VL Informationsintegration, WS 05/068 Mediator-Wrapper Architektur Quelle 1 Quelle 2Quelle 3 Wrapper 1Wrapper 3 Mediator Anwendung 1Anwendung 2 Quelle 1 und Quelle 2 unterscheiden sich nur leicht, z.B. zwei Oracle Datenbanken mit identischen Schemas.

9 Felix Naumann, VL Informationsintegration, WS 05/069 Mediator-Wrapper Architektur Quelle 1 Quelle 2Quelle 3 Wrapper 1Wrapper 2Wrapper 3 Mediator Anwendung 1Anwendung 2 Mediator Mediatoren dienen als Quellen für andere Mediatoren. Stufenweise Added-Value.

10 Felix Naumann, VL Informationsintegration, WS 05/0610 Mediator-Wrapper Architektur Quelle 1 Quelle 2Quelle 3 Wrapper 1Wrapper 2Wrapper 3 Mediator Anwendung 1Anwendung 2 Mediator Anwendung 3 etc.... Anwendungen können auch direkt mit Quellen kommunizieren.

11 Felix Naumann, VL Informationsintegration, WS 05/0611 Mediator-Wrapper Architektur Quelle 1 Quelle 3Quelle 4 Wrapper 1Wrapper 2Wrapper 3 Mediator Anwendung 1Anwendung 2 Mediator Anwendung 3 Quelle 2

12 Felix Naumann, VL Informationsintegration, WS 05/0612 Überblick Mediator-Wrapper Architektur Gio Wiederholds Definitionen Konfigurationen Mediatoren Wrapper Peer-Data-Management Architektur Anwendungen

13 Felix Naumann, VL Informationsintegration, WS 05/0613 Einfache Mediatoren [A mediator] should be small and simple, so that it can be maintained by one expert or, at most, a small and coherent group of experts. Wiederhold `92 Ein Mediator sollte klein und einfach genug sein, um durch einen einzigen oder höchstens eine kleine Gruppe von Experten gewartet werden zu können. D.h.: Einfaches föderiertes Schema, begrenzte Domäne, einfache Schnittstellen Erfahrung: Suchmaschinen ändern wöchentlich ihre Schnittstelle

14 Felix Naumann, VL Informationsintegration, WS 05/0614 Einfache Mediatoren

15 Felix Naumann, VL Informationsintegration, WS 05/0615 Integration mit Mediatoren

16 Felix Naumann, VL Informationsintegration, WS 05/0616 Funktionale Schichten Real-world interface Quellen-Zugriff interface Service interface Nutzer interface Mediation Quellen-spezifischer Code Domänen-spezifischer Code Anwendungs-spezifischer Code Mensch-Maschine Interaktion Datenquelle Wrapper Anwendung Nutzer

17 Felix Naumann, VL Informationsintegration, WS 05/0617 Schnittstellen Mediation Sensoren, Sachbearbeiter Datenquellen Welt SQL, XML Mediator Datenquellen Web Services Anwendung Mediator X-Widgets, HTML, Java Mensch Maschine Datenquelle Wrapper Anwendung Nutzer

18 Felix Naumann, VL Informationsintegration, WS 05/0618 Funktionen der Mediation Erbracht durch Domänen-Experten Suche und Auswahl relevanter Informationsquellen Transformationen zur Konsistenzerhaltung Metadaten zur Verarbeitung Abstraktion zum Verständnis Integration verschiedener Quellen Zusammenfassung zur Präsentation All dies transformiert Daten zu Informationen.

19 Felix Naumann, VL Informationsintegration, WS 05/0619 Mehrwert durch Mediatoren

20 Felix Naumann, VL Informationsintegration, WS 05/0620 Dicke und Dünne Mediatoren

21 Felix Naumann, VL Informationsintegration, WS 05/0621 Überblick Mediator-Wrapper Architektur Gio Wiederholds Definitionen Konfigurationen Mediatoren Wrapper Peer-Data-Management Architektur Anwendungen

22 Felix Naumann, VL Informationsintegration, WS 05/0622 Wrapper Wrapper sind Softwarekomponenten, die die Kommunikation und den Datenfluss zwischen Mediatoren und Datenquellen herstellen. Wrapper sind jeweils spezialisiert auf eine Ausprägung autonomer, heterogener Quellen. Wrapper vermitteln zwischen Mediator und Quelle.

23 Felix Naumann, VL Informationsintegration, WS 05/0623 Wrapper – Aufgaben Lösen Schnittstellenheterogenität technisch SQL, HTML Formulare, http, CORBA,... Mächtigkeit der Anfragesprache Lösen Datenmodellheterogenität Lösen schematische Heterogenität Liefern kanonisches Schema Reduzieren Anzahl der Datenmodelle (mit denen das IIS umgehen muss) Reduzieren Anzahl der Schemata Unterstützen globale Optimierung Kostenmodell Anfragefähigkeiten

24 Felix Naumann, VL Informationsintegration, WS 05/0624 Wrapper – Anforderungen Sollten schnell implementiert werden können (< 1 Woche) Sollten wiederverwendbar sein Lokale Wartung (bei föderierten Systemen) An den Wrappern scheitern viele Projekte! Deshalb Forschung zur schnellen oder sogar automatischen Wrappergenerierung. Wrapperbibliotheken

25 Felix Naumann, VL Informationsintegration, WS 05/0625 Garlic Wrapper Generierung [Gar95] Forschungsprojekt am IBM Almaden Research Center Neu: Optimierung Neu: Kostenmodell Weiterentwicklung zu Produkten DiscoveryLink Information Integrator

26 Felix Naumann, VL Informationsintegration, WS 05/0626 Garlic Wrapper Generierung nach [TS97] Praktische Anforderungen aus [TS97] Start-up Kosten gering (Stunden) Erweiterbarkeit Einfacher Start Später Fähigkeiten der Quellen hinzufügen Flexibilität Möglichst breites Spektrum an Quellen abdecken Neue Quellen stören Architektur nicht. Optimierung Garlic Nicht durch Autoren sondern durch Garlic

27 Felix Naumann, VL Informationsintegration, WS 05/0627 Garlic Wrapper Generierung Vier Grund-Services 1. Modellierung und Zugriff auf die Daten in der Quelle 2. Aufruf von Methoden in der Quelle 3. Mithilfe bei der Anfrageplanung 4. Anfrageausführung

28 Felix Naumann, VL Informationsintegration, WS 05/0628 Garlic Wrapper Generierung Quelle: [TS97]

29 Felix Naumann, VL Informationsintegration, WS 05/0629 Garlic Wrapper Generierung Modellierung und Zugriff auf die Daten Garlic nutzt OO Modell Wrapper stellt Daten als Objekte mit Interface (globales Schema) und Implementierung (lokales Schema) dar. Stellt Identität von Objekten her.

30 Felix Naumann, VL Informationsintegration, WS 05/0630 Garlic Wrapper Generierung Aufruf von Methoden in der Quelle Implizit immer: Get_attr() für jedes Attribut Implizit immer: Set_attr() für jedes nicht-read- only Attribut Um auch Quellen abzudecken, die nur über Methoden zu erreichen sind. Um besondere Fähigkeiten von Quellen auszuschöpfen. Beispiel: display_Image(ImageID)

31 Felix Naumann, VL Informationsintegration, WS 05/0631 Garlic Wrapper Generierung Mithilfe bei der Anfrageplanung (query planning) Garlics Anfrageplanung betrachtet alternative Pläne und sucht den besten heraus. Kostenbasiert Mediator verschickt Teilaufgaben an Wrapper. Wrapper kann Teile davon ablehnen (je nach Fähigkeiten der Quelle). Mediator gleicht aus. Preprocessing Postprocessing Wrapper liefert null oder mehr Teilpläne zurück. Teilpläne werden in Gesamtplan eingebaut.

32 Felix Naumann, VL Informationsintegration, WS 05/0632 Garlic Wrapper Generierung Anfrageausführung (query execution) Mediator produziert Operatorbaum. Wrapper-Teilpläne sind Blätter in dem Baum. Pläne werden in Iteratoren umgewandelt Pipelining

33 Felix Naumann, VL Informationsintegration, WS 05/0633 Beispiel: XML Wrapper für DB2 II nach [JS03] On-line Anfragen gegen XML Daten aus externen Quellen Die Daten sind nicht in DB2 gespeichert Relationale Abstraktion von XML Daten: XML Hierarchie wird gemäss Mapping-Strategie auf virtuelle Tabellen abgebildet XPath zur Extraktion der Attributwerte Anwendungen sehen Tabellen und nicht XML Anfragen an XML Daten mit ganzer SQL Mächtigkeit Aggregation, Sichten, etc. Integration von XML Daten mehrerer Quellen Integration von XML Daten mit relationalen Daten oder andere föderierten Quellen

34 Felix Naumann, VL Informationsintegration, WS 05/0634 Beispiel: XML Wrapper für DB2 Kunden Bestellungen Posten Zahlungen XML Schema KundenBestellungen Posten Zahlungen Relationales Schema (virtuelle Tabellen, nicknames) Shredding

35 Felix Naumann, VL Informationsintegration, WS 05/0635 Beispiel: XML Wrapper für DB2

36 Felix Naumann, VL Informationsintegration, WS 05/0636 Beispiel: XML Wrapper für DB2

37 Felix Naumann, VL Informationsintegration, WS 05/0637 Beispiel: XML Wrapper für DB2 CREATE NICKNAME kunden_NN( name VARCHAR(48) OPTIONS(XPATH './name/text()'), addresse VARCHAR(48) OPTIONS(XPATH './address/text()'), kunden_NN_ID VARCHAR(48) OPTIONS(PRIMARY_KEY 'YES')) FOR SERVER xml_server OPTIONS(XPATH '//customer', FILE_PATH customers.xml'); CREATE NICKNAME order_NN( amount DOUBLE OPTIONS(XPATH './amount/text()'), date VARCHAR(48) OPTIONS(XPATH './date/text()'), order_NN_ID VARCHAR(48) OPTIONS(PRIMARY_KEY 'YES'), customer_NN_FID VARCHAR(48) OPTIONS(FOREIGN_KEY 'CUSTOMER_NN')) FOR SERVER xml_server OPTIONS(XPATH './/order'); CREATE NICKNAME item_NN( nameVARCHAR(48) OPTIONS(XPATH './name/text()'), quantINTEGER OPTIONS(XPATH './quant/text()'), order_NN_FIDVARCHAR(48) OPTIONS(FOREIGN_KEY 'ORDER_NN')) FOR SERVER xml_server OPTIONS(XPATH './/item'); CREATE NICKNAME payment_NN( amount INTEGER OPTIONS(XPATH './amount/text()'), date VARCHAR(48) OPTIONS(XPATH './date/text()'), customer_NN_FID VARCHAR(48) OPTIONS(FOREIGN_KEY 'CUSTOMER_NN')) FOR SERVER xml_server OPTIONS(XPATH './/payment');

38 Felix Naumann, VL Informationsintegration, WS 05/0638 Automatisiertes Wrappen [NJM03] XML Schema Lesen Shredding-Strategie anwenden Volle Normalisierung Eine einzige Universalrelation Etwas dazwischen Optimiert für XQuery Bearbeitung in DB2 Eventl. manuelle Modifikationen CREATE NICKNAMEs schreiben

39 Felix Naumann, VL Informationsintegration, WS 05/0639 Automatisiertes Wrappen

40 Felix Naumann, VL Informationsintegration, WS 05/0640 Firmen, die Mediatoren und Wrapper einsetzen BEA systems CA (Computer Associates) Product: OPAL; Specialty: Screenscraper, extract and integratate output without an API. Enosys: XML-based data integration Genelogic: genomics information in object form DiscoveryLink / Information Integrator MetaMatrix: Enterprise Content Integration, eCommerce infrastructure software to manage the metadata of disparate data repositories and to provide uniform access to these information silos. Nimble Technnology: XML-based data integration From:

41 Felix Naumann, VL Informationsintegration, WS 05/0641 Forschungsprojekte Carnot CoBase COIN Garlic Harvest Information Discovery and Access System Harvest Information Discovery and Access System HERMES Info* Infomaster Information Manifold INFOSLEUTH OBSERVER SIMS SKC Tsimmis

42 Felix Naumann, VL Informationsintegration, WS 05/0642 Überblick Mediator-Wrapper Architektur Gio Wiederholds Definitionen Konfigurationen Mediatoren Wrapper Peer-Data-Management Architektur Anwendungen

43 Felix Naumann, VL Informationsintegration, WS 05/0643 Wdh: Klassifikation von Informationssystemen nach [ÖV91] Verteilung Autonomie Hetero- genität Verteilte, homogene DBS Logisch integrierte und homogene DBS Heterogene, integrierte DBS Heterogene, föderierte DBS Homogene, föderierte DBS (MultiDBMS) Verteilte, heterogene föderierte DBS (V.MDBMS) Verteilte, föderierte DBS Verteilte, heterogene DBS

44 Felix Naumann, VL Informationsintegration, WS 05/0644 Wdh: Erweiterung der Klassifikation nach [ÖV99] Verteilung/Distribution Autonomie Hetero- genität Peer-to-peer Enge Integration Client/server Semi- autonom Isolation PDMS

45 Felix Naumann, VL Informationsintegration, WS 05/0645 PDMS – Idee Idee: Peer Netzwerk (P2P) [HIST03], [HIMT03], [BGK+02] Jeder Peer kann Daten exportieren (= Datenquelle) Sichten auf Daten zur Verfügung stellen (= Wrapper) Anfragen anderer Peers entgegennehmen und weiterleiten (= Mediator) Anfrage stellen Verknüpfungen nicht zwischen lokalen und globalem Schema, sondern zwischen Paaren von Peers.

46 Felix Naumann, VL Informationsintegration, WS 05/0646 Peer-Data-Management Systeme (PDMS) Peer 1 Peer 2 Peer 4 Peer 3 Peer 5 Peers können mehrere Rollen einnehmen: - Datenquelle - Mediator - Wrapper - Anfrager ? einfaches Mapping

47 Felix Naumann, VL Informationsintegration, WS 05/0647 Peer-Data-Management Systeme (PDMS) Peer 1 Peer 2 Peer 4 Peer 3 Peer 5 Peers können selbst wiederum integrierte Informationssysteme sein.

48 Felix Naumann, VL Informationsintegration, WS 05/0648 PDMS Architektur (Piazza) Overlay Netzwerk aus Peers, verbunden über Internet Relationales oder XML Datenmodell Jeder Peer kann bereitstellen: Daten (materialisiert) Ein (oder mehr) Schemas Mappings Jeder Peer kann anbieten Anfragebearbeitung (für eigenes oder fremdes Schema) Materialisierung Metadaten zur Koordination

49 Felix Naumann, VL Informationsintegration, WS 05/0649 PDMS vs. P2P file sharing P2P Nur ganze Dateien (niedrige Granularität) Einfachste Anfragen Dateinamen Unvollständige Anfrageergebnisse Einfaches Schema Ausnahme: z.B. Napster für Musikdateien Hoch dynamisch Millionen Peers Datenübertragung direkt PDMS Objekte (hohe Granularität) Komplexe und Content- management Anfragen Anfragesprache (SQL, etc.) Suche in Dateien: Nach Wörtern, Mustern… Vollständige Anfrageergebnisse (zumindest erwartet) Schema Annahme: Kontrollierte Dynamik Zig peers Datenübertragung entlang des Mapping-Pfads

50 Felix Naumann, VL Informationsintegration, WS 05/0650 PDMS Anwendungen Gesundheitsinformationssystem Krankenhausdaten auf vielen Systemen verteilt Ärzte wollen manche Daten verbreiten, andere nicht. Content-management-artige Suche ist wichtig. Verschiedenste und komplexe Schemata Mehrwert (für Patienten) durch Teilen der Daten Genomdaten Forscher haben den Willen (und die Pflicht), Daten weltweit zu veröffentlichen. Komplexe Schemata und komplexe Anfragen Bekannte Zusammenhänge zwischen den Daten Bildung eines globalen Schemas nicht immer einfach Automobil-Industrie Katastrophen-Management

51 Felix Naumann, VL Informationsintegration, WS 05/0651 Piazza – Beispiel

52 Felix Naumann, VL Informationsintegration, WS 05/0652 PDMS – Diskussion Vorteile Nutzer müssen nur eigenes Schema kennen. Dennoch sind alle Daten (über transitive Hülle der Mappings) verfügbar Neue Schemas können leicht und inkrementell hinzugefügt werden. Mapping nur zum ähnlichsten Schema nötig. Nachteile/Probleme Mappings zwischen Schemas nötig Aber: Mappings automatisch erstellen (Schema Matching) Mapping Komposition Effizienz (bei vielen Zwischenstationen) Effiziente Datenverteilung Read-only oder Updates? Außerdem: Verlust der Semantik Verlust an Informationsqualität, z.B. Vollständigkeit

53 Felix Naumann, VL Informationsintegration, WS 05/0653 Semantik in PDMS [Len04] Peer 1 Peer 3 Peer 2 Peer 4 Elternteil MutterVater disjunkt, vollständig Mann Frau Person e v v e1e1 e2e2 v e Um diese Aussage zu treffen muss man Semantik des Peer 1 Schemas kennen!

54 Felix Naumann, VL Informationsintegration, WS 05/0654 Qualität in PDMS Ähnliche Probleme wie für zentral integrierte Systeme, jedoch potenziert. Schleichender Informationsverlust über mehrere Mappings Projektionen Selektionen

55 Felix Naumann, VL Informationsintegration, WS 05/0655 Unvollständige Mappings Peer 3 Peer 2Peer 4 Peer 3 Peer 1 PartDescr.Make PartDescr.Make PartMake Anfrage PartDescr.Make PartDescr.Make Problem: Kumulierte Projektionen in Schemata in Mappings

56 Felix Naumann, VL Informationsintegration, WS 05/0656 Selektive Mappings Peer 2 (Ford) Peer 1 (ATU) PartDescr.Make PartDescr.Make Anfrage = Ford Peer 3 (Autohaus) PartDescr.Make = Ford Peer 4 (Opel) PartDescr.Make (= Opel) Problem: Kumulierte Selektion implizit in Schemata explizit in Mappings Punkt-Selektionen und Bereichs-Selektionen

57 Felix Naumann, VL Informationsintegration, WS 05/0657 Literatur Mediator Wrapper Das erste paper: [Wie92] Mediators in the Architecture of Future Information Systems, Gio Wiederhold, IEEE Computer Journal, 25(3), 38-49, 1992 Weitere [Gar95] Michael J. Carey, Laura M. Haas, Peter M. Schwarz, Manish Arya, William F. Cody, Ronald Fagin, Myron Flickner, Allen Luniewski, Wayne Niblack, Dragutin Petkovic, Joachim Thomas II, John H. Williams, Edward L. Wimmers: Towards Heterogeneous Multimedia Information Systems: The Garlic Approach. RIDE-DOM 1995: [JS03] Querying XML data sources in DB2: the XML Wrapper, Vanja Josifovski and Peter Schwarz, ICDE conference, Bangalore, India, 2003 [NJM03] Super-Fast XML Wrapper Generation in DB2 (demo), Felix Naumann, Vanja Josifivski, and Sabine Massmann, Proceedings of the International Conference on Data Engineering (ICDE 03), Bangalore, India, [TS97] Dont Scrap It, Wrap It! A Wrapper Architecture for Legacy Data Sources, Mary Tork Roth and Peter Schwarz, VLDB Conference 1997 Athens, Greece, PDMS [BGK+02] Philip A. Bernstein, Fausto Giunchiglia, Anastasios Kementsietsidis, John Mylopoulos, Luciano Serafini, Ilya Zaihrayeu: Data Management for Peer-to-Peer Computing : A Vision. WebDB 2002: [ÖV91] & [ÖV99] Principles of Distributed Database Systems. M. Tamer Özsu, Patrick Valduriez, Prentice Hall, 1991/1999. [HIST03] Alon Y. Halevy, Zachary G. Ives, Dan Suciu, Igor Tatarinov. Schema Mediation in Peer Data Management Systems, ICDE conference 2003 [HIMT03] Alon Y. Halevy, Zachary G. Ives, Peter Mork, Igor Tatarinov. Peer Data Management Systems: Infrastructure for the Semantic Web. WWW Conference, [NOTZ03] W.S.Ng, B.C. Ooi, K.L. Tan und A. Zhou: PeerDB: A P2P-based System for Distributed Data Sharing. ICDE 2003 [Len04] Maurizio Lenzerini: Quality-aware data integration in peer-to-peer systems. Invited talk at IQIS workshop, Paris, 2004.


Herunterladen ppt "Informationsintegration Mediator/Wrapper-Architektur & Peer-Data-Management 8.11.2004 Felix Naumann."

Ähnliche Präsentationen


Google-Anzeigen