Die Präsentation wird geladen. Bitte warten

Die Präsentation wird geladen. Bitte warten

Bitmap Indizes in Data Warehouses Stefanie Tornow 64694 1 Seminar SS 2006 Bitmap Indizes in Data Warehouses.

Ähnliche Präsentationen


Präsentation zum Thema: "Bitmap Indizes in Data Warehouses Stefanie Tornow 64694 1 Seminar SS 2006 Bitmap Indizes in Data Warehouses."—  Präsentation transkript:

1 Bitmap Indizes in Data Warehouses Stefanie Tornow Seminar SS 2006 Bitmap Indizes in Data Warehouses

2 Bitmap Indizes in Data Warehouses Stefanie Tornow Gliederung (I) 1.Data Warehouses – OLTP – OLAP 2.Überblick über Indizierungstechniken 3.Bitmap Index 1.Standard Bitmap Index 2.Kodierung (a) Mehrkomponenten Bitmap Index (b) Bereichskodierte Bitmap Index (c) Mehrkomponenten-bereichskodierte Bitmap Index (d) Intervallkodierte Bitmap Index 4.Bitmap Join Index

3 Bitmap Indizes in Data Warehouses Stefanie Tornow Komprimierung 1.Run-length encoding 2.Huffman encoding 3.hierarchisches encoding 4.Bewertung der Komprimierungstechniken 6.Kommerzielle Anwendungen mit Bitmap Indizes 7.Bewertung in bezug auf Data Warehouses Gliederung (II)

4 Bitmap Indizes in Data Warehouses Stefanie Tornow ● große Datenmengen müssen verwaltet werden ● in Data Warehouses große Tabellen mit Daten  Full-Table-Scan nicht sinnvoll  Antwort auf Anfragen umfasst oft nur wenige Prozent der Daten  Indizierung sinnvoll, um Anzahl der zu lesenden Daten zu reduzieren  Entwicklung hocheffizienter Zugriffstechniken notwendig ● Vermeidung des satzweisen durchsuchen der Daten ● durch zusätzlichen Speicheraufwand von Indizes, suchen nach Methoden, die diesen reduzieren Motivation

5 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Data Warehouse ● von operativen Datenbanken getrennte Decision-Support DB ● ermöglicht effizienten Zugriff auf Informationen aus unterschiedlichen Quellen ● ist multidimensional modelliert & dient der langfristigen Speicherung historischer, validierter, operativer, interner & externer Datenbestände ● Vergleich OLTP - OLAP Data Warehouses – OLTP – OLAP

6 Bitmap Indizes in Data Warehouses Stefanie Tornow ● eindimensionale Indexstrukturen – B-Bäume– B*-Bäume – lineares Hashing ● mehrdimensionale Indexstrukturen – R-Bäume – Grid-Files – UB-Bäume ● ein- und mehrdimensionale Indexstrukturen – Bitmap Indizes Überblick über Indexstrukturen

7 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Grundidee ist das Nutzen eines einfachen Bits ● für jeden Attributwert eine Bitliste anlegen (enthält so viele Positionen, wie es Tupel in Faktentabelle gibt) ● Bit wird 1 gesetzt, wenn indiziertes Attribut die Ausprägung besitzt ● Bit wird 0 gesetzt, wenn indiziertes Attribut eine andere Ausprägung besitzt ● Beispiel: Standard BI auf Attribut „Geburtsmonat“ Standard Bitmap Index (I)

8 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Beispielanfrage: „Ausgabe aller im Juni geborenen Männer“ ● bitweise konjunktive Verknüpfung der Bitmap-Vektoren und ● Ergebnistabelle: AND= Standard Bitmap Index (II)

9 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Vorteile: – Operationen sind effizient zu implementieren – einfache, effiziente logische Verknüpfbarkeit – Bitmap-Vektoren können im Hauptspeicher boolsche Operationen ausführen – erstellen/pflegen von Bitmap Indizes weniger zeit- & raumintensiv als bei B-Bäumen – arbeiten effizient zusammen, um den Suchraum zu reduzieren ● Nachteile: – hoher Speicherplatzbedarf durch: ● anlegen eines Bitmap-Vektor für jede Attributausprägung ● Tabellen mit vielen Tupeln  sehr großer Bitmap-Vektoren – viele Leseoperationen nötig Standard Bitmap Index (III)

