Informationsintegration Architekturen



Ähnliche Dokumente
Datenintegration & Datenherkunft Architekturen

Informationsintegration Architekturen Felix Naumann

Kapitel 3: Eigenschaften von Integrationssystemen. Einordnung von Integrationssystemen bzgl. Kriterien zur Beschreibung von Integrationssystemen

Informationsintegration

Informationsintegration Architekturen Felix Naumann

Seminar Informationsintegration und Informationsqualität. Dragan Sunjka. 30. Juni 2006

Ein Beispiel. Ein Unternehmen will Internettechnologien im Rahmen des E- Business nutzen Welche Geschäftsprozesse?

Informationsintegration I Einführung

Web Data Management Systeme

Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96

Definition Informationssystem

Peer Data Management mit System P

WS 2002/03. Prof. Dr. Rainer Manthey. Institut für Informatik III Universität Bonn. Informationssysteme. Kapitel 1. Informationssysteme

Web Services stellen eine Integrationsarchitektur dar, die die Kommunikation zwischen verschiedenen Anwendungen

Carl-Christian Kanne. Einführung in Datenbanken p.1/513

Allgemeines zu Datenbanken

Albert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen

Datenbanken. Prof. Dr. Bernhard Schiefer.

Database Exchange Manager. Infinqa IT Solutions GmbH, Berlin Stralauer Allee Berlin Tel.:+49(0) Fax.:+49(0)

Software Engineering. Zur Architektur der Applikation Data Repository. Franz-Josef Elmer, Universität Basel, HS 2015

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

ORACLE Business Components for Java (BC4J) Marco Grawunder

Der beste Plan für Office 365 Archivierung.

Autorisierung. Sicherheit und Zugriffskontrolle & Erstellen einer Berechtigungskomponente

Workflow, Business Process Management, 4.Teil

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Integration verteilter Datenquellen in GIS-Datenbanken

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

Weiterentwicklung digitaler Bibliothekssysteme zu OpenArchives-Systemen

Business Application Framework für SharePoint Der Kern aller PSC-Lösungen

Software zur Anbindung Ihrer Maschinen über Wireless- (GPRS/EDGE) und Breitbandanbindungen (DSL, LAN)

Semantische Infomationsintegration à la carte?

e-business - Patterns Stefan Brauch (sb058) -- Julian Stoltmann (js057)

Schritt 1: Verwenden von Excel zum Erstellen von Verbindungen mit SQL Server-Daten

Lizenzen auschecken. Was ist zu tun?

Die Entwicklung eines Glossars (oder eines kontrollierten Vokabulars) für ein Unternehmen geht üblicherweise in 3 Schritten vor sich:

Best Practice: Integration von RedDot mit Livelink DM im Intranet/Extranet

Semantic Web Technologies I! Lehrveranstaltung im WS10/11! Dr. Andreas Harth! Dr. Sebastian Rudolph!

Ein Ausflug zu ACCESS

Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge

Schritt 1: Verwenden von Excel zum Erstellen von Verbindungen zu SQL Server Analysis Services-Daten

Architekturen. Von der DB basierten zur Multi-Tier Anwendung. DB/CRM (C) J.M.Joller

Grundlagen von Python

Arbeitsgruppe Multimedia DLmeta in echten Anwendungen

Java Enterprise Architekturen Willkommen in der Realität

Information-Design-Tool

System Center Essentials 2010

Dokumentenmanagement als Dienst (DMS as a Service, DaaS)

Tipps und Tricks zu Netop Vision und Vision Pro

SDD System Design Document

SE2-10-Entwurfsmuster-2 15

Datenmanagement in Android-Apps. 16. Mai 2013

RESTful Web. Representational State Transfer

Klassenentwurf. Wie schreiben wir Klassen, die leicht zu verstehen, wartbar und wiederverwendbar sind? Objektorientierte Programmierung mit Java

3. Stored Procedures und PL/SQL

Informationsintegration I Integrationssysteme in der Forschung 2

OERA OpenEdge Reference Architecture. Mike Fechner PUG Infotag 19. Mai 05 Frankfurt

Grundzüge und Vorteile von XML-Datenbanken am Beispiel der Oracle XML DB

Handbuch zur Anlage von Turnieren auf der NÖEV-Homepage

Datenbanken und Informationssysteme

Software Engineering Klassendiagramme Assoziationen

2 Die Terminaldienste Prüfungsanforderungen von Microsoft: Lernziele:

Anforderungen an die HIS

Lizenzierung von System Center 2012

Reporting Services und SharePoint 2010 Teil 1

