Wissensmanagement in der Bioinformatik Ulf Leser Einleitung und Motivation Data Warehousing Backup Durchsatz Loadbalancing Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Daten bank 2 Portfolio Umsatz Werbung Bücher im Internet bestellen Id Day_id Customer_id Total_amt Orders Order Order_id Book_id amount single_price Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Id day month_id Day Id Month year_id Month id year Year Book Bookgroup id name Customer id Book_group_id id name Die Datenbank dazu 3 Id Day_id Customer_id Total_amt Orders Order Order_id book_id amount single_price Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Id day month_id Day Id Month year_id Month id year Year Book id name Customer id Book_group_id id name Bookgroup 4 Wie viele Bestellungen haben wir jeweils im Monat vor Weihnachten, aufgeschlüsselt nach Produktgruppen? Fragen eines Marketingleiters Orders Id Day_id Customer_id Total_amt Order_id Book_id amount single_price Customer id name Book id Book_group_id Order Zwischenergebnisse Problem! Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Id day month_id Day Month Id Month year_id • • • • • Books: 200.000 year • Bookgroups: 100 • 6 Joins 5 SELECT Y.year, 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 Year: 10 Records • Schwierig zu optimieren (JoinOS.order_id = O.id and Month: 120 Records Order) B.id = O.book_id and Day: 3650 Records= BG.id •and B.book_group_id Ja nach Ausführungsplan riesige Orders: day <36.000.000 24 and month = 12 Zwischenergebnisse Bookgroup id PG.product_name OGROUP rder: BY Y.year, 72.000.000 name– ähnlich riesige Year • Ähnliche Anfragen ORDER BY Y.year id Technisch Amazon.de Amazon.fr Amazon.it ... Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 – Count über Union mehrerer gleicher Anfragen in unterschiedlichen Datenbanken • Verteilte Ausführung – – – – • Es gibt noch: In Wahrheit ... 6 Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 In Wahrheit ... 7 SELECT FROM WHERE ... UNION Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 year, name, count(B.id) christmas year, name year 8 Y.year, PG.name, count(B.id) EN.year Y, EN.month M, EN.day D, DE.order O, ... M.year = Y.id and Y.year, PG.product_name Y.year Y.year, PG.name, count(B.id) DE.year Y, DE.month M, DE.day D, DE.order O, ... M.year = Y.id and SELECT FROM GROUP BY ORDER BY SELECT FROM WHERE ... GROUP BY ORDER BY CREATE VIEW christmas AS Technisch Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 • Berechnung riesiger Zwischenergebnisse bei jeder Anfrage ? ¾ Datenmengenproblem 9 • Count über Union über verteilte Datenbanken ? ¾ Integrationsproblem Problem ! Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 – Zweigstellen schreiben übers Netz – Schlechter Durchsatz – Lange Antwortzeiten im operativen Betrieb • Probleme Zentrale Datenbank Lösung Integrationsproblem ? 10 Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 11 – Jeder lesende / schreibende Zugriff erfolgt auf eine Tabelle mit 72 Mill. Records – Lange Antwortzeiten im operativen Betrieb • Probleme Denormalisierte Schema Lösung Datenmengenproblem ? Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 • Redundante, transformierte Datenhaltung • Asynchrone Aktualisierung Aufbau eines Data Warehouse Tatsächliche Lösung 12 Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 • Anwendungen • Grosse Datenmengen und TPC-H – Betriebswirtschaft / Informatik – Benutzer / Entwickler • Definition und Abgrenzung • Geschichte & Statistische Datenbanken • Sichtweisen Inhalt dieser Vorlesung 13 Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 14 Regionale Unterschiede beachten! – Zentrale Übersicht über Umsätze – Integration mit Lieferanten / Produktdaten • ... nur möglich, wenn – Was wird wo und wie oft verkauft ? – Was muss wann wohin geliefert werden ? • Aber: Zentrale Planung, Beschaffung, Verteilung – Viele Niederlassungen (bis zu mehrere tausend) – Noch mehr Registerkassen Verderbliche Waren! • Ein beliebiges Handelshaus : Spar, Extra, Kaufhof, ... • Physikalische Datenverteilung Beispielszenario DWH Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Welches sind meine Topkunden ? Analyse Verkaufen wir im Wedding mehr Dosenbier als in Zehlendorf? Handels - DWH FILIALE 2 Lieferanten daten Kundendaten Artikeldaten FILIALE 1 FILIALE 3 ... 15 Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 – Internet – Katalogbestellung • Weitere Vertriebswege – Premiumkunden – Persönliche Vorlieben • Kundendatenbank Kundenkarten! – Zuordnung Kassenbuchung auf Mitarbeiter • Personaldatenbank 16 – Produktinformationen: Packungsgrößen, Farben, etc. – Lieferbedingungen, Preissysteme • Lieferantendatenbanken DWH Datenquellen – – – – – 17 Verkäufe, Personen, Produkte, etc. Erstellt aus vielen Quellen Hält Daten unverändert über die Zeit Vergleich von Daten über die Zeit Wichtige Daten rein, unwichtige raus Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Subj-orient.: Integrated: Non-Volatile: Time-Variant: Decisions: volatile, and time-variant collection of data in support of management‘s decision“ [Inm96] • „A DWH is a subject-oriented, integrated, non- Definition DWH Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 • Bereitstellung spezieller Ableitungen • Analyse der Daten – Nutzung • Aktualisierung der Daten • Optimierung des Zugriffs • Monitoring der Performance – Pflege • Auswahl von Datenquellen • Logische Integration – Erstellung • Erstellung, Pflege und Nutzung des DWH Def. Data Warehousing 18 Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 – Höhere Autonomie und Heterogenität – Kein spezifischer Analysezweck • Föderierte Datenbanken – I.d.R. keine redundante Datenhaltung – Verteilung als Mittel zur Lastverteilung – Keine inhaltliche Integration der Daten • Verteilte Datenbanken – Technik zur Realisierung eines DWH • Parallele Datenbanken Abgrenzung 19 Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 – Multidimensionale Modellierung, Klassifikationssysteme, Summarizability, ... ¾ Eine der Wurzeln der DWH – Anonymisierung bei hochdimensionalen Daten ? • Datensicherheit – Validierung und Ableitung statistischer Aussagen – Ausreißer, Verteilungen, Schätzungen • Intensive Analyse von Abhängigkeiten – Komplexe Klassifikationssysteme – Grosse Bedeutung geographischer Daten • Sehr ähnliches Gebiet • Vorrangige Verwendung: Censusdaten Statistische Datenbanken 20 Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 ¾ Teuer und unflexibel ¾ Schattendasein Seit den 60er Jahren Feste, programmierte Reports Redundante Datenhaltung sehr teuer Datenbeschaffung sehr schwierig: fehlende Vernetzung, Schnittstellen, Anwendungsneutralität – Analysemethoden ungenügend (Data Mining) – Zu schwierig zu bedienen (für Manager) – – – – • Managementinformationssysteme (MIS), Decision Support Systeme (DSS), Executive Information Systeme (EIS) Geschichte von DWH 21 Extreme Verbilligung von Plattenspeicherplatz Relationale Modellierung: Anwendungsneutral Graphische Benutzeroberflächen und Terminals IT in allen Unternehmensbereichen (SAP R/3) Vernetzung und DB Standardisierung (SQL) Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 • Soziale versus technische Aspekte (immer wieder aufs neue) – Vision der vollständigen Integration scheitert • Aber – – – – – • Top-Thema seit Beginn der 90er Jahre • Voraussetzungen Erfolg von DWH 22 Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 • Anwendersichtweise • Entwicklersichtweise • Betriebswirtschaftliche Sichtweise • Informatiker Sichtweise Sichtweisen auf DWH Projekte 23 Ohne DWH nur manuell möglich – – – – – Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 24 Bei operativen Daten zählt jedes Datum Fehlerminimierung Integrierte Daten – übergreifende Antworten Würde operative Systeme überlasten Zugriff auf integrierte Daten Übergreifende Analysen möglich Zugriff auf mehr (alle?) Daten Data Cleansing und Aufbereitung Anreicherung mit weiteren Daten • ... durch ... – Ermöglicht viele neue Fragen – Verbessert viele Antworten erheblich • Ein DWH Betriebswirtschaftssicht – – – – – – – Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 25 Sortiment – vergrößern oder verkleinern ? Sonderaktionen – breit oder tief ? Reklamationsbearbeitung – wichtig oder nicht ? Absatzweg – rentabel oder nicht ? Personalisierung – erfolgreich oder nervig ? Lagerhaltung – Wie viel lagern, wie viel just-in-time ... • Hilfsmittel für Controlling und Planung Controlling Viele Benutzer Kurze Transaktionen Echtzeitanforderungen OLTP (Online Transaction Processing) Kurzes Gedächnis Beispiel: Kassensysteme, Bankautomaten – – = – – – Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Wenige(r) Benutzer Viele GROUPs, SORTs, SUMs OLAP Analytical Zeitlich (Online unkritisch, nur lesendProcessing) Historische Daten Beispiel: Sortimentplanung, Kapazitätsplanung • DWH – – – = – – • Operative Systeme Informatiksicht 26 Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Remove order Place order Welcome Login 27 SELECT pw FROM kunde WHERE login=„...“ UPDATE kunde SET last_acc=date, tries=0 WHERE ... COMMIT SELECT k_id, name FROM kunde WHERE login=„...“ SELECT last_pur FROM purchase WHERE k_id=... ... COMMIT SELECT av_qty FROM stock WHERE p_id=... UPDATE stock SET av_qty=av_qty-1 where ... INSERT INTO shop_cart VALUES( o_id, k_id, ... ... COMMIT DELETE FROM shop_cart WHERE o_id=... UPDATE stock SET av_qty=av_qty+1 where ... ... COMMIT OLTP Beispiel Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 28 – Welche Produkte werden überhaupt zusammen gekauft – und wo ? • Haben Zweigstellen einen höheren Umsatz, die gemeinsam gekaufte Produkte zusammen stellen ? – Wie hoch waren die Bestellungen im Schnitt ? – Wie hoch waren die Bestellungen im Vergleich zu den durchschnittlich. Bestellungen des jew. Kunden in einem vergleichbaren Zeitraum ? – Lohnen sich Mailing-Aktionen ? • Welche Kunden haben über die letzten 5 Jahre eine Bestellung über 50 Euro innerhalb von 4 Wochen nach einem persönlichen Anschreiben aufgegeben ? – Welche Produktgruppen sind davon betroffen ? – Welche Lieferanten haben diese Produkte ? • Welche Produkte hatten im letzten Jahr im Bereich Bamberg einen Umsatzrückgang um mehr als 10% ? OLAP Beispiel 1999 2000 2001 2002 Jahr Id day month_id Day Month Id Month year_id Year id year Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 • Modellierung in DWH: Dimensionen und Fakten • Modellierung in operativen Systemen: Normalisierung Bon Id Day_id Shop_id Total_amt Sales Bon_id Article_id amount single_price Modellierung im DWH Ford VW Peugot BMW Asien Automarke 29 Kontinent Region Südamerika id name Shop id region_id Article id Productgroup_id Productgroup id name Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Sachbearbeiter Anwendungsorientiert Modellierung Typische Benutzer Echtzeit bis wenige Sek. Erwartete Antwortzeiten Gigabytebereich Datenmenge in DB Rohdaten, häufige Änderungen Wenige Tupel Daten pro Operation Eigenschaften der Daten Einfache Queries, Primärschlüsselzugriff, Schnelle Abfolgen von Selects/inserts/updates/deletes Viele und kurz Insert, Update, Delete, Select OLTP Ausfall ärgerlich Management 30 Themenorientiert Minuten Abgeleitete Daten, historisch & stabil Terabytebereich Megabyteweise Komplexe Queries: Aggregate, Groupierung, Subselects, etc. Range Queries über mehrere Attribute Lesetransaktionen Select Bulk-Updates OLAP OLAP versus OLTP Typische Anfragen Transaktionen Typische Operationen Ausfall kostet Millionen. Hochverfügbarkeit: 24x7x52 Modellierung in Dimensionen Datenherkunft beim Zugriff transparent Durchgriff aus externe und interne Quellen Semantikfrei – Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Switch von relationaler zu Array Speicherung 7. Dynamic Sparse Matrix Handling – [CCS93] Unabhängig v. Dimensionen, Datenvolumen, Benutzerzahl 5. Client-Server Architecture 6. Generic Dimensionality – 4. Consistent Reporting Performance – 3. Accessibility – 2. Transparency – 1. Multidimensional Conceptual View OLAP Kriterien nach Codd 31 Keine Beschränkung in Kombination von Dimensionen Ad-Hoc User Interface Reporterstellungsfähigkeiten – Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Keine Systembeschränkungen 12. Unlimited Dimensions and Aggregation Levels – 11. Flexible Reporting – 10. Intuitive Data Manipulation – 9. Unrestricted Cross-dimensional Operations 8. Multi-User Support OLAP Kriterien nach Codd –2– 32 • • • • • Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Integrierte Sicht Höhere Datenqualität Graphische Front-Ends zur Analyse OLAP Sprache: Drill-Down, Dice, Cube, etc. Vorsicht: GUIs verführen zur Formulierung beliebig komplexer Queries – Manager aller Ebenen – Betriebswirte • Anwender Anwendersicht 33 Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 34 Denormalisiertes Datenmodell Redundante Datenhaltung Vorverarbeitung zur Queryunterstützung Materialisierte Sichten, Partitionen, Indexstrukturen, etc. • Aktives Feld aller DB-Hersteller! • • • • – Datenaufbereitung und -integration – Optimierung für komplexe Queries statt hohem Durchsatz – Spezielle Techniken notwendig • DWH = große, denormalisierte Datenbank ? • Spezifische Probleme: Entwicklersicht Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 • Wal-Mart • Bioinformatik • Weitere Anwendungsgebiete 35 Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 36 – Überprüfung des Warensortiments zur Erkennung von Ladenhütern oder Verkaufsschlagern – Standortanalyse, Rentabilität von Niederlassungen – Untersuchung der Wirksamkeit von MarketingAktionen – Analyse / Planung der Zwischenlager – Warenkorbanalyse mit Hilfe der Kassenbons • Größe: ca. 300 Terabyte (4/03) • Täglich bis zu 20.000 DW-Anfragen: – Verkaufzahlen, Lagerhaltung, Filialen • Unternehmensweites Data Warehouse Wal Mart Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 – Performanter Zugriff – Dimensionale Modellierung • Speicherung experimenteller Daten – Viele Datenquellen – Update und Transformation • Aufbau integrierter Datenbanken Anwendungen in der Bioinformatik 37 EMBL: sequences Genbank: sequences RHdb: maps IXDB: Xchromosome 38 - Up-to-date information - Comprehensive results - Integrated Results: Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 – location – schema – language PIR: proteins ... something magic ... SWISSPROT: proteins Transparency: OMIM: genes GDB: maps Genes on Xp23 with homolog in mice ? DWH in Bioinformatik – – – – Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Many data sources with overlapping domain Sanger Centre (ACeDB, TACE-queries) GDB (Sybase, HTML forms) RhDB (Oracle, CORBA) etc. “Find all maps of the X chromosome” Queries –1- 39 S2 S1 S6 S5 S3 S4 Gene data Mapping data Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Necessity to combine data from different sources Sequence data 40 – Start from maps from X (IXDB), search Y, extract neighbour genes, test for Z (OMIM), search for sequence (EMBL). – Search genes on X (EMBL ?), test Z (OMIM), search in X map (XACE), test for neighbourhood. “Find genes close to marker Y on chromosome X that are members of the gene family Z and …” Queries –2- SWISS PROT PIR magic ... ... something Warehouse Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 OMIM GDB Genes on Xp23 with siblings in mice ? DWH Ansatz EMBL RHdb 41 IXDB Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 DeRisi, Iyer, Brown; Science, 1998 • X.000 Gensequenzen auf einem Chip • Zelle T zum Zeitpunkt Y • Spot: Gen A18 war in Zelle T zu Zeitpunkt X mit Intensität K exprimiert ¾ Korrelation von Genaktivität ¾ Zelltyp, Umgebung zum Zp. T, gesundes / krankes Gewebe ¾ Ca. 1 TB Rohdaten pro Screening Gen Expressionsdaten 42 ... mit Intensität Intensität 10 ... Ein SPOT Hybridisierung Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 ... Durchführim Labor ender X ... ... Bibliothek aus Experiment Darmzellen... ... zwischen Zelle aus Probe Kolorektalkarzinom bei 42° ... Genexpression - Daten 43 ... mit linearer Erkennung Normalisierung ... ... und Koordinate Target A18 (CD44) ... Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 44 Welches Labor produziert dauernd Ausreißer ? Welche Gene werden in Tumorgewebe gemeinsam mit Intensitäten über 5 exprimiert, gruppiert nach Auswertungsverfahren Wie stark unterscheiden sich die Ergebnisse pro Kombination Probe-Bibliothek, unterschieden nach Auswertverfahren und Labor Genexpression - Fragen • • • • Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Amazon • Customers who bought X also bought Y • Personalisierte Empfehlungen • Neuerscheinungen 45 Customer Relationship Management Vertriebswege, Vertriebsorganisationen Kundenkäufe, Präferenzen, Kontaktdaten, Reklamationen, Bonität Wer sind Premiumkunden -> Sonderbehandlung Beratungssysteme, Personalisierung , Mailings Weitere Anwendungsgebiete Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 • Gewinn-Verlustrechnung, Bilanzierung • Kostenrechnung, Vollkostenrechnung • Kennzahlensysteme, Balanced Scorecard 46 Controlling & Kostenrechnung • Kostenstellen, Kostenträger, Kostenarten • Organisationseinheiten, Tochterunternehmen • Plan – Ist Zahlen, Szenarios Weitere Anwendungsgebiete –2- Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 – Studienüberwachung – Wirkstoffanalyse • Health Care – Kreditkartenanalyse – Risikoanalysen – Fraud Detection • Finanzen – Flottenmanagement – Disposition – Tracking • Logistik Weitere Anwendungsgebiete –3- 47 Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 – NCR Teradata 48 – „Wal-Mart ... will expand its data-warehouse system, which handles 50,000 queries a week, from 7.5 to 24 terabytes.“ [Info. Week, 1997] – „At 70 terabytes and growing ...“ [Wes, 2000] – „... 300 Terabyte Datenbank“ [Computerzeitung, 16/2003] • Walmart – 100 Terabyte – IBM, DB2 • Deutsche Telecom – 20 Terabyte – >100 Milliarden Record – Datenbank: Oracle 8i • British Telecom Was sind große Datenbanken ? Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 – Release 104, Flatfile: Ca. 100 Gigabyte – Aber eindrucksvolles Wachstum ... • Genbank (Humanes Genom) – [ct, 1/2003, Heise Verlag] – 10 Terabyte Rohdaten – 15.000 PC, redundante Datenhaltung – 1 Petabyte • Beispiel: Google 49 Quelle: EMBL, Stand 17.2.2003 Was sind große Datenbanken –2- TPC-C TPC-H TPC-R TPC-W TPC-D Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 – TPC-H: 100 GB - 300 GB - 1 TB - 3 TB 50 OLTP Benchmark Ad-Hoc Decision Support (variable Anteile) Reporting Decision Support (fixe queries) eCommerce Transaktionsprocessing Abgelöst durch H und R • Vorgegebene Schemata (Lieferwesen) • Schema-, Query- und Datengeneratoren • Unterschiedliche DB-Größen – – – – – • Vergleich der Leistungsfähigkeit von Datenbanken TPC Benchmarks Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Quelle: http://www.tpc.org, Januar 2003 TPC-H Ergebnisse 100 GB 51 Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 Quelle: http://www.tpc.org TPC-H Ergebnisse 3000 GB 52 Ulf Leser: Data Warehousing, Vorlesung, SoSe 2003 53 • [Inm96]: Inmon: „Building the Data Warehouse“, John Wiley & Sons, 1996. • [BG01]: Bauer, Günzel: „Data Warehouse Systeme: Architektur, Entwicklung, Anwendung“, dpunkt.Verlag, 2001 • [CCS93]: E.F. Codd, S.B. Codd, and C.T. Smalley: „Providing OLAP (Online Analytical Processing) to UserAnalysts: An IT Mandate“, Essbase White Paper, 1993 • [WesS00] Paul Westerman: „Data Warehousing: Using the Wal-Mart Model“, Morgan Kaufman Pub, 2000 Literatur