10 Bitmap Indizes in Data Warehouses Stefanie Tornow ● mehrkomponenten-Bitmap-Index: Attribute mit bis zu n*m Ausprägungen durch n+m Bitmap-Vektoren dargestellt ● Attributwerte werden kodiert (ähnlich Konvertierg in ein anderes Zahlensystem) ● jeder Wert z des Attributs mit ist durch 2 Werte x & y mit Gleichung z = mx + y darzustellen ● Beispiel: -Mehrkomponenten BI auf Attribut Monat z = 4x + y Kodierung des Monats Juni: 5 = 4 *  Bitmap-Vektoren & auf 1 setzen Mehrkomponenten Bitmap Index

11 Bitmap Indizes in Data Warehouses Stefanie Tornow ● jeder Attributwert wird in binär kodierten Wert gespeichert ● benötigtBitmap Vektoren ● Beispiel: logarithmisch kodierter BI auf Attribut Monat - für jeden Wert wird eine retrieval function angegeben - Beispiele: Spezialfall: logarithmisch kodierter Bitmap Index

12 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Vorteile: – besitzt Vorteile des Standard Bitmap Indizes ● gemeinsames nutzen von Vektoren ● effiziente Durchführung logischer Operationen ● effizientes Zusammenarbeiten zur Reduktion des Suchraumes – Reduktion der Anzahl der Bitmap-Vektoren Mehrkomponenten Bitmap Index

13 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Nachteile: – Aufwand des Lesezugriffs für Punktabfrage erhöht sich  immer Kompromiss zw. Speicherplatzersparnis & Leseaufwand – keine Optimalität bei Bereichsanfragen – Erhaltg des Index kann zu Erweiterung des Wertebereich führen  Index muss neu erstellt werden & mögliche neue Vektoren eingefügt – logarithmische kodierte Bitmap Indizes: ● keine wirkliche Praxistauglichkeit, da immer alle Vektoren gelesen werden müssen Mehrkomponenten Bitmap Index

14 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Grundidee: – Bits aller Bitmap-Vektoren, wo zugehörige Ausprägung größer oder gleich dem Wert des aktuellen Tupels ist, auf 1 setzen ● Beispiel: bereichskodierter BI auf Attribut Monat bereichskodierter Bitmap Index

15 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Beispielanfrage (einseitig beschränkt): „Ausgabe aller nach dem Juni geborenen Menschen“  einlesen des Bitmap-Vektors  Berechnung: ● Beispielanfrage (zweiseitig beschränkt): „Ausgabe aller zwischen März und September geborenen Menschen“  einlesen der Bitmap- AND = Vektoren &  Berechnung: bereichskodierter Bitmap Index

16 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Vorteile: – einsparen eines Bitmap-Vektoren gegenüber den Standard-Bitmap Indizes – beim Beantworten einseitig beschränkten Bereichsanfragen optimal – beim Beantworten zweiseitig beschränkten Bereichsanfrage nur zwei Bitmap-Vektoren einlesen ● Nachteile: – bei Punktabfragen nicht optimal (immer lesen zweier Vektoren) bereichskodierter Bitmap Index

17 Bitmap Indizes in Data Warehouses Stefanie Tornow ● zuerst Mehrkomponenten Bitmap Index anlegen ● auf dessen Gruppen Technik der bereichskodierten Bitmap Index anwenden ● da vorderste Bitmap-Vektoren der jeweiligen Komponente immer auf 1 gesetzt  nicht abspeichern ● Beispiel: Mehrkomponenten-bereichskodierter Bitmap Index

18 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Vorteile: – Einsparung eines Bitmap-Vektors pro Komponente – Ausnutzung des Platz- & Zeitvorteils der jeweiligen Bitmap- Index-Struktur zusammen – effiziente Unterstützg von Bereichsanfragen durch bereichskodierte Bitmap Indizes – durch Komponenten, nicht für jede Ausprägg eines Attributs neuer Bitmap-Vektor anlegen ● Nachteile: – erhöhter Leseaufwand – höhere Pflege- bzw. Erhaltungskosten Mehrkomponenten-bereichskodierter Bitmap Index