Content Management System mit INTREXX 2002.

Rechtssichere -Archivierung

Der Cloud Point of Purchase. EuroCloud Conference, 18. Mai 2011 (Christoph Streit, CTO & Co-Founder ScaleUp)"

White Paper. Konfiguration und Verwendung des Auditlogs Winter Release

Eigenen WSUS Server mit dem UNI WSUS Server Synchronisieren

Gesicherte Prozeduren

ONET: FT-NIR-Netzwerke mit zentraler Administration & Datenspeicherung. ONET Server

Windows Small Business Server (SBS) 2008

Einteilung von Datenbanken

IVS Arbeitsgruppe Softwaretechnik Abschnitt Management komplexer Integrationslösungen

Whitepaper. Produkt: combit Relationship Manager. Einbindung externer FiBu-/Warenwirtschaftsdaten. combit GmbH Untere Laube Konstanz

10 größten SLA Irrtümer. Seminar: 8663 Service-Level-Agreement. Qualified for the Job

ACDSee Pro 2. ACDSee Pro 2 Tutorials: Übertragung von Fotos (+ Datenbank) auf einen anderen Computer. Über Metadaten und die Datenbank

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

Vermeiden Sie es sich bei einer deutlich erfahreneren Person "dranzuhängen", Sie sind persönlich verantwortlich für Ihren Lernerfolg.

Von ODBC zu OLE DB. Neue Möglichkeiten der Datenintegration. Harald Gladytz, Team Vertrieb ESRI Niederlassung Leipzig

Firewalls für Lexware Info Service konfigurieren

Acht Gute Gründe für Integration und einen Content Backbone

Grundlagen von Datenbanken

8.4 Überblick und Vergleich weiterer ERP-Systeme. G Oracle Applications 11 G PeopleSoft 7 G J.D. Edwards One World G BaanERP

Content Management Datenbanken, Schnittstellen

Einführung. Kapitel 1 2 / 508

IBM SPSS Data Access Pack Installationsanweisung für Windows

5. Programmierschnittstellen für XML

Neue Funktionen in Innovator 11 R5

Fassade. Objektbasiertes Strukturmuster. C. Restorff & M. Rohlfing

Konfigurationsanleitung Access Control Lists (ACL) Funkwerk. Copyright Stefan Dahler Oktober 2008 Version 1.0.

Transkript:

Informationsintegration Architekturen 3.5.2007 Felix Naumann Überblick 2 Überblick über Informationssysteme Klassifikation Weitere Kriterien Architekturen 3 Schichten Architektur 4 Schichten Architektur 5 Schichten Architektur Mediator-Wrapper Architektur Gio Wiederholds Definitionen Konfigurationen Mediatoren Wrapper Peer-Data-Management Architektur Anwendungen

Klassifikation von Informationssystemen nach [ÖV99] 3 Orthogonale Dimensionen Verteilung Autonomie Heterogenität Orthogonal in der Lösung der jeweiligen Probleme Nicht unbedingt orthogonal in ihrer Ursache Klassifikation von Informationssystemen nach [ÖV91] 4 Verteilte, homogene DBS Verteilung Verteilte, föderierte DBS Verteilte, heterogene DBS Logisch integrierte und homogene DBS Heterogenität Heterogene, integrierte DBS Heterogene, föderierte DBS Verteilte, heterogene föderierte DBS Autonomie Homogene, föderierte DBS

Erweiterung der Klassifikation nach [ÖV99] 5 Verteilung/Distribution Peer-to-peer Client/Server z.b. A2,D1,H0 Autonomie Enge Integration Heterogenität Semiautonom Isolation Aut0, Dist0, Het0 6 Zwar nicht verteilte, aber dennoch mehrere DBMS. Logisch integrierte, homogene Datenbanken Composite System Nicht üblich Höchstens für Shared-Everything Multiprozessor Systeme

Aut0, Dist0, Het1 7 Heterogenes, integriertes DBS Mehrere DBMS, einheitliche Sicht für Nutzer Anwendungsbeispiel Integrierter Zugriff auf mehrere verschiedene DBMS (hierarchisch, relational,...) auf einer Maschine. Keine Autonomie und keine Verteilung Heterogenität Aut0, Dist1, Het0 8 Client/Server Verteilung Physische Verteilung der Daten Einheitliche Sicht für Nutzer Server Datenmanagement, Optimierung, Transaktionen Client Anwendung, GUI, Cache Management Kommunikation mittels SQL Auch Multiple Client / Single Server Multiple Client / Multiple Server

