Datenbankunterstützung für Data-Warehouse-Systeme Von statistischen Datenbanken zum KDD Technische Universität Dresden Fakultät für Informatik Institut für Systemarchitektur Professur für Datenbanksysteme Wolfgang Lehner DB-Stammtisch, 12.11.2003 Inhaltsübersicht Teil 1: Einleitung Teil 2: Anwendungen Teil 3: Datenbanktechnik Historie Multidimensionale Analyse Optimierungsmöglichkeiten Infrastruktur Assoziationsregeln MatViews Cluster-Suche Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Von statistischen Datenbanken zum KDD TU Dresden (Datenbanksysteme) 2 1 EINLEITUNG: HISTORIE UND ANWENDUNGEN ❏ Statische Auswertung empirisch erfasster Massendaten • erste erfolgreiche Anwendung von Datenverarbeitungsanlagen • 1890 Geburtsstunde • rechnergestützte Auswertung der amerikanischen und österreichischen Volkszählungsdaten • Verwendung von Hollerith-Maschinen • bis in die 50er Jahre • Dominanz der elektromechanischen Lochkartenmaschine (Bull, 1925) • weitere Meilensteine • Transistortechnologie (v. Neumann-Konzept!) • Magnettrommelspeicher (Billing & Booth, 1947) • Magnetband im Mark III (Aiken) • ... zukünftige Entwicklungen ... Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Einleitung: Historie und Anwendungen TU Dresden (Datenbanksysteme) 3 Datenbankgestützte Auswertung von Massendaten ❏ ... von statistischen Datenbanken zu Data-Warehouse-Systemen • 1970: Codd stellt das relationale Datenmodell vor • 1975 • 1st SIGMOD-Datenbankkonferenz, San Jose (CA) • 1st VLDB-Konferenz, Framingham (MA) • 1981: 1st LBL Workshop on Statistical Database Management, Melno Park (CA) SSDB Auswertung wissenschaftlicher Datenbestände Zensusdaten Betriebswirtschaftliche Kennzahlen MIS / EIS / Reporting / ... • 1995: Definition: “Data-Warehouse-System” von W.H. Inmon • 200x: Datenbankbasierte Infrastruktur für Integration und Analyse Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Einleitung: Historie und Anwendungen TU Dresden (Datenbanksysteme) 4 Typische SSDB-/Data-Warehouse-Anwendungen ❏ Palomar Observatory Sky Survey Projekt • 3 Terabyte Bilddaten • schätzungsweise 2 Milliarden astronomisch relevante Objekte • Auswertung: SKICAT (http://www-aig.jpl.nasa.gov/public/mls/skicat/skicat_home.html) • Bildsegmentierung und Feature-Belegung (40 Attribute) • Klassifikation von Objekten (Sterne bzw. Galaxien) ❏ NASA Earth Observing System (EOS) • 1,9 TeraByte Datenvolumen pro Tag (10 PetaByte Gesamtvolumen) • Erfassungszeitraum: 15 Jahre • nur 10% des Datenmaterials wird analysiert • Echtzeit-Übernahme des Messdatenstroms (51 MegaBit/sec bzw. 553 GigaByte pro Tag) • jährlich ca. 100.000 Benutzer der EOS-Datenbank mittlere Objektgröße als Resultat einer Anfrage: 10 MegaByte Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Einleitung: Historie und Anwendungen TU Dresden (Datenbanksysteme) 5 Betriebswirtschaftlicher Bereich ❏ Woolworth • 800 Filialen, 45000 Produkte, 16.000 Angestellte • 300 Millionen Kundentransaktionen / Jahr • zwischen 32-750 parallele Benutzer des DWS • Zentrales DHW integriert 20 operative Systeme (Verkaufszahlen, Lagerverwaltung, Planungsinstrumente, ...) ➪ enormer Integrationsaufwand ❏ BMW-Group • 97.300 Angestellte, 40Mrd. Euro Umsatz • zweistufige IT-Infrastruktur • Zentrale IT pflegt seit 20 Jahren UWDM • Resort-IT-Projekte müssen sich gegenüber dem UWDM abgleichen ➪ minimaler Integrationsaufwand beim Aufbau eines zentralen DWS Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Einleitung: Historie und Anwendungen TU Dresden (Datenbanksysteme) 6 Klassisch statistischer Bereich ❏ GfK Nürnberg Gesellschaft für Absatz, Markt- und Konsumforschung • weltweit tätig, Marktführerschaft in Europa, Kooperationen in USA und Asien • TV-Einschaltquotenermittlung, Außenwerbung, Regionalforschung, Ad-HocMarktforschung, Konsumentenverhalten • DWH im Bereich Non-food • 250.000 betrachtete Artikel, 8000 Geschäfte in Deutschland (15 Kanäle, 50 Regionen) • wöchentliche/monatliche Berichtsperiodizität • Aufzeichnung aller Abverkäufe von Gebrauchs- und Konsumartikel • Datenbestand online: 5 Jahre für Trendanalyse ❏ Beispiel IMS Health • erfasst seit 1969 alle in Apotheken eingelösten (Kassen-) Rezepte • Identifikation von Arzneimitteln und verschreibenden Arzt • Klassifikation nach geographischen Aspekten, Fachrichtungen, Wirkstoffen • Kunden: überwiegend Pharmafirmen Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Einleitung: Historie und Anwendungen TU Dresden (Datenbanksysteme) 7 Methoden im Bereich der statistischen Datenanalyse Analyse Integration Extraktion Transformation Schemaanpassung Datenanpassung Laden Reporting,... gemeinsame Datenbasis - logisch konsistent - physisch optimiert Business Intelligence OLAP Data Mining Knowledge Discovery ... Data-Warehouse-Systeme Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Einleitung: Historie und Anwendungen TU Dresden (Datenbanksysteme) 8 Versuch einer Definition ❏ ... nach W.H. Inmon • A Data Warehouse is a subject-oriented, integrated, time-varying, non-volatile collection of data in support of the management's decision-making process. ❏ ... nach Fayyad, Piatetsky-Shapiro & Smyth 1996 • Knowledge Discovery in Databanken (KDD) ist der Prozess der (semi-) automatischen Extraktion von Wissen aus Datenbanken, das gültig, bisher unbekannt und potentiell nützlich ist. • Data Mining ist die Anwendung effizienter Algorithmen, die die in einer Datenbank enthaltenen Muster liefern. Data Mining Vorgehensmodelle ... Interpretation Evaluation Wissen Transformation Vorverarbeitung Fokussieren Selektion vorverarbeitete Muster transformierte Daten Daten Daten Zieldaten Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Einleitung: Historie und Anwendungen TU Dresden (Datenbanksysteme) 9 Anforderungen an das Datenbanksystem Data Mining Erweiterung der Anfragesprache Komplexität der Anwendung OLAP Reporting,... SQL Interne Unterstützung/ Optimierung Integration von Funktionalität in das DBS Datenbankverwaltungssystem Datenbank Datenbanksystem Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Einleitung: Historie und Anwendungen TU Dresden (Datenbanksysteme) 10 Gründe für den Einsatz von Datenbanksystemen ❏ Konsistenzerhaltung der Datenbasis • strukturelle Konsistenz • Widerspruchsfreiheit: logische und physische Konsistenz • Vermeidung redundanter Daten (keine privaten / lokale abgelegten) Daten • operationale Konsistenz • Transaktionenkonzept ❏ Effizienz • Unterstützung bei der Suche nach abgelegten Daten • Deskriptive Formulierung von Anfragen ❏ Fehlertoleranz • Synchronisation im Mehrbenutzerbetrieb • Abfangen von System-, Geräte- und Medienfehler Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Einleitung: Historie und Anwendungen TU Dresden (Datenbanksysteme) 11 Gründe für den Einsatz von Datenbanksystemen (2) ❏ Integrationswerkzeug • ANSI/SPARC 3-Schema-Schichtenarchitektur Anwendungen Externe Schemata Datenneutralität Transformation Konzeptionelles Schema . . . Datenunabhängigkeit Interne Schemata Speichermedien Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Einleitung: Historie und Anwendungen TU Dresden (Datenbanksysteme) 12 Komponenten eines Data-Warehouse-Systems Data-Warehouse-System Konzept. Schema Metadaten-Repositorium Externe Schemata Bereich zur Datenanalyse Data-Mart-Datenbasen Interne Aktualisierung Bereich zur Datenbereitstellung Dispositive Datenbasis Detaildaten ANSI SPARC 3-SchemaSchichtenarchitektur! Summendaten Interne Aktualisierung Bereich zur Datenkonsolidierung Konsolidierte Datenbasis Externe Aktualisierung Interne Aktualisierung Interne Schemata Transformation Basisdaten OperationalData-StoreSysteme Bereich zur Datenbeschaffung und Transformation Externe Aktualisierung Externe Aktualisierung Quellsysteme Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Einleitung: Historie und Anwendungen TU Dresden (Datenbanksysteme) 13 Data-Warehouse-System als Integrationsplattform Externe Schemata Externe Schemata Konzeptionelles Schema Externe Schemata Data-MartSchema Externe Schemata ... Externe Data-WarehouseSchemata Data-MartSchema Externe Schemata . . . Interne Schemata Analyseschema Konzeptionelles Data-WarehouseSchema Schematranslation Externe Schemata Basisschema Partielle Schemaintegration Schematranslation ODSSchema Data-StagingSchema ... Datenextraktion Extraktionsschema Extraktionsschema ... Interne Data-WarehouseSchemata Extraktionsschema Schemaextraktion Lokales konzeptionelles Quellenschema Lokales konzeptionelles Quellenschema Lokale interne Quellenschemata Lokale interne Quellenschemata Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Einleitung: Historie und Anwendungen TU Dresden (Datenbanksysteme) 14 Eigenschaften eines Data-Warehouse-Systems ❏ Auswertungsorientierte Organisation der Daten • Fachorientierung (engl. subject orientation) • Modellierung eines spezifischen Anwendungsziels ❏ Integration von Daten aus unterschiedlichen Quellsystem • Integrierte Datenbasis (engl. integration) • Integration auf struktureller Ebene und Datenebene mehrerer Datenbanken ❏ Keine Aktualisierung durch den Benutzer • Nicht flüchtige Datenbasis (engl. non-volatile) • Stabile Datenbasis; einmal eingebrachte Daten werden nicht mehr entfernt oder geändert, nur lesender Zugriff ❏ (Optionale Historisierung mit expliziter temporaler Modellunterstützung) • Historische Daten (engl. time variance) • Daten werden über einen längeren Zeitraum gehalten Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Einleitung: Historie und Anwendungen TU Dresden (Datenbanksysteme) 15 Inhaltsübersicht Teil 1: Einleitung Teil 2: Anwendungen Teil 3: Datenbanktechnik Historie Multidimensionale Analyse Optimierungsmöglichkeiten Infrastruktur Assoziationsregeln MatViews Cluster-Suche Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Einleitung: Historie und Anwendungen TU Dresden (Datenbanksysteme) 16 2 MULTIDIMENSIONALE ANALYSE ❏ Ausgangspunkt für OLAP (OnLine Analytical Processing) • Komplex Strukturierte Statistische Tabelle • Direkte Abbildung auf multidimensionale Datenwürfel Süddeutschland Norddeutschland Verkäufe Supermarkt Fachmarkt Einzelhandel Σ Supermarkt Fachmarkt Einzelhandel Σ Σ Sony JVC Grundig Σ 12 48 58 118 31 67 66 164 15 55 51 121 58 170 175 403 22 50 67 139 51 100 57 208 41 62 51 154 114 172 212 382 175 350 501 904 Multidimensionaler Datenwürfel 58 114 212 175 170 175 403 172 382 350 12 48 904 58 66 51 Statistische Tabelle 501 118 164 121 139 Supermarkt 208 Fachmarkt 154 Einzelhandel Süddeutschland Norddeutschland Sony JVC Grundig Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Multidimensionale Analyse TU Dresden (Datenbanksysteme) 17 Eigenschaften der multidimensionalen Modellierung ❏ Eigenschaften • Abbildung komplex strukturierter Begriffswelten in Form hierarchischer Dimensionsstrukturen • Spezifische Operatoren zur Unterstützung des explorativen Charakters nd La e gio n R dt S ta Produkte • Inhärente Unterscheidung quantifizierender und qualifizierender Attribute ... ... • “Verallgemeinerung” der flachen Tabelle eines relationalen Ansatzes Jahr Monat Tag Gebiet Gruppe Familie Artikel Zeit Ge o p g ra hieMenge Preis ❏ Instanz eines Datenwürfels • alle Würfelzellen aus dem Definitionsbereich des Datenwürfels • nicht Teilmenge wie im relationalen Modell! ❏ Achtung: Würfel ist nur eine Metapher! Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Multidimensionale Analyse TU Dresden (Datenbanksysteme) 18 Operatoren im Multidimensionalen Modell ❏ “Slice and Dice” • Selektion eines Teilwürfels ❏ “Roll Up” / “Drill-Down” • Aggregation / De-Aggregation Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Multidimensionale Analyse TU Dresden (Datenbanksysteme) 19 Umsetzung des multidimensionalen Datenmodells MOLAP-Ansatz ROLAP-Ansatz HOLAP-Ansatz Client Client Client Präsentation Präsentation Server Präsentation Server Server MDDB OLAP Interface OLAP-Server Anwendungslogik und multidimensionale Datenhaltung (MDDB) RDBMS relationale Datenhaltung OLAP-Server RDBMS relationale Datenhaltung Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Multidimensionale Analyse TU Dresden (Datenbanksysteme) 20 Vergleich der Datenbankentwurfstechniken Anforderungsanalyse Konzeptioneller DB-Entwurf Logischer DB-Entwurf Physischer DB-Entwurf Konzeptionelles Schema (unabhängig vom Zieldatenmodell) Logisches Schema (in konkretem Datenmodell) Internes Schema (in konkretem Datenbanksystem) Klassisch relationaler DB-Entwurf Varianten der Entity-RelationshipMethode Relationen mit Attributen Speicherorganisation (Primär- und Sekundärindexe, Partitionierung, ...) Multidimensionaler DB-Entwurf diverse Entwurfsnotationen (mE/R, mUML, ...) - Datenwürfel mit Summenattributen: - Fakten und Kennzahlen Dimensionshierarchien mit Kategorieattributen: - Relationale Speicherorganisation (ROLAP) - Multidimensionale Speicherorganisation (MOLAP) Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Multidimensionale Analyse TU Dresden (Datenbanksysteme) 21 Relationale Abbildung ❏ Star-Schema PART PartKey • Zentrale Faktentabelle • kompositer Primärschlüssel aus den Dimensionen - eindeutige Kennzeichnung der Fakten relativ wenig Tupel (weniger als 10% der Fact-Table) LINEITEM Faktentabelle N Size N 1 OrderStatus OrderDate N Name PartKey Address SuppKey Nation Region Quantity LineStatus ShipMode Faktentabelle ... • Quantity LineStatus ShipMode ... OrderKey Nation viele Spalten, da Strukturdaten • normalisierte Dimensionstabellen Type Name • ... ... LINEITEM SuppKey • Dimensionstabellen OrderKey N PartKey SuppKey MFGR OrderKey ... wenige Spalten - viele Tupel (Millionen - Milliarden Tupel) ❏ SnowflakeSchema 1 Brand ... • ORDERS 1 SUPPLIER ORDERS 1 OrderKey CustKey N OrderStatus OrderDate ... CUSTOMER 1 CustKey Name Address NationKey N Phone ... NATION 1 NationKey Name RegionKey Comment REGION 1 N RegionKey Name Comment normalisierte Auftragsdimension Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Multidimensionale Analyse TU Dresden (Datenbanksysteme) 22 Unterstützung vom Datenbanksystem: CUBE-Operator Verkäufe( Region Norddeutschland Norddeutschland Norddeutschland Norddeutschland Norddeutschland Norddeutschland Norddeutschland Norddeutschland Norddeutschland Süddeutschland Süddeutschland Süddeutschland Süddeutschland ... 58 114 212 175 170 175 403 172 382 350 12 48 Geschäftstyp Supermarkt Supermarkt Supermarkt Fachmarkt Fachmarkt Fachmarkt Einzelhandel Einzelhandel Einzelhandel Supermarkt Supermarkt Supermarkt Fachmarkt Marke Verkäufe) Sony 12 JVC 48 Grundig 58 Sony 31 JVC 67 Grundig 66 Sony 15 JVC 55 Grundig 51 Sony 22 JVC 50 Grundig 67 Sony 51 501 Anwendung des CUBE-Operators 904 58 118 66 164 Verkäufe( Region Norddeutschland Norddeutschland Norddeutschland Norddeutschland Norddeutschland Norddeutschland Norddeutschland Norddeutschland Norddeutschland Norddeutschland Norddeutschland Norddeutschland Norddeutschland Süddeutschland ... Süddeutschland ALL ALL ALL ALL ALL ... ALL ALL ALL ALL 139 Supermarkt 208 Fachmarkt Einzelhandel 121 Süddeutschland Norddeutschland Geschäftstyp Supermarkt Supermarkt Supermarkt Supermarkt Fachmarkt Fachmarkt Fachmarkt Fachmarkt Einzelhandel Einzelhandel Einzelhandel Einzelhandel ALL Supermarkt Marke Verkäufe) Sony 12 JVC 48 Grundig 58 ALL 118 Sony 31 JVC 67 Grundig 66 ALL 164 Sony 15 JVC 55 Grundig 51 ALL 121 ALL 403 Sony 22 ALL Supermarkt Supermarkt Supermarkt Supermarkt Fachmarkt ALL Sony JVC Grundig ALL Sony 501 34 98 155 257 82 ALL ALL ALL ALL Sony JVC Grundig ALL 172 382 350 904 154 51 Sony JVC Grundig Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Multidimensionale Analyse TU Dresden (Datenbanksysteme) 23 Inhaltsübersicht Teil 1: Einleitung Teil 2: Anwendungen Teil 3: Datenbanktechnik Historie Multidimensionale Analyse Optimierungsmöglichkeiten Infrastruktur Assoziationsregeln MatViews Cluster-Suche Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Multidimensionale Analyse TU Dresden (Datenbanksysteme) 24 3 ASSOZIATIONSREGELN ❏ Ziel • Beschreibung häufig auftretender und starker Zusammenhänge in Datenbanken • Beispiel Warenkorbanalyse: Einkäufe im Supermarkt “{Mehl, Eier} ⇒ {Butter}” • allgemein: X ⇒ Y, wobei X ∩ Y = ∅ • Einschränkung: X ⇒ Y hat mindestens Support smin und Konfidenz cmin ❏ Terminologie • Transaktion: Menge von Datenobjekten (items), die zusammen auftreten • Support der Menge X • Prozentsatz der Transaktionen, die X enhalten • “frequent item set”: supp(X) > smin • Support s einer Assoziationsregel X ⇒ Y • relative Häufigkeit des gemeinsamen Auftretens aller in der Regel vorkommenden Datenobjekte (Support von X ∪ Y) • Konfidenz c einer Assoziationsregel X ⇒ Y • c% aller Transaktionen, die X enthalten, enthalten auch Y Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Assoziationsregeln TU Dresden (Datenbanksysteme) 25 Bestimmung von Assoziationsregeln ❏ Beispiel • Bestimmung des Supports • (A): 75% • (B), (C): 50% • (D), (E), (F): 25% • (A, C): 50% • (A, B), (A, D), (B, C), (B, E), (B, F), (E, F): 25% • Bestimmung von Assoziationsregeln, deren Support und Konfidenz größer als vorgegebene Schranken sind • A ⇒ C (Support = 50%, Konfidenz = 66.6%) • C ⇒ A (Support = 50%, Konfidenz = 100%) Lfd Nr. Objekte 1 A,B,C 2 A,C 3 A,D 4 B,E,F smin = 50% cmin = 50% A C ❏ Naiver Ansatz • Generierung aller und nachträgliche Eliminierung schwacher Regeln Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Assoziationsregeln TU Dresden (Datenbanksysteme) 26 Apriori-Ansatz ❏ Auffinden aller häufig auftretenden Itemsets • Beobachtung (Monotonie-Eigenschaft) • Jede Teilmenge eines häufig auftretenden Itemsets ist selbst auch häufig • Folgerung • Nur Test von Itemsets der Größe k, die durch häufig auftretende Itemsets der Größe k-1 gebildet werden können ❏ Bildung von Assoziationsregeln für alle häufig auftretende Itemsets X • Beobachtung • für jede Teilmenge A ⊆ X besitzt die Regel A ⇒ (X − A) minimalen Support • Folgerung • Betrachtung aller möglichen Teilmengen • (X) Bestimmung der Konfidenz: conf(A ⇒ (X − A)) := supp ----------------------supp ( A ) ❏ Datenbankunterstützung • ? Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Assoziationsregeln TU Dresden (Datenbanksysteme) 27 Unterstützung durch Datenbanksysteme ❏ ... eigentlich: Fehlanzeige !!! • Nutzung von OLAP-Operatoren, z.B. CUBE()-Operator • Problem • Generierung ALLER möglichen Kombinationen • Explosion bei Vielzahl von Artikeln • z.B. Woolworth mit 45.000 Artikel CUBE(A, B, C) CUBE(A) -> 245.000 Kombinationen CUBE(A, B) Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Assoziationsregeln TU Dresden (Datenbanksysteme) 28 Unterstützung durch Datenbanksysteme ❏ ... eigentlich: Fehlanzeige !!! • Nutzung von OLAP-Operatoren, z.B. CUBE()-Operator CUBE(A, B, C) • Problem • Generierung ALLER möglichen Kombinationen • Explosion bei Vielzahl von Artikeln • z.B. Woolworth mit 45.000 Artikel -> 245.000 Kombinationen GROUPING COMBINATIONS((A, B, C),2) ❏ SQL-Erweiterung • GROUPING COMBINATIONS() • d Generierung aller ⎛⎝ k⎞⎠ Gruppierungskombinationen • interne Selektionsmöglichkeit hinsichtlich Support • interne Optimierung der Berechnung Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Assoziationsregeln TU Dresden (Datenbanksysteme) 29 Inhaltsübersicht Teil 1: Einleitung Teil 2: Anwendungen Teil 3: Datenbanktechnik Historie Multidimensionale Analyse Optimierungsmöglichkeiten Infrastruktur Assoziationsregeln MatViews Cluster-Suche Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Assoziationsregeln TU Dresden (Datenbanksysteme) 30 4 CLUSTER-SUCHE ❏ Problem • Auffinden von Häufungen im multidimensionalen Datenraum ❏ Ziel des Clustering • Identifikation einer endlichen Menge von Kategorien/Klassen (Clustern) • Objekte im gleichen Cluster sind möglichst ähnlich zueinander • Objekte aus verschiedenen Clustern sind möglichst unähnlich zueinander ❏ notwendig: Distanzfunktion / Metrik • Für Datensätze x = (x1, ..., xd) mit numerischen Attributswerten xi Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Cluster-Suche TU Dresden (Datenbanksysteme) 31 Klassen von Clusterverfahren ❏ Partionierende Verfahren • Konstruktion zentraler Punkte (Centroide) / repräsentativer Punkte (Medoide) Schlechtes Clustering Optimales Clustering x 5 x 5 x x x 5 1 x 1 1 x 1 Mittelwerte x 1 5 Schlechtes Clustering 1 Mittelwerte 5 Optimales Clustering Medoide 5 5 5 1 1 1 5 Medoide 1 5 ❏ Hierarchische Verfahren • Erstellung von Dendogrammen Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Cluster-Suche TU Dresden (Datenbanksysteme) 32 Klassen von Clusterverfahren ❏ Dichtebasiertes Clustering • Erreichbarkeit / Verbundenheit innerhalb einer ε-Umgebung ❏ Dichteschätzungsbasierte Verfahren • Anwendung einer Kern-Funktion und Bestimmung der Dichte • Suche nach attraktiven Punkten x*: fD(x*) > ξ Datenmenge Kern Funktion Dichte Funktion Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Cluster-Suche TU Dresden (Datenbanksysteme) 33 Eigenschaften ❏ Vorteil dichtebasierter Verfahren • Trennung von Dichteschätzung und Clusterermittlung Cluster-Algorithmus Ergebnis Dichteschätzung Cluster-Analyse ❏ Dichteschätzung • ... basierend auf Histogrammen • ... basierend auf Repräsentanten ❏ Unterstützung durch Datenbanksysteme ??? Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Cluster-Suche TU Dresden (Datenbanksysteme) 34 Probleme in hochdimensionalen Datenräumen ❏ Beobachtung • Qualität der Dichteschätzung nimmt mir zunehmender Dimensionalität ab ❏ Idee • Clustersuche in niedrig-dimensionalen Teilräumen DB-Unterstützung ? • GROUPING COMBINATIONS()-Operator • generiert alle k-dimensionalen Teilräume eines n-dimensionalen Raum • Nutzung von Assoziationsregeln, um Cluster im hochdimensionalen Raum zu identifizieren DB-Unterstützung ? • GROUPING COMBINATIONS()-Operator • generiert alle häufigen Itemsets zur Berechnung der Assoziationsregeln Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Cluster-Suche TU Dresden (Datenbanksysteme) 35 Inhaltsübersicht Teil 1: Einleitung Teil 2: Anwendungen Teil 3: Datenbanktechnik Historie Multidimensionale Analyse Optimierungsmöglichkeiten Infrastruktur Regelsuche MatViews Cluster-Suche Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Cluster-Suche TU Dresden (Datenbanksysteme) 36 5 DATENBANKOPTIMIERUNG ❏ Aufgabe der Anfrageverarbeitung • korrekte und möglichst effiziente Abarbeitung der Anfrage zu planen • Initiierung der tatsächlichen Ausführung • Lese-Anweisungen (SELECT) • Modifikationsansweisungen (INSERT, UPDATE, DELETE, ref. Integritäten) ❏ Übersicht der Anfrageverarbeitung Anfrageoptimierung Anfrage Interndarstellung Zugriffs- & Integritätskontrolle Anfragerestrukturierung Anfragetransformation Anfrageausführungsplan (QEP) Ergebnis Ausführungskontrolle & Ergebnisbereitstellung Codeerzeugung Planparametrierung Logischer DB-Prozessor (Anfrageprozessor) Übersetzungszeit Laufzeit Physischer DB-Prozessor (Anfrageauswertungssystem) Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Datenbankoptimierung TU Dresden (Datenbanksysteme) 37 Rahmenmodell für logische Zugriffspfade Externe Schemata Ebene der Basisdaten R1 Konzeptionelles Schema R2 . . . Interne Schemata Ebene der Materialisierung MV2 MV1 logische Zugriffspfade P11 Ebene der Partitionierung Ebene der Indexstrukturen P12 P31 B*-Baum Grid-File kB-Baum Bestandteil des konzeptionellen Schemas HeaderCompression R*-Baum UB-Baum physische Zugriffspfade Bestandteil des internen Schemas Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Datenbankoptimierung TU Dresden (Datenbanksysteme) 38 Idee der Materialisierten Sichten ❏ Beobachtung • statistische Anfragen folgen bestimmten Mustern (Star-Queries) • (partielle) Vorberechnung zur Ladezeit -> einmalig ! • transparente Nutzung zur Anfragezeit -> vielfach ! ❏ Query SELECT P.Group, L.State, SUM(F.Sales) FROM Fact_Sales F NATURAL JOIN Product P NATURAL JOIN Location L WHERE L.Country = "France„ GROUP BY P.Group, L.State; ❏ Zentrale Probleme • Transparentes Query-ReRouting (analog zur Index-Nutzung) • Synchronisierung mit Änderungen der Basisdaten • Auswahl von zu materialisierenden Sichten ❏ Summary Table CREATE TABLE Fact_Sales_View AS ( SELECT P.Family, L.City, T.Year, SUM(F.Sales), COUNT(F.Sales) FROM Fact_Sales F NATURAL JOIN Product P NATURAL JOIN Location L NATURAL JOIN Time T GROUP BY P.Family, L.City, T.Year); Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Datenbankoptimierung TU Dresden (Datenbanksysteme) 39 Beispiel zur transparenten Nutzung von Vorberechnungen SELECT prodid, SUM(sales) FROM fact GROUP BY prodid; CREATE TABLE ast2 AS ( SELECT prodid , SUM(sales) AS sum_sales, COUNT(*) AS cnt FROM fact GROUP BY prodid) data initially deferred refresh immediate; Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Datenbankoptimierung TU Dresden (Datenbanksysteme) 40 Beispiel zur transparenten Nutzung von Vorberechnungen (2) SELECT city, brand, group FROM fact f, products p, shops s WHERE f.shopid = s.shopid AND f.prodid = p.prodid GROUP BY city, brand, group; CREATE table ast1 AS ( SELECT city, state, country, familiy, group, area, color, brand FROM fact f , products p, shops s WHERE f.shopid = s.shopid AND f.prodid = p.prodid GROUP BY ROLLUP(country, state, city), ROLLUP(area, group, familiy), CUBE(brand, color)) data initially deferred refresh immediate; Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Datenbankoptimierung TU Dresden (Datenbanksysteme) 41 Beispiel zur transparenten Nutzung von Vorberechnungen (3) a) Anfrageausführungsplan ohne materialisierte Summendaten Geschätzte Kostenreduktion: ca. 90% b) Anfrageausführungsplan mit materialisierten Summendaten Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Datenbankoptimierung TU Dresden (Datenbanksysteme) 42 6 ZUSAMMENFASSUNG ❏ Data-Warehouse-Systeme • Rahmenmodell für die Integration heterogener / operativ betriebender Datenbanken • Umfassende Auswertung lokal abgelegter Datenbestände ❏ Methoden der Datenanalyse • Multidimensionale Analyse • Assoziationsregeln • Bestimmung von Cluster ❏ Anforderungen an Datenbanktechnik • Speicherung & Auswertung “großer” Datenbestände • Zentrale Frage • Wieviel spezifische Funktionalität geht in das Datenbanksystem • Was sind erweiterte Datenbankoperatoren • Interne Realisierung Von Statistischen Datenbanken zum KDD © Prof. Dr.-Ing. Wolfgang Lehner Zusammenfassung TU Dresden (Datenbanksysteme) 43