19 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Kernidee: jeder Bitmap-Vektor repräsentiert bestimmtes, definiertes Intervall ● Bit genau dann 1, wenn Tupel in Intervall liegt ● Speicheraufwand nur noch halb so hoch wie bei bereichskodierten Bitmap Indizes ● Beispiel: intervallkodierter BI auf Attribut Monat entspricht 12 / 2 = 6 Bitmap-Vektoren I 0 = [0,5] I 1 = [1,6] I 2 = [2,7] I 3 = [3,8] I 4 = [4,9] I 5 = [5,10] intervallkodierter Bitmap Index

20 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Beispielanfrage: „Ausgabe aller zwischen März und September geborenen Menschen“  einlesen der Bitmap-Vektoren &  Berechnung: AND = intervallkodierter Bitmap Index

21 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Vorteile: – optimal bei allgemeneinen Bereichsanfragen – einlesen von zwei Bitmap-Vektoren – optimal für die meisten Anfragetypen – hat nur halb so viel Speicherplatzbedarf wie bei bereichskodierten Bitmap Indizes ● Nachteile: – erhöhter Pflege- bzw. Erhaltungskosten durch mögliche Dimensionserweiterung – bei Punktanfragen müssen zwei Bitmap-Vektoren eingelesen werden – bei einseitig beschränkten Bereichsanfragen kann es möglich sein, dass auch zwei Bitmap-Vektoren einzulesen intervallkodierter Bitmap Index

22 Bitmap Indizes in Data Warehouses Stefanie Tornow Vergleich des Standard-Bitmap Index & der Kodierungsverfahren ● Vergleich der Optimalität bei Anfragetypen

23 Bitmap Indizes in Data Warehouses Stefanie Tornow Vergleich des Standard-Bitmap Index & der Kodierungsverfahren

24 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Joins teuerste Operationen innerhalb DBMS ● nutzen von Foreign Column Join Indizes & Star Joins ● vom Vorteil des Star Schema Designs in Data Warehouses profitieren – Zentraltabelle (Faktentabelle) verbunden mit den Dimensionstabellen durch Fremdschlüssel Dimensionstabelle Faktentabelle Dimensionstabelle ● Join Index = Index auf eine Relation, der sich auf ein Attribut einer anderen Relation bezieht ● Idee: für jedes zu indizierende Attribut, das in Dimensionstabellen beschränkt wird, Index in Faktentabelle anlegen Bitmap Join Index

25 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Foreign Column Join Index – Beispielanfrage: SELECT KID, sum(Umsatz) FROM Verkauf v, Kunde k WHERE v.KID = k.KID AND k.Geschlecht = „m“ GROUP BY KID; FCJ ● Verallgemeinerung: Restriktionen auf mehrere Tabellen heißt Multitable Join Indexing (MTJ) ● funktioniert genauso wie FCJ ● Anzahl der FCJ steigt linear mit Anzahl der „foreign columns“ Bitmap Join Index

26 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Star Joins – erhöht die Join-Performance ohne Join Indizes zu erstellen – Annahme: es gibt einen Index auf jedes Attribut, dass in den Restriktionen involviert ist – Beispielanfrage: SELECT KID, sum(Umsatz) FROM Verkauf v, Kunde k, Produkt p WHERE v.KID = k.KID AND v.PID = p.PID AND k.Geschlecht = „m“ AND p.Marke = „x“ GROUP BY KID; – Vorgehensweise : ● alle KID-Werte für männliche Kunden selektieren ● speichern in einer temporären Tabelle T1 ● dann alle PID-Werte für Produkte der Marke x selektieren ● diese in eine andere Tabelle T2 speichern ● zuletzt kartesisches Produkt von T1xT2, um es mit einem vorher existierenden Index auf VERKAUF zu joinen Bitmap Join Index

27 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Vorteile: – effiziente Implementierung der Indizes, da Joins teure Operationen in RDBMS – geringerer Speicheraufwand im Vergleich mit Standard-Bitmap- Indizes – effizienter als implementierte Algorithmen zur Berechnung von Joins ● Nachteile: – bei großer Anzahl Daten, weniger Zeit zur Erstellung von Standard-Bitmap-Indizes als zur Erstellung von Bitmap-Join- Indizes benötigt – Hauptnachteil bei Star Joins: ist die Faktentabelle dünn besetzt  günstiger andere Technik zu nutzen Bitmap Join Index