Aut0, Dist2, Het0 9 P2P Verteiltes Informationssystem Wie A0,D1,H0, aber keine Unterscheidung zwischen Client und Server PDMS ohne Probleme der Heterogenität und Verteilung Aut1, Dist0, Het1 11 Heterogene, föderierte DBMS Z.B. Katalog DBMS und Image DBMS auf einer Maschine, die gemeinsamen Zugriff erlauben. Typisches Szenario Und Verteilte, heterogene, föderierte DBMS Verteilung birgt nur wenige neue Probleme

Aut2, Dist0, Het1 13 Wie A1, D0, H1 Noch realistischer Keine Interoperation untereinander möglich Integration nur in neuer, integrierender Komponente. Z.B. DBMS und WWW Server auf einer Maschine Nicht zur Interoperation entwickelt DBMS spricht kein http, WWW spricht kein SQL Aut2, Dist1/2, Het1 14 Verteilte MDBMS Schwierigster Fall Wie A2,D0,H1 Verteilungsprobleme eher technisch Auch: Mediator-basierte Systeme

Taxonomie nach [SL90] 15 DBMS Taxonomie nach der Autonomie Dimension Zentralisiertes DBMS Einfaches, verteiltes DBMS Verteiltes DBMS Multidatenbanksystem Lokale und nicht-lokale Nutzer werden nicht unterschieden Nutzer muss selbst integrieren und administrieren. Nicht-föderierte DBS Lose Kopplung Föderierte DBS (FDBS) Enge Kopplung Nur ein föderiertes Einfache Föderation Mehrfache Föderation Überblick 16 Überblick über Informationssysteme Klassifikation Weitere Kriterien Architekturen 3 Schichten Architektur 4 Schichten Architektur 5 Schichten Architektur Mediator-Wrapper Architektur Gio Wiederholds Definitionen Konfigurationen Mediatoren Wrapper Peer-Data-Management Architektur Anwendungen

Kriterien föderierter Informationssysteme nach [BKLW99] 17 Weitere (nicht-orthogonale) Kriterien Strukturierung der Komponenten Enge und lose Kopplung Datenmodell Art der semantischen Integration Transparenz Anfrage-Paradigma Bottom-up oder Top-down Entwurf Virtuell oder materialisiert Read-only oder read-&-write Gelten zumeist auch für MDBMS 1. Strukturierung der Komponenten 18 Strukturiert Festes, festes Format Beispiel: Datenbanken Semi-strukturiert Struktur vorhanden, aber nur teilweise bekannt Daten sind mit Semantik gelabelt Beispiel: XML Dokumente (und OEM Daten) Unstrukturiert Keine Struktur Beispiel: Textuelle Daten, Abstracts

2. Enge und lose Kopplung 19 Enge Kopplung Festes, integriertes/föderiertes Modelliert mit Korrespondenzen Feste Anfragesprache Lose Kopplung Kein festes Nutzer müssen Semantik der Quellen kennen Integrierte Sichten helfen Feste Anfragesprache Multidatabase query language (MDBQL) [LMR90] SQL 3. Datenmodell 20 Kanonisches Datenmodell (im integrierten System) Objektorientiertes Modell Relationales Modell Hierarchisches Modell Semistrukturiertes Modell XML Datenmodell Verlustfreie Integration ist schwierig Beispiel: OO to Relational Mapping Datenquelle: OO, kanonisches Datenmodell: Relational Schlüssel erfinden Nicht-Atomare Attribute müssen untergebracht werden.» struct, set, bag, list, array Semantische Beziehungen gehen verloren (Schlüssel/Fremdschlüssel)

4. Art der Semantischen Integration 21 Vereinigung Simple Konkatenation von Objekten Anreicherung Mit Metadaten Fusion Objektidentifizierung Re-Strukturierung Komplementierung Mehrere Objekte werden zu einem integriert Aggregation Konfliktlösung 5. Transparenz 22 Speicherorttransparenz Physischer Ort der Daten unbekannt IP, Quellenname, DB Name transparenz Nutzer sehen nur integriertes Strukturelle Konflikte werden verborgen Sprachtransparenz Nutzer muss nur eine Sprache beherrschen Integriertes System übersetzt.

