Informationsintegration Materialisierte vs. Virtuelle Integration 15.5.2008 Felix Naumann Überblick 2 ■ Szenarien der Informationsintegration □ Data Warehouse □ Föderierte Datenbanken ■ Einführung ■ Materialisiert □ Data Warehouse ■ Virtuell □ Mediator-Wrapper System ■ Vergleich □ Flexibilität □ Antwortzeiten □ Aktualität □ etc. etc Felix Naumann | VL Informationsintegration | SS 2008 Real-life Informationsintegration 3 Überblick: Zwei wesentliche Modelle ■ Data Warehouses □ Materialisierte M t i li i t IIntegration t ti □ Am Beispiel Buchhändler (Folien von Prof. Leser) ■ Föderierte Datenbanken □ Virtuelle Integration □ Am Beispiel einer Life Sciences DB (DiscoveryLink) □ Weitere Beispiele Felix Naumann | VL Informationsintegration | SS 2008 Data Warehouse 4 ■ Eine oder mehrere (ähnliche) Datenbanken mit Bücherverkaufsinformationen ■ Daten werden oft aktualisiert □ Jede Bestellung einzeln g Updates p täglich g □ Katalog ■ Management benötigt Entscheidungshilfen (decision support) ■ Komplexe Anfragen Quelle: Ulf Leser, VL Data Warehouses Felix Naumann | VL Informationsintegration | SS 2008 Bücher im Internet bestellen 5 Backup Durchsat z Loadbalancing Portfolio Umsatz Werbung Zielkonflikt Daten b k bank Quelle: Ulf Leser, VL Data Warehouses Felix Naumann | VL Informationsintegration | SS 2008 Die Datenbank dazu 6 Bookgroup id name Year id year Month Id Month year id Order Order_id Book id amount single_price Book id Book group id Orders Day Id day month_id Customer Id Day id Customer_id Total_amt id name Quelle: Ulf Leser, VL Data Warehouses Felix Naumann | VL Informationsintegration | SS 2008 Fragen eines Marketingleiters 7 Wie viele Bestellungen haben wir jeweils im Monat vor Weihnachten, aufgeschlüsselt nach Produktgruppen? Bookgroup id name Year id year Month Id Month year_id Order Order_id book_id amount single_price Book id Book_group_id Orders Day Id day month_id Customer Id Day id Customer_id Total_amt id name Quelle: Ulf Leser, VL Data Warehouses Felix Naumann | VL Informationsintegration | SS 2008 Technisch SELECT Y.year, 8 PG.name, count(B.id) FROM year Y, month M, day D, order O, orders OS, book B, bookgroup BG WHERE M.year = Y.id and M.id = D.month and O.day_id = D.id and OS.order_id = O.id and B.id = O.book_id and B.book_group_id = BG.id and day < 24 and month = 12 GROUP BY Y.year, PG.product_name PG.product name ORDER BY Y.year Bookgroup Year id year Month Id Month year_id Day Id day month_id id name Order Order_id Book_id amount single_price Orders Id Day_id Customer_id Total_amt Book id Book_group_id Customer id name Quelle: Ulf Leser, VL Data Warehouses Felix Naumann | VL Informationsintegration | SS 2008 SELECT Y.year, PG.name, count(B.id) FROM year Y, month M, day D, order O, orders OS, book B B, bookgroup BG Technisch WHERE M.year = Y.id and M.id = D.month and O.day_id y_ = D.id and OS.order_id = O.id and B.id = O.book_id and B.book_group_id = BG.id and day < 24 and month = 12 GROUP BY Y.year, PG.product_name ORDER BY Y.year 9 6 Joins • Year: • • • • • • 10 Records Month: 120 Records Day: 3650 Records Od Orders: 36 000 000 36.000.000 Order: 72.000.000 Books: 200.000 Bookgroups: 100 Problem! • Schwierig S h i i zu optimieren i i (Join(J i Reihenfolge) • Je nach Ausführungsplan g p riesige g Zwischenergebnisse • Ähnliche Anfragen – ähnlich riesige Zwischenergebnisse Quelle: Ulf Leser, VL Data Warehouses Felix Naumann | VL Informationsintegration | SS 2008 In Wahrheit ... noch schlimmer 10 Es gibt noch: ■ Amazon.de Amazon de ■ Amazon.fr ■ Amazon.it ■ ... Verteilte Ausführung ■ Count über Union mehrerer gleicher Anfragen in unterschiedlichen Datenbanken HILFE! Quelle: Ulf Leser, VL Data Warehouses Felix Naumann | VL Informationsintegration | SS 2008 In Wahrheit ... 11 Quelle: Ulf Leser, VL Data Warehouses Felix Naumann | VL Informationsintegration | SS 2008 Technisch: Eine VIEW 12 CREATE VIEW christmas AS SELECT Y.year, PG.name, count(B.id) DE.year Y, DE.month M, DE.day D, DE.order O, ... M.year M year = Y Y.id id and FROM WHERE ... GROUP BY Y.year, PG.product_name ORDER BY Y.year UNION SELECT FROM WHERE ... Y.year, PG.name, count(B.id) EN.year Y, EN.month M, EN.day D, DE.order O, ... M.year M year = Y Y.id id and SELECT FROM GROUP BY ORDER BY year, name, count(B.id) t(B id) christmas year, name year Quelle: Ulf Leser, VL Data Warehouses Felix Naumann | VL Informationsintegration | SS 2008 Probleme 13 Count über Union über verteilte Datenbanken? ■ Integrationsproblem B Berechnung h riesiger i i Z Zwischenergebnisse i h b i b beii jjeder d Anfrage? A f ? ■ Datenmengenproblem Quelle: Ulf Leser, VL Data Warehouses Felix Naumann | VL Informationsintegration | SS 2008 Lösung des Integrationsproblems? 14 Zentrale Datenbank • Aber Probleme: – Zweigstellen schreiben übers Netz – Schlechter Durchsatz – Lange Antwortzeiten im operativen Betrieb Quelle: Ulf Leser, VL Data Warehouses Felix Naumann | VL Informationsintegration | SS 2008 Lösung Datenmengenproblem? 15 Denormalisierte Schema Aber Probleme: ■ Jeder lesende / schreibende Zugriff g erfolgt g auf eine Tabelle mit 72 Mill. Records ■ Lange Antwortzeiten im operativen Betrieb Quelle: Ulf Leser, VL Data Warehouses Felix Naumann | VL Informationsintegration | SS 2008 Zielkonflikt 16 Felix Naumann | VL Informationsintegration | SS 2008 Tatsächliche Lösung 17 Aufbau eines Data Warehouse ■ Redundante, transformierte Datenhaltung ■ Asynchrone Aktualisierung Quelle: Ulf Leser, VL Data Warehouses Felix Naumann | VL Informationsintegration | SS 2008 Weitere Anwendungsgebiete: Data Warehouses 18 ■ „Customer Relationship Management“ (CRM) □ Identifikation von Premiumkunden □ Personalisierung / Automatische Kundenberatung □ Gezielte Massen-Mailings (Direktvertrieb) ■ Controlling / Rechnungswesen □ Kostenstellen □ Organisationseinheiten □ Personalmanagement ■ Logistik □ Flottenmanagement, g , Tracking g ■ Gesundheitswesen □ Studienüberwachung, Patiententracking Quelle: Ulf Leser, VL Data Warehouses Felix Naumann | VL Informationsintegration | SS 2008 Überblick 19 ■ Szenarien der Informationsintegration □ Data Warehouse □ Föderierte Datenbanken ■ Einführung ■ Materialisiert □ Data Warehouse ■ Virtuell □ Mediator-Wrapper System ■ Vergleich □ Flexibilität □ Antwortzeiten □ Aktualität □ etc. etc Felix Naumann | VL Informationsintegration | SS 2008 Föderierte Datenbanken 20 ■ Mehrere autonome Informationsquellen ■ Mit unterschiedlichsten Inhalten □ Gene, G Proteine, P t i BLAST BLAST, etc. t ■ Und unterschiedlichsten Schnittstellen □ HTML HTML-Form Form, flat file, file SQL, SQL etc. etc ■ Wissenschaftler (Biologe) benötigt z.B. möglichst viele Informationen über ein bestimmtes Protein □ Funktion, Veröffentlichungen, verwandte Proteine usw. ■ Sehr komplexe Anfragen ■ Üblicher Übl h Ansatz: Browsing, Note-Taking, k Copy C & Paste ■ Föderierte Datenbanken (wie DiscoveryLink) helfen. Felix Naumann | VL Informationsintegration | SS 2008 Frage eines Biologen 21 Finde alle menschlichen EST Sequenzen, die nach BLAST zu mindestens 60% über mindestens 50 Aminosäuren identisch sind mit mouse-channel Genen im Gewebe des zentralen Nervensystems. Quelle für das komplette Beispiel: A Practitioner’s Guide to Data Management and Data Integration in Bioinformatics, Barbara A. Eckman in Bioinformatics by Zoe Lacroix and Terence Critchlow, 2003, Morgan Kaufmann. Felix Naumann | VL Informationsintegration | SS 2008 Verschiedene Informationsquellen 22 Beteiligte Informationsquellen ■ Mouse Genome Database (MGD) @ Jackson Labs ■ SwissProt S i P t @ EBI ■ BLAST tool @ NCBI ■ GenBank nucleotide sequence database @ NCBI Alle Quellen sind frei verfügbar Felix Naumann | VL Informationsintegration | SS 2008 Herkömmlicher Ansatz: Browsing 23 1. Suche „channel“ Sequenzen im Gewebe des ZNS durch MGD HTML Formular Felix Naumann | VL Informationsintegration | SS 2008 Herkömmlicher Ansatz: Browsing 24 MGD Resultat ■ 14 Gene aus 17 Experimenten Felix Naumann | VL Informationsintegration | SS 2008 Herkömmlicher Ansatz: Browsing 25 ■ Details zu jedem der 14 Gene ansehen ■ Durchschnittlich fünf SwissProt Links pro Gen Felix Naumann | VL Informationsintegration | SS 2008 Herkömmlicher Ansatz: Browsing 26 ■ Betrachten jedes SwissProt Eintrages g ■ Durch Klick BLAST Algorithmus anwerfen Felix Naumann | VL Informationsintegration | SS 2008 Herkömmlicher Ansatz: Browsing 27 ■ Betrachten jedes BLAST Resultats um □ nicht-menschliche Treffer zu eliminieren, □ andere Bedingungen zu prüfen (>60% Identität, etc.). ) Felix Naumann | VL Informationsintegration | SS 2008 Herkömmlicher Ansatz: Browsing 28 Für jeden verbleibenden Eintrag ■ Komplette EST Sequenz bei GenBank holen Felix Naumann | VL Informationsintegration | SS 2008 Idee der Integration 29 ■ Bildung eines globalen Schemas (Schemaintegration) □ Gespeichert als Datenbankschema in DiscoveryLink ■ Generierung G i von W Wrappern für fü jede j d Datenquelle D t ll □ Softwarekomponente □ Mapping von lokalen Schemata auf globales Schema □ Kennt Anfragefähigkeiten der Quellen Felix Naumann | VL Informationsintegration | SS 2008 DiscoveryLink Architektur 30 Felix Naumann | VL Informationsintegration | SS 2008 Eigenschaften föderierter IS (und DiscoveryLink) 31 ■ Daten bleiben vor Ort. ■ Informationsquellen sind autonom (und wissen oft nicht von ihrer Integration). Integration) ■ Anfragen werden deklarativ an das globale Schema gestellt. g wird so verteilt wie möglich g ausgeführt. g ■ Anfrage □ Je nach Mächtigkeit der Quellen □ DiscoveryLink gleicht etwaige mangelnder Fähigkeiten aus. Felix Naumann | VL Informationsintegration | SS 2008 Föderierter DBMS Ansatz 32 „Finde alle menschlichen EST Sequenzen, die nach BLAST zu mindestens 60% über mindestens 50 Aminosäuren identisch sind mit mouse-channel mouse channel Genen im Gewebe des zentralen Nervensystems. Nervensystems “ „Einfache“ SQL-Anfrage um alle vorigen Schritte zu vereinen: g.accnum,g.sequence ,g q SELECT g FROM genbank g, blast b, swissprot s, mgd m WHERE m.exp = “CNS” AND m.defn LIKE “%channel%” AND m.spid = s.id AND s.seq = b.query AND b hi = g.accnum b.hit AND b.percentid > 60 AND b.alignlen > 50 Felix Naumann | VL Informationsintegration | SS 2008 Föderierter DBMS Ansatz 33 ■ Effiziente Ausführung durch Optimierer □ Herkömmliche Optimierung □ Wrapper W helfen h lf mit it ◊ Kostenmodell ◊ do domänenspezifischen ä e spe sc e Funktionen u to e ■ Sichere Ausführung □ Wiederholbar □ Transaktional Felix Naumann | VL Informationsintegration | SS 2008 Weitere Anwendungsgebiete: Föderierte Datenbanken 34 ■ Meta-Suchmaschinen ■ Unternehmensfusionen □ Kundendatenbanken □ Personaldatenbanken ■ Grid ■ Krankenhausinformationssysteme □ Röntgenbilder □ Krankheitsverlauf (Akte) □ Verwaltung □ Krankenkasse... ■ Verteiltes Arbeiten („groupware“) ■ Peer Data Management und P2P Felix Naumann | VL Informationsintegration | SS 2008 Überblick 35 ■ Szenarien der Informationsintegration □ Data Warehouse □ Föderierte Datenbanken ■ Einführung ■ Materialisiert □ Data Warehouse ■ Virtuell □ Mediator-Wrapper System ■ Vergleich □ Flexibilität □ Antwortzeiten □ Aktualität □ etc. etc Felix Naumann | VL Informationsintegration | SS 2008 Integration 36 Materialisiert ■ A priori Integration ■ Zentrale Z t l D Datenbasis t b i ■ Zentrale Anfragebearbeitung ■ Typisches Beispiel: Data Warehouse Virtuell ■ On demand Integration ■ Dezentrale Daten ■ Dezentrale Anfragebearbeitung ■ Typisches Beispiel: Mediator-basiertes Informationssystem Felix Naumann | VL Informationsintegration | SS 2008 Data Warehouse vs. Mediator-basiertes Informationssystem 37 Anwendung 1 Anwendung 2 Anwendung 1 Anwendung 2 Data Warehouse Q ll 1 Quelle Q ll 2 Quelle Mediator Q ll 3 Quelle Q ll 1 Quelle Felix Naumann | VL Informationsintegration | SS 2008 Q Quelle 2 Q Quelle 3 Data Warehouse vs. vs Mediator 38 Anwendung 1 Anwendung 2 Anwendung 1 Anwendung 2 Mediator Data Warehouse ETL 3 ETL 1 Wrapper 1 ETL 2 Quelle 1 Quelle 2 Wrapper 3 Wrapper 2 Quelle 3 Quelle 1 Felix Naumann | VL Informationsintegration | SS 2008 Quelle 2 Quelle 3 Taxonomie nach [DD99] 39 Felix Naumann | VL Informationsintegration | SS 2008 Data Warehouse vs. vs Mediator 40 Jetzt jeweils kurzer Überblick ■ Datenfluss ■ Anfragebearbeitung A f b b it ■ Entwurf und Entwicklung (Schema) Details in den folgenden Wochen Felix Naumann | VL Informationsintegration | SS 2008 Überblick 41 ■ Szenarien der Informationsintegration □ Data Warehouse □ Föderierte Datenbanken ■ Einführung ■ Materialisiert □ Data Warehouse ■ Virtuell □ Mediator-Wrapper System ■ Vergleich □ Flexibilität □ Antwortzeiten □ Aktualität □ etc. etc Felix Naumann | VL Informationsintegration | SS 2008 Materialisierte Integration - Datenfluss 42 Anwendung 1 Anwendung 2 ■ Push g „„Bevölkerung“ g ■ Erstmalige (population) des DW Data Warehouse □ Data Cleansing ■ Periodischer Datenimport □ Stündlich / Täglich / Wöchentlich ETL 1 ETL 2 ETL 3 □ Materialisierte Sichten / Sicht-Updates ■ Redundante Datenhaltung Quelle 1 Quelle 2 Quelle 3 ■ Aggregation und Löschung alter Daten □ Je älter, l d desto „aggregierter““ Felix Naumann | VL Informationsintegration | SS 2008 Materialisierte Integration Anfragebearbeitung 43 Anwendung 1 Anwendung 2 Data Warehouse ■ Wie „normale“ DBMS ■ Besonderheiten □ Star Schema □ Aggregation □ Decision Support ■ Siehe auch VL DWH ETL 1 Quelle 1 ETL 2 Quelle 2 ETL 3 Quelle 3 Felix Naumann | VL Informationsintegration | SS 2008 Materialisierte Integration - Schema 44 Anwendung 1 Anwendung 2 ■ Bottom-Up Entwurf ■ Schemaintegration ■ Star-Schema Data Warehouse □ Fact-Table □ Dimension Tables ETL 1 Quelle 1 ETL 2 Quelle 2 ETL 3 Quelle 3 Felix Naumann | VL Informationsintegration | SS 2008 M Materialisierte i li i IIntegration i - Schema S h 45 □ Bottom-Up Entwurf □ Schemaintegration □ Star-Schema ◊ Fact-Table ◊ Dimension Tables Felix Naumann | VL Informationsintegration | SS 2008 Überblick 46 ■ Szenarien der Informationsintegration □ Data Warehouse □ Föderierte Datenbanken ■ Einführung ■ Materialisiert □ Data Warehouse ■ Virtuell □ Mediator-Wrapper System ■ Vergleich □ Flexibilität □ Antwortzeiten □ Aktualität □ etc. etc Felix Naumann | VL Informationsintegration | SS 2008 Virtuelle Integration - Datenfluss 47 Anwendung 1 Anwendung 2 ■ Pull ■ Daten sind in Quellen gespeichert. ■ Nur die zur Anfragebeantwortung notwendigen Daten werden übertragen. g Mediator Wrapper 1 Wrapper 2 Wrapper 3 Quelle 1 Quelle 2 Quelle 3 ■ Data Cleansing nur online möglich. Felix Naumann | VL Informationsintegration | SS 2008 Virtuelle Integration Anfragebearbeitung 48 Anwendung 1 Anwendung 2 ■ Optimierung schwierig □ Fähigkeiten der Quellen □ Geschwindigkeit der Quellen Mediator ■ Viele mögliche Pläne □ Redundante Quellen □ Redundante Pläne Wrapper 1 Wrapper 2 Wrapper 3 Quelle 1 Quelle 2 Quelle 3 ■ Dynamisch, um ausfallende Quellen auszugleichen Felix Naumann | VL Informationsintegration | SS 2008 Virtuelle Integration - Schema 49 Anwendung 1 Anwendung 2 ■ Top-Down Entwurf ■ Leicht erweiterbar □ Global: Neue Quellen suchen Mediator □ Lokal: Nur ein mapping verändern. Wrapper 1 Wrapper 2 Wrapper 3 Quelle 1 Quelle 2 Quelle 3 ■ Schema Mapping statt Schema-integration Felix Naumann | VL Informationsintegration | SS 2008 Überblick 50 ■ Szenarien der Informationsintegration □ Data Warehouse □ Föderierte Datenbanken ■ Einführung ■ Materialisiert □ Data Warehouse ■ Virtuell □ Mediator-Wrapper System ■ Vergleich □ Flexibilität □ Antwortzeiten □ Aktualität □ etc. etc Felix Naumann | VL Informationsintegration | SS 2008 Dimensionen des Vergleichs 51 ■ Aktualität ■ Antwortzeit ■ Flexibilität / Wartbarkeit ■ Komplexität ■ Autonomie ■ Anfragebearbeitung / Mächtigkeit ■ Read / Write ■ Größe / Speicherbedarf ■ Ressourcenbedarf ■ Vollständigkeit g ■ Data Cleansing ■ Informationsqualität Felix Naumann | VL Informationsintegration | SS 2008 Aktualität (up-to-date-ness) 52 ■ Materialisierte Integration ■ Virtuelle Integration □ Je nach Update-Frequenz p q □ Sehr g gut □ In Unternehmen meist täglich (über Nacht) □ Abhängig von Aktualität der autonomern Quellen □ Beispiel SwissProt □ Manchmal: Caching ◊ Updates in SwissProt täglich ◊ Aber: Release nur monatlich Felix Naumann | VL Informationsintegration | SS 2008 Antwortzeit (response time) 53 ■ Materialisierte Integration ■ Virtuelle Integration □ Sehr g gut □ Nicht g gut □ Lokale Bearbeitung □ Daten sind entfernt □ Wie DBMS ◊ Übertragung durch das Netz ◊ Optimierung O i i ◊ Materialisierte Sichten ◊ Indices ◊ ... □ Allerdings: Typische Anfragen sind komplex □ Abhängig von Antwortzeit der Quellen □ Optimierung schwierig □ Komplexe Operatoren müssen naïv ausgeführt g werden. □ Data Cleansing Operationen müssen nachgeholt werden. Felix Naumann | VL Informationsintegration | SS 2008 Flexibilität / Wartbarkeit (flexibility / maintenance) 54 ■ Materialisierte Integration ■ Virtuelle Integration □ Schwierig g □ Einfacher □ Entfernen / Ändern / Hinzufügen einer Quelle kann gesamte Integration verändern (bei GaV) □ Entfernen / Ändern / Hinzufügen einer Quelle wirkt sich nur auf das mapping dieser Quelle aus (bei LaV) □ Lokale Wartung eines großen und wachsenden Datenbestandes □ Quellen müssen Daten selbst warten warten. ◊ Mit Indices etc. □ Tägliche Integration nötig Felix Naumann | VL Informationsintegration | SS 2008 ◊ Backups, DBMS Wartug etc. Komplexität (complexity) 55 ■ Materialisierte Integration □ Wie DBMS □ Komplexe Anfragen ■ Virtuelle Integration □ Modellierung g der Q Quellen wichtig ◊ Fähigkeiten der Quellen □ Anfrageplanung im GaV leicht □ Q Quellen ll sind i d oft f untereinander i d ähnlich. ◊ Oft sind es selbst DBMS □ Anfrageplanung in LaV schwierig □ Oft verschiedenste Quellen ◊ Web Services ◊ HTML Formulare ◊ Flat Files ◊ ... Felix Naumann | VL Informationsintegration | SS 2008 Autonomie (autonomy) 56 ■ Materialisierte Integration □ Q Quellen wenig g autonom ■ Virtuelle Integration □ Quellen Q können autonom sein. ◊ Keine Kommunikationsautonomie □ Volle Design-Autonomie ◊ Geringe AusführungsAusführungs autonomie □ Fast volle KommunikationsKommunikations Autonomie ◊ Geringe Designautonomie t i ◊ Gewisse Kommunikation i t nötig, ist öti sonstt nicht i ht Teilnehmer der Integration □ Müssen bulk-read o.ä. zulassen □ Update notifications □ Fast volle AusführungsAutonomie ◊ Nur: Anfragen müssen irgendwann beantwortet werden. Felix Naumann | VL Informationsintegration | SS 2008 Anfragebearbeitung / Mächtigkeit (query planning / expressivenes) 57 ■ Materialisierte Integration □ Anfragebearbeitung g g wie DBMS bzw. anderes globales System ■ Virtuelle Integration □ Anfragebearbeitung g g komplex p ◊ Verteilung □ Anfragemächtigkeit wie globales System ◊ z.B. volle SQL Mächtigkeit ◊ Autonomie H iä ◊ Heterogenität □ Mangelnde Fähigkeiten der Quellen können global eventuell ausgeglichen werden. □ Aber auch: Spezialfähigkeiten p g der Quellen können genutzt werden: ◊ Image retrieval ◊ Text Index Felix Naumann | VL Informationsintegration | SS 2008 Lesen / Schreiben (Read / Write) 58 ■ Materialisierte Integration ■ Virtuelle Integration □ Read immer möglich g □ Read meist möglich g □ DW: Write oft nicht gewünscht, aber möglich □ Verfügbarkeit! □ Write meist nicht möglich ◊ Kann zu Inkonsistenz mit Quellen führen Beii Redundanz: R d d Wohin W hi ◊ B schreiben? ◊ Transaktionen schwierig ◊ Autonomie Felix Naumann | VL Informationsintegration | SS 2008 Größe / Speicherbedarf (size / memory consumption) 59 ■ Materialisierte Integration □ Hoch ■ Virtuelle Integration □ Gering g ◊ Redundante Datenhaltung ◊ Metadaten ◊ DW: Historische Daten ◊ Zwischenergebnisse Z i h b i □ Wachstum ◊ Cache □ Footprint: wie DBMS ◊ Stetig wachsend ◊ Oder konstant durch zunehmende Aggregation im Laufe der Zeit □ Footprint: wie DBMS Felix Naumann | VL Informationsintegration | SS 2008 Ressourcenbedarf (resource consumption) 60 ■ Materialisierte Integration ■ Virtuelle Integration □ Planbare Netzwerklast □ Potentiell hohe Netzwerklast □ Daten werden eventl. unnötig übertragen □ Daten werden mehrfach übertragen. ◊ Abhängig von Anfrage ◊ Aggregation ◊ Pre-Aggregation ◊ Cache kann helfen helfen. □ Nur jeweils nötige Daten werden übertragen. Je nach Workload. Spannendes Optimierungsproblem! Felix Naumann | VL Informationsintegration | SS 2008 Vollständigkeit (completeness) 61 ■ Materialisierte Integration □ Gut □ Annahme: Materialisation ist vollständig ■ Virtuelle Integration □ Nur bei Verfügbarkeit g aller nötigen Quellen □ Gegebenenfalls Anfrage unbeantwortbar oder nur unvollständig beantwortbar ◊ Fuzzy Anfragesemantik: – Alle Tupel? – Alle Attribute? □ Definition der Vollständigkeit ◊ Open World Assumption ◊ Closed World Assumption Felix Naumann | VL Informationsintegration | SS 2008 Datenreinigung (Data Cleansing) 62 ■ Materialisierte Integration □ Viele Methoden ■ Virtuelle Integration □ Online cleansing g schwierig g ◊ Aufwändig □ Offline (über Nacht) Felix Naumann | VL Informationsintegration | SS 2008 ◊ Aufwand ◊ Keine Interaktion mit Experten möglich Informationsqualität (information quality) 63 ■ Materialisierte Integration ■ Virtuelle Integration □ Hoch □ Abhängig g g von Q Quellen □ Kontrolliert □ Oft zweifelhaft □ Kann bei Bedarf verbessert werden werden. Felix Naumann | VL Informationsintegration | SS 2008 ◊ Autonomie Z Zusammenfassung f VorV und d Nachteile N h il 64 Materialisiert Virtuell Aktualität - (Cache) + Antwortzeit + - Flexibilität - (GaV) + (LaV) Komplexität - -- Autonomie - + Anfragemächtigkeit + - Read/Write +/+ +/- Größe - + Ressourcenbedarf ? (workload) ? (workload) Vollständigkeit + ? (OWA, CWA) Datenreinigung + - Informationsqualität + - Felix Naumann | VL Informationsintegration | SS 2008 Hybrider Ansatz 65 Teile der Daten werden materialisiert ■ Oft benötigte Daten (Cache) Anwendung 1 Anwendung 2 ■ Als bulk verfügbare Daten □ Dump Files □ SQL Zugang Mediator □ ... Teile der Daten bleiben bei den Quellen ■ Oft aktualisierte Daten ETL 1 Wrapper 3 ■ Daten mit beschränktem Zugang Wrapper 2 □ mind. eine gebundene Variable □ Beschränkte Lizenzen Optimierung bevorzugt lokale Daten Quelle 1 ■ Prüfung, Prüfung ob Aktualisierung vorliegt Felix Naumann | VL Informationsintegration | SS 2008 Quelle 2 Quelle 3 Rückblick 66 ■ Szenarien der Informationsintegration □ Data Warehouse □ Föderierte Datenbanken ■ Einführung ■ Materialisiert □ Data Warehouse ■ Virtuell □ Mediator-Wrapper System ■ Vergleich □ Flexibilität □ Antwortzeiten □ Aktualität □ etc. etc Felix Naumann | VL Informationsintegration | SS 2008 Literatur 67 ■ [BKLW99] Busse, Kutsche, Leser, Weber, Federated Information Systems: Concepts, Terminology and Architectures. Forschungsbericht 99 99-9 9 des FB Informatik der TU Berlin, 1999. Online: http://www.informatik.huberlin.de/~leser/publications/tr_terminology.ps ■ [DD99] Ruxandra Domenig, Klaus R. Dittrich: An Overview and Classification of Mediated Query Systems. SIGMOD Record 28(3): 63-72 (1999) Felix Naumann | VL Informationsintegration | SS 2008