28 Bitmap Indizes in Data Warehouses Stefanie Tornow ● run length encoding = Bitfolgen Komprimierung – Komprimierung von Eins- & Nullfolgen durch Kodiereinheiten, in denen z.B. Nullfolgen als ein Wert kodiert werden – ist ein Ansatz, der in vielen Komprimierungstechniken unterschiedlich angewendet wird ● Beispiel: – Run = Folge von Nullen mit einzelner folgender 1 – hier: 3 Runs: – komprimierter Vektor: Komprimierung – run length encoding

29 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Huffman encoding = Verfahren der Block-Komprimierung – Vorgehensweise: ● aufteilen des Vektors in Blöcke mit fester Länge ● statistisch berechnen des Auftretens der verschiedenen Bitmuster ● basierend auf Statistik, den Bitmustern Codewörter eindeutig zuordnen ● Folge der Codewörter = komprimierter Bitmap-Vektor ● hierarchisches encoding = Verfahren der Block-Komprimierung – Vorgehensweise: ● Bitmap-Vektor in Blöcke fester Länge k aufteilen ● alle „Nullblöcke“ werden gelöscht ● um Rekonstruktion zu ermöglichen: Liste anhängen, die angibt, an welcher Stelle die Blöcke im Originalvektor standen ● Beispiel: Bits k = 2: Bits k = 4: Bits Komprimierung – Huffman & hierarchisches encoding

30 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Vorteile: – hilft den Speicherbedarf auf dem Externspeicher zu reduzieren – gut anzuwenden bei dünn besetzten Bitmap Indizes ● Nachteile: – zum Arbeiten braucht man aber unkomprimierte Indizes, daher Dekomprimierung notwendig – zusätzliche Kosten bei Aufbau, Aktualisierung ● gibt kein „Bestes“ Komprimierungsschema  Ergebnisse abhängig von den Verteilungen der Nullen und Einsen im Bitmap Index Bewertung der Komprimierungstechniken

31 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Oracle – wichtigste Indextypen: ● B-Baum Indizes für OLTP Systeme ● Bitmap Indizes für Data Warehouses – Bitmap Star Transformation ● Informix – hat Version der Bitmap Indizes für Decision-Support- Systeme implementiert – testete verschiedene Komprimierungstechniken  Entscheidung für die, mit bester CPU- Performance – unterstützt auch Strategien zur Datenpartitionierung, um paralleles Auswerten von Bitmap Indizes in SQL-Anfragen zu ermöglichen kommerzielle Anwendung

32 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Bitmap Indizes beschleunigen die Anfrageauswertungen in Data Warehouses – einfache wie komplexe (über mehrere Attribute) Selektionsanfragen sind schnell ausgewertet – gute Nutzung durch verschiedene Techniken der Bitmap Indizes – effiziente Unterstützung logischer Operationen ● bei geringer Kardinalität der Attribute sind Bitmap Indizes effizient einzusetzen  Vergleichsgröße (Was heißt gering? klein?) ● nicht alle Attribute sind diskret (Wie werden kontinuierliche Werte indiziert?) ● die Pflege der Bitmap Indizes ist sehr aufwendig ● aber geringer Speicheraufwand bei Nutzung der Komprimierungstechniken  Kompromiss finden Bewertung der Bitmap Indizes

33 Bitmap Indizes in Data Warehouses Stefanie Tornow ● Chan Chee-Yong, Ioannidis, Yannis E. (1998): Bitmap Index Design and Evaluation ● Chan Chee-Yong, Ioannidis, Yannis E. (1999): An Efficient Bitmap Encoding Scheme for Selection Queries ● Lewis, Jonathan (1996): Understanding Bitmap Indexes ● Makkonen, Juha (1999): Lifespan of Data in a Warehouse, Kapitel 4.3 ● Vaisman, Alejandro Ariel (1998): Bitmap Indexing: From Model 204 To Data Warehouses ● Witzel, Stev (2002): Bitmap Indizes ● Wu, Ming-Chuan, Buchmann, Alejandro P. (1998): Encoded Bitmap Indexing for Data Warehouses Literaturverweise

34 Bitmap Indizes in Data Warehouses Stefanie Tornow Vielen Dank für die Aufmerksamkeit


Herunterladen ppt "Bitmap Indizes in Data Warehouses Stefanie Tornow 64694 1 Seminar SS 2006 Bitmap Indizes in Data Warehouses."

Ähnliche Präsentationen


Google-Anzeigen