6. Anfrage-Paradigma 23 Strukturierte Anfragen Struktur ist Nutzern bekannt. Struktur kann in Anfrage verwendet werden. Z.B. DBMS + SQL Canned queries Vordefinierte Anfragen (parametrisiert) Such-Anfragen Struktur unbekannt Information Retrieval Z.B. Suchmaschinen auf Texten Browsing Kein Such-Interface WWW 7. Bottom-up oder Top-down Entwurf 24 Beim Entwurf des integrierten Systems Bottom-up: Ausgelöst durch den Bedarf mehrere Quellen integriert anzufragen integration ist wichtig. Änderungen schwierig, da neu integriert werden muss. Typisches Szenario: Data Warehouse Top-down Ausgelöst durch globalen Informationsbedarf Vorteilhaft bei labilen Quellen integration nicht nötig, bzw. leichter Typisches Szenario: Virtuelle Integration

7. Bottom-up Entwicklung 25 Quelle: [SL90] 7. Top-down Entwicklung 26 Quelle: [SL90]

8. Virtuell oder materialisiert 27 Virtuell Anfragen werden in Teilanfragen übersetzt. Daten werden nur bei Bedarf übertragen und nur temporär gespeichert. Materialisiert Daten werden transformiert und lokal gespeichert. Anfragen werden direkt gegen die materialisierten Daten gestellt. 9. Read-only oder read-&-write 28 Read-only die beliebtere Variante Write (insert & update) schwierig Autonomie! Viele Interfaces erlauben kein Schreiben Update durch Sichten ist schwierig Globale Transaktionen (komplexe Protokolle) Bei Komplementierung: Welche Quelle?

Überblick 29 Überblick über Informationssysteme Klassifikation Weitere Kriterien Architekturen 3 Schichten Architektur 4 Schichten Architektur 5 Schichten Architektur Mediator-Wrapper Architektur Gio Wiederholds Definitionen Konfigurationen Mediatoren Wrapper Peer-Data-Management Architektur Anwendungen 3-Schichten Architektur 30 ANSI/SPARC 3-Schichten Architektur für zentralisierte DBMS Externes 1... Externes N Konzeptionelles Internes

Wdh: Das Schichtenmodell 31 Interne (physische) Sicht Speichermedium (Tape, Festplatte) Speicherort (Zylinder, Block) Konzeptionelle (logische) Sicht Unabhängig von physischer Sicht Definiert durch Datenmodell Stabiler Bezugspunkt für interne und externe Sichten Externe (logische) Sicht Anwendungsprogramme Nur auf die relevanten Daten Enthält Aggregationen und Transformationen 3-Schichten Architektur 32 Anwendungen Externes 1... Externes N DBMS Konzeptionelles Internes

4-Schichten Architektur 33 Für verteilte DBMS Neu: Trennung lokales vs. globales konzeptionelles Globales Konzeptionelles ist integriert aus den lokalen konzeptionellen s. Lokales und globales konzept. kann gleich sein. Externes 1 Lokales konzept. Internes... Konzeptionelles...... Externes N Lokales konzept. Internes 4-Schichten Architektur 34 Anwendungen Externes 1... Externes N Vert. DBMS Konzeptionelles Lokale DBMS Lokales konzept.... Lokales konzept. Internes... Internes

Import-/Export--Architektur nach [HM85] 35 = lokales konzeptionelles Idee: Nur Teilmenge des lokalen konzeptionellen s wird der Föderation zur Verfügung gestellt. Idee: Nur Teilmengen der Exportschemas sollen verwendet werden. 4-Schichten Architektur 36 Auch: Multidatenbankarchitektur [LMR90] Voraussetzung Nutzer kennen die jeweiligen s Multidatenbanksprache Lokales und globales konzept. kann gleich sein. Lose Kopplung = physisches Externes 1 Export- Lokales konzept. Internes......... Externes N Export- Lokales konzept. Internes

4-Schichten Architektur 37 Anwendungen (müssen selbst integrieren) Externes 1... Externes N Export- Export- Lokale DBMS Lokales konzept.... Lokales konzept. Internes... Internes 5-Schichten Architektur [SL90] 38 Neu: Interne s werden nicht mehr betrachtet. Exportschemas Integriertes, föderiertes Terminologie Komponentenschema = lokales konzept. Föderiertes = globales konzept. Externes 1 Exportschema Lokales... Externes N Föderiertes...... Exportschema Komponentenschema Komponentenschema Lokales

5-Schichten Architektur [SL90] 39 Anwendungen Externes 1... Externes N Föderiertes Föd. DBMS Exportschema Exportschema Lokale DBMS... Komponentenschema Komponentenschema Lokales internes... Lokales internes 5-Schichten Architektur [SL90] 40 Lokale s Konzeptionell Komponentenschemas Kanonisches Datenmodell Fügt fehlende Semantik hinzu. Übergang durch Mappings. Exportschemas Teilmenge des Komponentenschemas Verwaltet Zugangsberechtigungen

5-Schichten Architektur [SL90] 41 Föderiertes Integriert aus den Exportschemas Kennt Datenverteilung Andere Namen: Import Globales Enterprise Unified Externes Föderiertes kann sehr groß sein Vereinfachung im Exportschema Evolution leichter Zusätzliche Integritätsbedingungen Zugangskontrollen 5-Schichten Architektur [SL90] 42 Mischformen Einige Schichten nicht immer nötig. Z.B. wenn lokales und Komponentenschema gleich sind. Z.B. wenn komplettes Komponentenschema exportiert werden soll. Ein Komponentenschema kann mehrere Exportschemas haben. Große FDBS können mehrere föderierte s haben. Föderation! Nur semi-autonom Lokale DBMS müssen bereits kanonisches Datenmodell unterstützen.

Vergleich der Architekturen [Con97] 43 Import/Export Lose Kopplung Integration durch Nutzer und globalen Admin Zugriff über lokales System Keine globale DBMS-Funktionalität 4-Schichten Lose Kopplung Integration durch Nutzer Zugriff über globale Schnittstellen DBMS-Funktionalität nur durch Multidatenbanksprachen 5-Schichten Lose und enge Kopplung Integration durch globalen Administrator Zugriff durch globales System DBMS-Funktionalität im globalen System Zusammenfassung 44 1. 2. Mediator-basierte Systeme

Überblick 45 Überblick über Informationssysteme Klassifikation Weitere Kriterien Architekturen 3 Schichten Architektur 4 Schichten Architektur 5 Schichten Architektur Mediator-Wrapper Architektur Gio Wiederholds Definitionen Konfigurationen Mediatoren Wrapper Peer-Data-Management Architektur Anwendungen Daten werden zu Informationen 46

Mediatoren 47 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. Überblick 48 Überblick über Informationssysteme Klassifikation Weitere Kriterien Architekturen 3 Schichten Architektur 4 Schichten Architektur 5 Schichten Architektur Mediator-Wrapper Architektur Gio Wiederholds Definitionen Konfigurationen Mediatoren Wrapper Peer-Data-Management Architektur Anwendungen

Die Architektur 49 Mediator Externes... Externes Globales (Mediator-) Wrapper Wrapperschema... Wrapper Wrapperschema Datenquelle Lokales (Export-) Datenquelle Lokales (Export-) Mediator-Wrapper Architektur 50 Anwendung 1 Anwendung 2 Mediator Autonome Systeme Wrapper 1 Wrapper 2 Wrapper 3 Quelle 1 Quelle 2 Quelle 3

Mediator-Wrapper Architektur 51 Anwendung 1 Anwendung 2 Mediator Autonome Systeme Wrapper 1 Wrapper 2 Wrapper 3 Quelle 1 Quelle 2 Quelle 3 Mediator-Wrapper Architektur 52 Anwendung 1 Anwendung 2 Mediator Wrapper 1 Wrapper 2 Wrapper 3 Quelle 1 Quelle 2 Quelle 3 Externe s Föderiertes Export s Komponenten s Lokale s

Mediator-Wrapper Architektur 53 Anwendung 1 Anwendung 2 Mediator Wrapper 1 Wrapper 3 Quelle 1 Quelle 2 Quelle 3 Quelle 1 und Quelle 2 unterscheiden sich nur leicht, z.b. zwei Oracle Datenbanken mit identischen s. Mediator-Wrapper Architektur 54 Anwendung 1 Anwendung 2 Mediator Mediator Wrapper 1 Wrapper 2 Wrapper 3 Quelle 1 Quelle 2 Quelle 3 Mediatoren dienen als Quellen für andere Mediatoren. Stufenweise Added-Value.

Mediator-Wrapper Architektur 55 Anwendung 1 Anwendung 2 Anwendung 3 Mediator Mediator Wrapper 1 Wrapper 2 Wrapper 3 Quelle 1 Quelle 2 Quelle 3 etc... Anwendungen können auch direkt mit Quellen kommunizieren. Mediator-Wrapper Architektur 56 Anwendung 1 Anwendung 2 Anwendung 3 Mediator Mediator Wrapper 1 Wrapper 2 Wrapper 3 Quelle 1 Quelle 2 Quelle 3 Quelle 4

Überblick 57 Überblick über Informationssysteme Klassifikation Weitere Kriterien Architekturen 3 Schichten Architektur 4 Schichten Architektur 5 Schichten Architektur Mediator-Wrapper Architektur Gio Wiederholds Definitionen Konfigurationen Mediatoren Wrapper Peer-Data-Management Architektur Anwendungen Einfache Mediatoren 58 [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, begrenzte Domäne, einfache Schnittstellen Erfahrung: Suchmaschinen ändern wöchentlich ihre Schnittstelle

Einfache Mediatoren 59 Integration mit Mediatoren 60

Funktionale Schichten 61 Nutzer interface Service interface Quellen-Zugriff interface Real-world interface Nutzer Anwendung Mediation Wrapper Datenquelle Mensch-Maschine Interaktion Anwendungs-spezifischer Code Domänen-spezifischer Code Quellen-spezifischer Code Schnittstellen 62 X-Widgets, HTML, Java Web Services SQL, XML Sensoren, Sachbearbeiter Nutzer Anwendung Mediation Wrapper Datenquelle Mensch Maschine Anwendung Mediator Mediator Datenquellen Datenquellen Welt

Funktionen der Mediation 63 Erbracht durch Domänen-Experten Suche und Auswahl relevanter Informationsquellen Source selection Transformationen zur Konsistenzerhaltung Metadaten zur Verarbeitung Abstraktion zum Verständnis Integration verschiedener Quellen Zusammenfassung zur Präsentation All dies transformiert Daten zu Informationen. Mehrwert durch Mediatoren 64

Dicke und Dünne Mediatoren 65 Zu dünn Geringer Mehrwert Serviceumfang Zu dick Schlecht komponierbar Zu schmal Wenig Nutzer Genau richtig Zu breit Schwer wartbar Diskursbereich Überblick 66 Überblick über Informationssysteme Klassifikation Weitere Kriterien Architekturen 3 Schichten Architektur 4 Schichten Architektur 5 Schichten Architektur Mediator-Wrapper Architektur Gio Wiederholds Definitionen Konfigurationen Mediatoren Wrapper Peer-Data-Management Architektur Anwendungen

Wrapper 67 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. Wrapper Aufgaben 68 Lösen Schnittstellenheterogenität technisch SQL, HTML Formulare, http, CORBA,... Mächtigkeit der Anfragesprache Lösen Datenmodellheterogenität Lösen schematische Heterogenität Liefern globales Reduzieren Anzahl der Datenmodelle (mit denen das IIS umgehen muss) Reduzieren Anzahl der ta Unterstützen globale Optimierung Kostenmodell Anfragefähigkeiten

Wrapper Anforderungen 69 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 Garlic Wrapper Generierung nach [TS97] 71 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 Nicht durch Autoren sondern durch Garlic

Garlic Wrapper Generierung 72 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 Garlic Wrapper Generierung 73 Quelle: [TS97]

Garlic Wrapper Generierung 74 Modellierung und Zugriff auf die Daten Garlic nutzt OO Modell Wrapper stellt Daten als Objekte mit Interface (globales ) und Implementierung (lokales ) dar. Stellt Identität von Objekten her. Garlic Wrapper Generierung 75 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)

Garlic Wrapper Generierung 76 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. Garlic Wrapper Generierung 77 Anfrageausführung (query execution) Mediator produziert Operatorbaum. Wrapper-Teilpläne sind Blätter in dem Baum. Pläne werden in Iteratoren umgewandelt Pipelining

Beispiel: XML Wrapper für DB2 79 Kunden Posten Bestellungen Zahlungen XML Posten Bestellungen Shredding Relationales (virtuelle Tabellen, nicknames) Kunden Zahlungen Beispiel: XML Wrapper für DB2 82 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( CREATE NICKNAME payment_nn( name VARCHAR(48) OPTIONS(XPATH './name/text()'), amount INTEGER OPTIONS(XPATH './amount/text()'), quant INTEGER OPTIONS(XPATH './quant/text()'), date VARCHAR(48) OPTIONS(XPATH './date/text()'), order_nn_fid VARCHAR(48) OPTIONS(FOREIGN_KEY 'ORDER_NN')) FOR SERVER xml_server OPTIONS(XPATH './/item'); customer_nn_fid VARCHAR(48) OPTIONS(FOREIGN_KEY 'CUSTOMER_NN')) FOR SERVER xml_server OPTIONS(XPATH './/payment');

Firmen, die Mediatoren und Wrapper einsetzen 85 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: http://www-db.stanford.edu/lic/companies.html Forschungsprojekte 86 Carnot CoBase COIN Garlic Harvest Information Discovery and Access System HERMES Info* Infomaster Information Manifold INFOSLEUTH OBSERVER SIMS SKC Tsimmis

Überblick 87 Überblick über Informationssysteme Klassifikation Weitere Kriterien Architekturen 3 Schichten Architektur 4 Schichten Architektur 5 Schichten Architektur Mediator-Wrapper Architektur Gio Wiederholds Definitionen Konfigurationen Mediatoren Wrapper Peer-Data-Management Architektur Anwendungen Wdh: Klassifikation von Informationssystemen nach [ÖV91] 88 Verteilte, homogene DBS Verteilung Verteilte, föderierte DBS Verteilte, heterogene DBS Verteilte, heterogene föderierte DBS (V.MDBMS) Logisch integrierte und homogene DBS Heterogenität Heterogene, integrierte DBS Heterogene, föderierte DBS Autonomie Homogene, föderierte DBS (MultiDBMS)

Wdh: Erweiterung der Klassifikation nach [ÖV99] 89 Peer-to-peer Verteilung/Distribution PDMS Client/server Autonomie Enge Integration Heterogenität Semiautonom Isolation PDMS Idee 90 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, sondern zwischen Paaren von Peers.

Peer-Data-Management Systeme (PDMS) 91 einfaches Mapping Peer 1 Peer 3 Peer 5 Peer 2 Peer 4? Peers können mehrere Rollen einnehmen: - Datenquelle - Mediator - Wrapper - Anfrager Peer-Data-Management Systeme (PDMS) 92 Peer 1 Peer 3 Peer 5 Peer 4 Peer 2 Peers können selbst wiederum integrierte Informationssysteme sein.

PDMS Architektur (Piazza) 93 Overlay Netzwerk aus Peers, verbunden über Internet Relationales oder XML Datenmodell Jeder Peer kann bereitstellen: Daten (materialisiert) Ein (oder mehr) s Mappings Jeder Peer kann anbieten Anfragebearbeitung (für eigenes oder fremdes ) Materialisierung Metadaten zur Koordination PDMS vs. P2P Dateiaustausch 94 P2P 1. Nur ganze Dateien (niedrige Granularität) 2. Einfachste Anfragen Dateinamen, Keywords 3. Unvollständige Anfrageergebnisse 4. Einfaches 5. Hoch dynamisch 6. Millionen Peers 7. Datenübertragung direkt PDMS 1. Objekte (hohe Granularität) 2. Komplexe Anfragen Anfragesprache (SQL, etc.) 3. Vollständige Anfrageergebnisse (zumindest erwartet) 4. 5. Kontrollierte Dynamik 6. Zig peers 7. Datenübertragung entlang des Mapping-Pfads

PDMS vs. FDBMS 95 Vorteile Nutzer/Anwendungen müssen nur das eigene kennen. Alle Daten sind erreichbar (über die transitive Hülle der Mappings). Neue ta und Peers können leicht hinzugefügt werden (inkrementell). Mappings nur zu ähnlichsten ta Nachteile / Probleme Mapping-Erstellung ist schwierig. Mapping Komposition ist schwierig. Viele Mappingschritte durch das Netzwerk: Effizienz Skalierbarkeit Datenqualität Effiziente Platzierung von Daten? Updates? PDMS Anwendungen 96 Gesundheitsinformationssystem Krankenhausdaten auf vielen Systemen verteilt Ärzte wollen manche Daten verbreiten, andere nicht. Content-management-artige Suche ist wichtig. Verschiedenste und komplexe ta Mehrwert (für Patienten) durch Teilen der Daten Genomdaten Forscher haben den Willen (und die Pflicht), Daten weltweit zu veröffentlichen. Komplexe ta und komplexe Anfragen Bekannte Zusammenhänge zwischen den Daten Bildung eines globalen s nicht immer einfach Automobil-Industrie Katastrophen-Management

Piazza Beispiel 97 97 GaV und LaV Mappings 98 Anfrage P 1 Kurs kurs_id titel fak univ fach doz GaV M 1 2 Kurs kurs_id titel Lehrt prof kurs_id sem eval fak P 2 M 1 2 P2.Kurs(kurs_id, titel), P2.Lehrt(prof, kurs_id, sem, eval, fak), P2.Fak(fak, fach) P1.Kurs(kurs_id, titel, fak, univ, fach, doz) Fak fak fach Anfrage Kurs kurs_id titel Lehrt prof kurs_id sem eval fak LaV P 2 P 4 M 2 4 Arbeitet prof fach ort Fak fak fach M 2 4 P4.Arbeitet(prof, fach, ort) P2.Lehrt(prof, kurs_id, sem, eval, fak), P2.Fak(fak, fach)

PDMS Diskussion 99 Vorteile Nutzer müssen nur eigenes kennen. Dennoch sind alle Daten (über transitive Hülle der Mappings) verfügbar Neue s können leicht und inkrementell hinzugefügt werden. Mapping nur zum ähnlichsten nötig. Nachteile/Probleme Mappings zwischen s nötig Aber: Mappings automatisch erstellen ( 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 Semantik in PDMS [Len04] 100 Peer 1 Elternteil e disjunkt, vollständig Peer 2 Frau e 1 Peer 4 Person Vater v Mutter Peer 3 Mann v e 2 v e Um diese Aussage zu treffen muss man Semantik des Peer 1 s kennen!

Vollständigkeit in PDMS 101 Einsicht: Vollständiges Ergebnis ist zu teuer. Also neues Optimierungsziel: Vollständigkeit Extensionale Vollständigkeit: Viele Tupel Metadaten: Kardinalitäten Intensionale Vollständigkeit: Viele Nicht-null-Werte Metadaten: Werteverteilungen Projektionen und Selektionen in Mappings führen zu Informationsverlust. Metadaten: Mappings Idee: Gezieltes Beschneiden des Anfrageplans (Pruning) Schnitt bei vielen Projektionen Schnitt bei starken Selektionen Unvollständige Mappings 102 Anfrage Peer 1 Part Descr. Make Peer 3 Part Make Peer 2 Peer 4 Part Descr. Make Part Descr. Make Peer 3 Part Descr. Make Problem: Kumulierte Projektionen in ta in Mappings

Selektive Mappings 103 Anfrage Peer 1 (ATU) Part Descr. Peer 2 (Ford) Part Descr. Make Make = Ford Problem: Kumulierte Selektionen implizit in ta explizit in Mappings Punktanfragen und Bereichsanfragen Peer 4 (Opel) Part Descr. Make = Ford Peer 3 (Autohaus) Part Descr. Make (= Opel ) System P [RNH+06] 104 Datenmodell mit Punkt- und Range-Anfragen GaV- und LaV-Umformulierung Budget- und Vollständigkeitsgesteuerte Anfragebearbeitung Visualisierung der Anfragebearbeitung Kardinalitätsschätzung mit selbstadaptiven Histogrammen Demo auf BTW 2007

Literatur 105 Wichtige Literatur [ÖV99] Principles of Distributed Database Systems. M. Tamer Özsu, Patrick Valduriez, Prentice Hall, 1999. [SL90] Amit P. Sheth and James A. Larson, Federated Database Systems for Managing Distributed, Heterogeneous, and Autonomous Databases, ACM Computing Surveys, Vol. 22(3), pp183-236, 1990. [Con97] Stefan Conrad, Föderierte Datenbanksysteme. Springer, Heidelberg 1997. [HIST03] Alon Y. Halevy, Zachary G. Ives, Dan Suciu, Igor Tatarinov. Mediation in Peer Data Management Systems, ICDE conference 2003 [Wie92] Mediators in the Architecture of Future Information Systems, Gio Wiederhold, IEEE Computer Journal, 25(3), 38-49, 1992 Weitere Literatur zu Architekturen [LMR90] W. Litwin, L. Mark, N. Roussoupoulos, Interoperability of Multiple Autonomous Databases, ACM Computing Surveys, Vol. 22(3), pp267-293, 1990. [HM85] Dennis Heimbigner, Dennis McLeod: A Federated Architecture for Information Management. ACM Trans. Inf. Syst. 3(3): 253-278 (1985) Literatur 106 Weitere Literatur zu Mediator Wrapper Architektur [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: 124-131 [JS03] Querying XML data sources in DB2: the XML Wrapper, Vanja Josifovski and Peter Schwarz, ICDE conference, Bangalore, India, 2003 [TS97] Don t Scrap It, Wrap It! A Wrapper Architecture for Legacy Data Sources, Mary Tork Roth and Peter Schwarz, VLDB Conference 1997 Athens, Greece, 1997. Weitere Literatur zu 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: 89-94 [ÖV91] & [ÖV99] Principles of Distributed Database Systems. M. Tamer Özsu, Patrick Valduriez, Prentice Hall, 1991/1999. [HIMT03] Alon Y. Halevy, Zachary G. Ives, Peter Mork, Igor Tatarinov. Peer Data Management Systems: Infrastructure for the Semantic Web. WWW Conference, 2003. [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. 106