KAPITEL 3 DATEIORGANISATION UND ZUGRIFFSSTRUKTUREN
|
|
- Kristin Vogel
- vor 8 Jahren
- Abrufe
Transkript
1 KAPITEL 3 DATEIORGANISATION UND ZUGRIFFSSTRUKTUREN h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 1
2 Dateiorganisation und Zugriffsstrukturen Inhalte des Kapitels Seiten, Sätze und Adressierung Klassifikation der Speichertechniken Baumverfahren Hash-Verfahren Klassifikation von Zugriffspfaden Cluster-Bildung Physische Datendefinition in relationalen DBMS Spaltenorientierte Datenbanken Lernziele Verstehen des internen Aufbaus von Seiten und Sätzen sowie deren Adressierung Kenntnis der wichtigsten Dateiorganisationsformen und Arten von Zugriffspfaden wann sollte welche Art verwendet werden? Kennenlernen von Möglichkeiten zur physischen Datendefinition in konkreten relationalen DBMS h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 2
3 Einordnung in die 5-Schichten-Architektur Mengenorientierte Schnittstelle Datensystem Satzorientierte Schnittstelle Zugriffssystem Speichersystem Interne Satzschnittstelle Systempufferschnittstelle Pufferverwaltung Dateischnittstelle Betriebssystem Externspeicher Geräteschnittstelle h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 3
4 Einordnung in die 5-Schichten-Architektur Speichersystem fordert über Systempufferschnittstelle Seiten an interpretiert diese als interne Datensätze interne Realisierung der logischen Datensätze mit Hilfe von Zeigern, speziellen Indexeinträgen und weiteren Hilfsstrukturen Zugriffssystem abstrahiert von der konkreten Realisierung h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 4
5 Seitenzugriff als Flachenhals Maß für die Geschwindigkeit von Datenbankoperationen: Anzahl der Seitenzugriffe auf dem Sekundärspeicher (wegen Zugriffslücke) aber auch Hauptspeicheroperationen nicht beliebig vernachlässigbar Geschwindigkeit des Zugriffs abhängig von der Qualität des Zugriffspfades, d.h. der Anzahl der benötigten Seitenzugriffe Seitenzugriff als Flaschenhals ist wichtige Randbedingung für die Implementierung aller darüber liegenden Strukturen und Schichten! h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 5
6 Seiten, Sätze, Adressierung Struktur der Seiten: doppelt verkettete Liste Header, u.a. Informationen über Vorgänger- und Nachfolger-Seite Informationen über Typ der Sätze Zeitstempel (für Recovery) Angabe über freien Platz Adressierung eines Satzes: Beispielsweise durch Seitennummer und Offset (relative Adresse in Bytes vom Seitenanfang) - Beispiel: (115, 142) h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 6
7 Einpassen von Datensätzen in Seiten Nichtspannsätze: jeder Datensatz in maximal einer Seite Spannsätze: Datensatz eventuell in mehreren Seiten Standard: Nichtspannsätze (nur im Falle von BLOBs oder CLOBs Spannsätze üblich) h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 7
8 Speichervarianten für Sätze variabler Länge n 1 Vorteil Strategie b): leichtere Navigation innerhalb des Satzes h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 8
9 TID-Konzept: Motivation Bisher: Adressierung eines Satzes durch Seitennummer und Offset, wobei der Offset die relative Adresse in Bytes vom Seitenanfang ist z.b. (115, 142) Diese Adresse wird in Verweisen von außen, z.b. in Index-Einträgen etc. verwendet. Was passiert beim Verschieben eines Satz? Konzept notwendig, welches beim Verschieben eines Satzes innerhalb der Seite nicht zum Anpassen der Verweise führt. Tupel Identifier (TID) (oft auch als Record Identifier (RID) bezeichnet) in relationalen Datenbanksystemen heute Stand der Technik h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 9
10 TID-Konzept 1(3) Tupel-Identifier (TID) ist Datensatz-Adresse bestehend aus Seitennummer und Offset Offset verweist innerhalb der Seite bei einem Offset-Wert von i auf den i-ten Eintrag in einer Liste von Tupel-Zeigern, die am Anfang der Seite stehen Jeder Tupel-Zeiger enthält Offsetwert innerhalb der Seite Verschiebung auf der Seite: sämtliche Verweise von außen bleiben unverändert h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 10
11 TID-Konzept 2(3) Verschiebungen auf eine andere Seite: statt altem Datensatz neuer TID-Zeiger mehrstufige Referenz (> 2) aus Effizienzgründen nicht wünschenswert - Lösungsvariante? außerdem: Reorganisation in regelmäßigen Abständen h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 11
12 TID-Konzept 3(3) Alternative: fester, logischer TID in der Literatur auch Data Base Key genannt bzw. im objektobjektorientierten und objektrelationalem Kontext: Object Identifier (OID) Zuordnungstabelle mit OID und phys. Adresse (Page Pointer PP) in Indexen etc. wird OID verwendet keine Änderungen in Indexen bei Verschieben des Datensatzes notwendig aber: immer 2 Seitenzugriffe außerdem: Hotspot beim Locking Modifikation: Verwenden eines Probable Page Pointer (PPP) in Indexen etc. wird sowohl die OID als auch der PPP gespeichert Bei Änderungen (erstmal) nur Anpassung des PP in Zuordnungstabelle (nicht PPP in Indexen) Zugriff: normalerweise über PPP (nur 1 Seitenzugriff) falls Datensatz an Position des PPP nicht gefunden wird langer Weg über OID und PP (3 Seitenzugriffe) außerdem Anpassung PPP h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 12
13 Seitenstruktur in IBM DB2 Datensatzadressen als relative Byteadresse auf der jeweiligen Seite Gelöschte Datensätze werden durch -1 repräsentiert Freispeicher: nur der zusammenhängende Bereich nach dem Satzverzeichnis Quelle: Saake/Heuer/Sattler:2005 h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 13
14 Oracle: Seitenaufbau und Parameter Mit den Parametern pctfree und pctused kann die Speicherplatzausnutzung in den Seiten (Database Block) beeinflusst werden Auswirkungen auf die Performance von Änderungsoperationen Quelle: Oracle Database Administrator's Guide 10g:2004 h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 14
15 Oracle: Storage Parameter Weitere Storage Parameter für Oracle-Tabellen: create table tabelle (...) pctfree 20 pctused 40 storage ( initial 10MB, next 2MB, minextents 1, maxextents 20, pctincrease 0, freelists 3 ) tablespace USER_TBLSPACE; pctfree: Seitenanteil, der nicht für insert-operationen genutzt werden soll (Reservebereich für update); Default 10 pctused: Grenze, bei der eine zuvor bis zu pctfree gefüllte Seite wieder für insert genutzt werden darf; Default 40 freelists: Anzahl der Freispeicherlisten (insb. für paralleles Einfügen) h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 15
16 Dateiorganisation und Zugriffsstrukturen Seiten, Sätze und Adressierung Klassifikation der Speichertechniken Baumverfahren Hash-Verfahren Klassifikation von Zugriffspfaden Cluster-Bildung Physische Datendefinition in relationalen DBMS Spaltenorientierte Datenbanken h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 16
17 Speichertechniken Motivation: Ablage von Datensätzen in Seiten technische Sicht (wie): voriger Abschnitt Zuordnung (welche Datensätze in welchen Seiten) noch nicht diskutiert ist aber entscheidend für die Effizienz des Zugriffs! (Stichwort: Seitenzugriff als Flaschenhals) außerdem: zusätzliche Strukturen (Indexdateien, Zugriffspfade) für effizienten Zugriff Speichertechniken (insbesondere Zugriffspfade) waren und sind eines DER Themen in der Datenbankforschung und -literatur, da ihre effiziente Umsetzung abhängig vom jeweiligen Anwendungskontext einer der entscheidenden Faktoren für die Datenbank-Performance ist. h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 17
18 Kriterien Klassifikation der Speichertechniken wird interne Relation selbst organisiert (Dateiorganisationsform) oder zusätzliche Zugriffsmöglichkeit auf bestehende interne Relation realisiert (Zugriffspfad) Art der Zuordnung von gegebenen Attributwerten zu Datensatz- Adressen Arten von Anfragen, die durch Dateiorganisationsformen und Zugriffspfade effizient unterstützt werden können h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 18
19 Anforderungen an Speichertechniken dynamisches Verhalten Effizienz beim Einzelzugriff (Schlüsselsuche beim Primärindex) Effizienz beim Mehrfachzugriff (Schlüsselsuche beim Sekundärindex) Ausnutzung für sequentiellen Durchlauf (Sortierung, geclusterter Index) Clustering Anfragetypen: exact-match, partial-match, range queries (Bereichsanfragen) h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 19
20 Dateiorganisation vs. Zugriffspfad Dateiorganisationsform: Form der Speicherung der internen Relation unsortierte Speicherung von internen Tupeln: Heap-Organisation sortierte Speicherung von internen Tupeln: sequenzielle Organisation gestreute Speicherung von internen Tupeln: Hash-Organisation (Speicherung von internen Tupeln in mehrdimensionalen Räumen: mehrdimensionale Dateiorganisationsformen) üblich: zusätzliche sortierter Zugriffspfad über Primärschlüssel h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 20
21 Dateiorganisation vs. Zugriffspfad Zugriffspfad: über grundlegende Dateiorganisationsform hinausgehende Zugriffsstruktur, etwa Indexdatei mit Einträgen (K, K ): K: Suchschlüssel, genauer: Zugriffsattribute und Zugriffsattributwerte K : ist Datensatz selbst Zugriffspfad wird Dateiorganisationsform ist Adresse genau eines internen Tupels Primärschlüssel ist Liste von Tupeladressen Sekundärschlüssel mit (K, K 1 ),..., (K, K n ) für denselben Zugriffsattributwert h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 21
22 Dateiorganisation und Zugriffsstrukturen Seiten, Sätze und Adressierung Klassifikation der Speichertechniken Baumverfahren Hash-Verfahren Klassifikation von Zugriffspfaden Cluster-Bildung Physische Datendefinition in relationalen DBMS Spaltenorientierte Datenbanken h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 22
23 Wiederholung DB (Bachelor) Baumverfahren Stufenanzahl dynamisch verändern wichtigste Baumverfahren: B-Bäume und ihre Varianten B-Baum-Varianten sind allgegenwärtig in heutigen Datenbanksystemen (egal ob relational, objektrelational, objektorientiert, ) B-Bäume ausgeglichener, balancierter Suchbaum Ausgeglichen oder balanciert: alle Pfade von der Wurzel zu den Blättern des Baumes gleich lang Hauptspeicher-Implementierungsstruktur: binäre Suchbäume, beispielsweise AVL-Bäume von Adelson-Velskii und Landis Datenbankbereich: Knoten der Suchbäume zugeschnitten auf Seitenstruktur des Datenbanksystems mehrere Zugriffsattributwerte auf einer Seite = Mehrwegbäume h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 23
24 Wiederholung DB (Bachelor) Prinzip des B-Baumes B-Baum von Bayer (B für balanciert, breit, Bayer, NICHT: binär) dynamischer, balancierter Indexbaum, bei dem jeder Indexeintrag auf eine Seite der Hauptdatei zeigt Mehrwegbaum völlig ausgeglichen, wenn 1. alle Wege von Wurzel bis zu Blättern gleich lang 2. jeder Knoten gleich viele Indexeinträge vollständiges Ausgleichen zu teuer, deshalb B-Baum-Kriterium: Jede Seite außer der Wurzelseite enthält zwischen m und 2m Einträge. h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 24
25 Wiederholung DB (Bachelor) Seitenformat des B-Baums Seitenformat: Z 0 S 1 Z 1 D 1 S 2 Z D 2 S S m Z D 2 3 m m frei Z i = Zeiger auf Seite der nächsten Stufe S i = Schlüssel (Zugriffsattributwert) D i = Daten des Satzes oder Verweis auf den Satz (bzw. die Sätze) d.h. materialisiert oder referenziert B-Baum als Primär- und Sekundärindex geeignet Datensätze direkt in die Indexseiten Dateiorganisationsform h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 25
26 Wiederholung DB (Bachelor) Definition B-Baum Ordnung eines B-Baumes ist minimale Anzahl der Einträge auf den Indexseiten außer der Wurzelseite Bsp.: B-Baum der Ordnung 8 faßt auf jeder inneren Indexseite zwischen 8 und 16 Einträgen Def.: Ein Indexbaum ist ein B-Baum der Ordnung m, wenn er die folgenden Eigenschaften erfüllt: 1. Jede Seite, außer der Wurzelseite, enthält mindestens m Elemente. Jede Seite enthält höchstens 2m Elemente. 2. Alle Blattseiten liegen auf der gleichen Stufe. 3. Die Elemente werden in allen Seiten sortiert gespeichert. Jede Seite ist entweder eine Blattseite ohne Nachfolger oder hat i + 1 Nachfolger, falls i die Anzahl ihrer Elemente ist. 4. Für einen Element E i gilt, dass die Werte zwischen E i-1 und E i im linken Teilbaum und die Werte zwischen E i und E i+1 im rechten Teilbaum gespeichert werden. h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 26
27 Wiederholung DB (Bachelor) Suchen in B-Bäumen lookup startend auf Wurzelseite Eintrag im B-Baum ermitteln, der den gesuchten Zugriffsattributwert w überdeckt Zeiger verfolgen, Seite nächster Stufe laden Beispiel: Suchen: 38, 20, 6 h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 27
28 Wiederholung DB (Bachelor) Einfügen in B-Bäumen Beispiel (m = 1) h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 28
29 Wiederholung DB (Bachelor) Einfügen in B-Bäumen Beispiel (Fortsetzung) h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 29
30 Wiederholung DB (Bachelor) Einfügen in B-Bäumen insert: Einfügen eines Wertes w mit lookup entsprechende Blattseite suchen passende Seite n < 2m Elemente w einsortieren passende Seite n = 2m Elemente neue Seite erzeugen, ersten m Werte auf Originalseite letzten m Werte auf neue Seite mittleres Element auf entsprechende Indexseite nach oben ggf. diesen Prozess rekursiv bis zur Wurzel wiederholen h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 30
31 Wiederholung DB (Bachelor) Löschen in B-Bäumen bei weniger als m Elementen auf Seite: Unterlauf delete: Löschen eines Wertes w mit lookup entsprechende Seite suchen w auf Blattseite gespeichert Wert löschen; ggf. Unterlauf behandeln w nicht auf Blattseite gespeichert Wert löschen, durch lexikographisch nächstkleineres Element von einer Blattseite ersetzen; ggf. Unterlauf auf Blattseite behandeln Unterlaufbehandlung Ausgleichen mit der benachbarten Seite (benachbarte Seite n Elemente mit n > m) oder Zusammenlegen zweier Seiten zu einer (Nachbarseite n = m Elemente), das mittlere Element von Indexseite darüber dazu; auf Indexseite ggf.unterlauf behandeln h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 31
32 Wiederholung DB (Bachelor) Löschen in B-Bäumen Beispiel (m = 2) : Löschen von 22 h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 32
33 B-Bäume: Komplexität der Operationen n Datensätze in der Hauptdatei Aufwand beim Einfügen, Suchen und Löschen im B-Baum immer O(log m (n)) Operationen Konkretes Beispiel: Seiten der Größe 4 KB, Zugriffsattributwert 32 Bytes, 8-Byte-Zeiger zwischen 50 und 100 Indexeinträge pro Seite Ordnung dieses B-Baumes Datensätze log 50 ( ) = 4 Seitenzugriffe im schlechtesten Fall Wurzelseite jedes B-Baumes normalerweise im Puffer 3 Seitenzugriffe Wieviel Seitenzugriffe würde der Zugriff ohne Index benötigen? h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 33
34 Varianten B + -Bäume: Daten nur auf den Blattseiten B*-Bäume: Aufteilen von Seiten vermeiden durch Shuffle Präfix-B-Bäume: Zeichenketten als Zugriffsattributwerte, nur Präfix indexieren h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 34
35 B + -Baum: Prinzip in der Praxis am häufigsten eingesetzte Variante des B-Baumes: effizientere Änderungsoperationen, Verringerung der Baumhöhe Daten nur auf den Blattseiten innere Knoten enthalten nur Schlüssel und Zeiger auf nachfolgenden Seite der nächsten Stufe: Seitenformat innere Knoten: Z 0 S 1 Z 1 S 2 Z 2 S 3 S m Z m frei Z i = Zeiger auf Seite der nächsten Stufe S i = Schlüssel Seitenformat Blattknoten: V S 1 D 1 S 2 D 2 S S m D frei 3 m N S i = Schlüssel D i = Daten des Satzes oder Verweis auf den Satz V = Vorgänger-Zeiger N = Nachfolger-Zeiger h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 35
36 Beispiel: B-Baum vs. B + -Baum 13 Schulz 14 Meier keine Daten in den inneren Knoten es passen mehr Einträge auf eine Seite Reduktion der Höhe des Baumes weniger Seitenzugriffe bei lookup, insert, delete (aber jetzt immer log m (n)) h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 36
37 Variante des B + -Baum Speicherung der Datensätze(!) in den Blattseiten schnelle fortlaufende Verarbeitung aller Datensätze in auf- oder absteigender Sortierreihenfolge! Verschmelzen von Zugriffsstruktur und Dateiorganisation h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 37
38 B*-Baum Problem beim B-Baum bzw. B + -Baum: häufiges Aufspalten von Seiten und geringe Speicherplatzausnutzung von nahe 50% B*-Baum: statt Aufteilen von Seiten bei Überlauf zunächst Neuverteilen der Datensätze auf eventuell nicht voll ausgelastete Nachbarseiten falls nicht möglich: zwei Seiten in drei aufteilen ohne Verschiebung eines Elements nach oben (ermöglicht durchschnittliche Speicherplatzausnutzung von 66% statt 50%) h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 38
39 Speicherbedarf für B-Baum Wie kann der maximale Speicheraufwand für einen B-Baum abgeschätzt werden? h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 39
40 Dateiorganisation und Zugriffsstrukturen Seiten, Sätze und Adressierung Klassifikation der Speichertechniken Baumverfahren Hash-Verfahren Klassifikation von Zugriffspfaden Cluster-Bildung Physische Datendefinition in relationalen DBMS Spaltenorientierte Datenbanken h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 40
41 Hash-Verfahren: Grundprinzip Basis-Hash-Funktion: h(k) = k mod m mit m möglichst Primzahl Überlauf-Behandlung Überlaufseiten als verkettete Liste lineares Sondieren h i (k) = (h(k) + i) mod m quadratisches Sondieren h i (k) = (h(k)+ i 2 ) mod m doppeltes Hashen h i (k) = (h(k) + h'(k)*i) mod m h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 41
42 Hash-Verfahren für Datenbanken Quelle: Saake/Heuer/Sattler:2005 h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 42
43 Operationen und Zeitkomplexität lookup, modify, insert, delete lookup benötigt maximal 1 + #B(h(w)) Seitenzugriffe mit #B(h(w)) Anzahl der Seiten (inklusive der Überlaufseiten) des Buckets für Hash-Wert h(w) Untere Schranke 2 (Zugriff auf Hash-Verzeichnis plus Zugriff auf erste Seite) Zeitschranke für modify, insert und delete? sehr effizient für Suche einzelner Werte (konstante Zugriffskosten - bei ausreichendem Speicherplatz und gut streuender Hash-Funktion 2 Zugriffe!) Bereichsanfragen? sortierte Ausgabe von Datensätzen? h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 43
44 Probleme bei statischen Hash-Verfahren Hash-Funktion bildet die Schlüsselwerte auf einen festen Bildbereich ab Was passiert, wenn dieser erweitert werden muss? neue Hash-Funktion Reorganisation (Re-Hashing) aller Datensätze! Dynamisches Hashen Idee: feste Hash-Funktion, aber dynamisch erweiterbarer Bildbereich Verschiedene Realisierungsvarianten Lineares Hashen Erweiterbares Hashen Spiral-Hashen h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 44
45 Prinzip lineares Hashen Folge von Hash-Funktionen, die wie folgt charakterisiert sind: h i : dom(primärschlüssel) { 0,..., 2 i N }: eine Folge von Hash- Funktionen mit i { 0, 1, 2,...} und N als Anfangsgröße des Hash- Verzeichnisses Wert von i: Level der Hash-Funktion Für diese Hash-Funktionen gelten die folgenden Bedingungen: h i+1 (w) = h i (w) für etwa die Hälfte aller w dom(primärschlüssel) h i+1 (w) = h i (w) + 2 i N für die andere Hälfte Bedingungen sind zum Beispiel erfüllt, wenn h i (w) als w mod (2 i N) gewählt wird h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 45
46 Realisierung lineares Hashen Zu einem Zeitpunkt: für ein w höchstens zwei Hash-Funktionen zuständig, deren Level nur um 1 differiert Entscheidung zwischen diesen beiden durch Split-Zeiger sp Split-Zeiger (gibt an, welche Seite als nächstes geteilt wird) lv Level (gibt an, welche Hash-Funktionen benutzt werden) lookup: s := h lv (w); if s < sp then s := h lv+1 (w); zuerst Hash-Wert mit der kleineren Hash-Funktion bestimmen liegt dieser unter dem Wert des Split-Zeigers größere Hash-Funktion verwenden h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 46
47 Beispiel für lineares Hashen 0 Schlüsselwerte (zur Vereinfachung): Bitfolgen Hash-Funktion: die ersten n Bits in umgekehrter Reihenfolge als Zahl, d.h. h 1 interpretiert die erste Zahl, h 2 die ersten beiden usw. Quelle: Saake/Heuer/Sattler:2005 h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 47
48 Splitten einer Seite 1. Die Sätze der Seite (Bucket), auf die sp zeigt, werden mittels h lv+1 neu verteilt ca. die Hälfte der Sätze wird auf Seite (Bucket) unter Hash-Nummer 2 lv N + sp verschoben 2. Der Split-Zeiger wird weitergesetzt: sp := sp + 1; 3. Nach Abarbeiten eines Levels wird wieder bei Seite 0 begonnen; der Level wird um 1 erhöht h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 48
49 Beispiel für lineares Hashen Beispiel: h 2 ( ) = 00 < 1 h 3 ( ) = 001 Quelle: Saake/Heuer/Sattler:2005 h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 49
50 nach Splitten einer Seite Quelle: Saake/Heuer/Sattler:2005 h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 50
51 nach Splitten zweier weiterer Seiten Nachteile des Verfahrens? Quelle: Saake/Heuer/Sattler:2005 h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 51
52 Dateiorganisation und Zugriffsstrukturen Seiten, Sätze und Adressierung Klassifikation der Speichertechniken Baumverfahren Hash-Verfahren Klassifikation von Zugriffspfaden Cluster-Bildung Physische Datendefinition in relationalen DBMS Spaltenorientierte Datenbanken h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 52
53 Klassifikation von Zugriffspfaden Verschiedene (i.a. orthogonale) Möglichkeiten der Klassifikation: dünnbesetzter vs. dichtbesetzter Index geclusterter vs. nicht-geclusterter Index Ein-Attribut vs. Mehr-Attribut-Index h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 53
54 Dünn- vs. dichtbesetzter Index dünnbesetzter Index: nicht für jeden Zugriffsattributwert K ein Eintrag in Indexdatei interne Relation sortiert nach Zugriffsattributen: im Index reicht ein Eintrag pro Seite Index verweist mit (K 1,K 1 ) auf Seitenanführer, nächste Indexeintrag (K 2,K 2 ) Datensatz mit Zugriffsattributwert K? mit K 1 < K? < K 2 ist auf Seite von K 1 zu finden dichtbesetzter Index: für jeden Datensatz der internen Relation ein Eintrag in Indexdatei indexsequenzielle Datei: sortierte Datei mit dünnbesetztem Index als Primärindex Primärindex muss dichtbesetzter Index sein, wenn Dateiorganisationsform Heap-Datei h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 54
55 Geclusterter vs. nicht-geclusterter Index 1(2) geclusterter Index: in der gleichen Form sortiert wie interne Relation Bsp.: interne Relation KUNDEN nach Kundennummern sortiert Indexdatei über dem Attribut KNr üblicherweise geclustert nicht-geclusterter Index: anders organisiert als interne Relation Bsp.: über Name ein Sekundärindex, Datei selbst nach KNr sortiert jeder dünnbesetzte Index ist auch geclusterter Index, aber nicht umgekehrt Sekundärindex kann nur dichtbesetzter, nicht-geclusterter Index sein h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 55
56 Geclusterter vs. nicht-geclusterter Index 2(2) Quelle: Saake/Heuer/Sattler:2005 h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 56
57 Ein-Attribut- vs. Mehr-Attribut-Index Ein-Attribut-Index (non-composite index): Zugriffspfad über einem einzigen Zugriffsattribut Mehr-Attribut-Index (composite index): Zugriffspfad über mehreren Attributen Bsp.: Attribute Name und PLZ unterstützen entweder zwei Ein-Attribut-Indexe oder ein Zwei-Attribut-Index über beiden Attributen Vorteil Mehr-Attribut-Index: bei exact-match nur ein Indexzugriff (weniger Seitenzugriffe) Mehr-Attribut-Index: Ausführungsart bestimmt, ob neben exact-match auch noch partial-match effizient unterstützt wird (eindimensional oder mehrdimensional) h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 57
58 Ein- vs. mehrdimensionale Zugriffsstruktur Ein-Attribut-Index immer eindimensionale Zugriffsstruktur: (Zugriffsattributwerte definieren lineare Ordnung in eindimensionalem Raum) Mehr-Attribut-Index ist eindimensionale oder mehrdimensionale Zugriffsstruktur: eindimensionaler Fall: Kombinationen der verschiedenen Zugriffsattributwerte konkateniert als einen einzigen Zugriffsattributwert betrachten (wieder lineare Ordnung in eindimensionalem Raum) keine partial-match-anfragen mehrdimensionaler Fall: Menge der Zugriffsattributwerte spannt mehrdimensionalen Raum auf bei partial-match bestimmt horizontale oder vertikale Gerade im Raum die Treffermenge mehrdimensionale Bäume mehrdimensionale Hash-Verfahren Grid-Files h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 58
59 Weitere Zugriffsstrukturen Spezifische Anforderungen für Geometrische Strukturen in Geoinformationssystemen, CAD-Systemen etc. mehrdimensionale Bäume (insbesondere Quadtrees, R-Bäume, Grid-Files) Multimedia-Daten mehrdimensionale Bäume, hochdimensionale Index für Feature-Vektoren Objektstrukturen hierarchische Indexe für Klassen- und Komponentenhierarchien Information Retrieval invertierte Listen, Signaturindexe XML Pfadindexe Data Warehouse Bitmap-Indexe, UB-Bäume Literatur (Überblick und weitere Referenzen): G. Saake, A. Heuer, und K. Sattler: Datenbanken: Implementierungstechniken. h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 59
60 Dateiorganisation und Zugriffsstrukturen Seiten, Sätze und Adressierung Klassifikation der Speichertechniken Baumverfahren Hash-Verfahren Klassifikation von Zugriffspfaden Cluster-Bildung Physische Datendefinition in relationalen DBMS Spaltenorientierte Datenbanken h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 60
61 Cluster-Bildung Ziel: gemeinsame Speicherung von (zusammengehörigen) Datensätzen auf Seiten wichtige Spezialfälle: Clusterung nach Schlüsselattributen Bereichsanfragen und Gruppierungen unterstützen: Datensätze in der Sortierreihenfolge zusammenhängend auf Seiten speichern index-organisierte Tabellen Clusterung basierend auf Fremdschlüsselattributen Gruppen von Datensätzen, die einen Attributwert gemeinsam haben, werden auf Seiten gemeinsam gespeichert (Verbundanfragen) h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 61
62 Verbundattribut: Cluster-Schlüssel Cluster für Verbundanfragen Quelle: Saake/Heuer/Sattler:2005 h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 62
63 Oracle-Notation: Definition von Clustern create cluster BESTELL_CLUSTER (BestellNr int) pctused 80 pctfree 5; create table BESTELLUNG ( BestellNr int primary key,...) cluster BESTELL_CLUSTER (BestellNr); create table BESTELL_POSITION ( Position int, BestellNr int references BESTELLUNG,... constraint BestellPosKey primary key (Position, BestellNr) ) cluster BESTELL_CLUSTER (BestellNr); h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 63
64 Organisation von Clustern Indexierte Cluster nutzen einen in Sortierreihenfolge aufgebauten Index (z.b. B + -Baum) über den Cluster-Schlüssel zum Zugriff auf die Cluster Speicherung von Cluster-Identifikatoren anstelle von TIDs create index BESTELL_CLUSTER_IDX on cluster BESTELL_CLUSTER; Hash-Cluster bestimmen den passenden Cluster mit Hilfe einer Hashfunktion Abbildung Cluster-Schlüssel Blockadresse create cluster BESTELL_CLUSTER (BestellNr int) pctused 80 pctfree 5 size 2k hash is BestellNr hashkeys ; h_da Prof. Dr. Uta Störl Architektur von DBMS SoSe 2014 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 64
KAPITEL 3 DATEIORGANISATION UND ZUGRIFFSSTRUKTUREN
KAPITEL 3 DATEIORGANISATION UND ZUGRIFFSSTRUKTUREN h_da Prof. Dr. Uta Störl Architektur von DBMS WS 2015/16 Kapitel 3: Dateiorganisation und Zugriffsstrukturen 1 Dateiorganisation und Zugriffsstrukturen
MehrTeil IV. Dateiorganisation und Zugriffsstrukturen
Teil IV Dateiorganisation und Zugriffsstrukturen Überblick c Sattler / Saake Datenbank-Implementierungstechniken Letzte Änderung: 10. Mai 2012 4 1 Klassifikation der Speichertechniken Einordnung in 5-Schichten-Architektur
MehrKapitel 8: Physischer Datenbankentwurf
8. Physischer Datenbankentwurf Seite 1 Kapitel 8: Physischer Datenbankentwurf Speicherung und Verwaltung der Relationen einer relationalen Datenbank so, dass eine möglichst große Effizienz der einzelnen
MehrOPERATIONEN AUF EINER DATENBANK
Einführung 1 OPERATIONEN AUF EINER DATENBANK Ein Benutzer stellt eine Anfrage: Die Benutzer einer Datenbank können meist sowohl interaktiv als auch über Anwendungen Anfragen an eine Datenbank stellen:
MehrCluster-Bildung. VL Datenbanken II 4 107
Cluster-Bildung gemeinsame Speicherung von Datensätzen auf Seiten wichtige Spezialfälle: Ballung nach Schlüsselattributen. Bereichsanfragen und Gruppierungen unterstützen: Datensätze in der Sortierreihenfolge
MehrDateiorganisation und Zugriffsstrukturen
Dateiorganisation und Zugriffsstrukturen Prof. Dr. T. Kudraß 1 Mögliche Dateiorganisationen Viele Alternativen existieren, jede geeignet für bestimmte Situation (oder auch nicht) Heap-Dateien: Geeignet
MehrNachtrag zu binären Suchbäumen
Nachtrag zu binären Suchbäumen (nicht notwendigerweise zu AVL Bäumen) Löschen 1 3 2 10 4 12 1. Fall: Der zu löschende Knoten ist ein Blatt: einfach löschen 2. Fall: Der zu löschende Knoten hat ein Nachfolgeelement
MehrMS SQL Server: Index Management. Stephan Arenswald 10. Juli 2008
MS SQL Server: Index Management Stephan Arenswald 10. Juli 2008 Agenda 1. Einführung 2. Grundlagen Tabellen 3. Grundlagen Indexe 4. Indextypen 5. Index-Erstellung 6. Indexe und Constraints 7. Und Weiter...?
Mehr1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert
Inhalt Einführung 1. Arrays 1. Array unsortiert 2. Array sortiert 3. Heap 2. Listen 1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert 3. Bäume
MehrDateiorganisation und Zugriffsstrukturen. Prof. Dr. T. Kudraß 1
Dateiorganisation und Zugriffsstrukturen Prof. Dr. T. Kudraß 1 Mögliche Dateiorganisationen Viele Alternativen existieren, jede geeignet für bestimmte Situation (oder auch nicht) Heap-Dateien: Geeignet
MehrDatenstrukturen & Algorithmen
Datenstrukturen & Algorithmen Matthias Zwicker Universität Bern Frühling 2010 Übersicht Binäre Suchbäume Einführung und Begriffe Binäre Suchbäume 2 Binäre Suchbäume Datenstruktur für dynamische Mengen
MehrGrundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny
Grundlagen der Informatik Prof. Dr. Stefan Enderle NTA Isny 2 Datenstrukturen 2.1 Einführung Syntax: Definition einer formalen Grammatik, um Regeln einer formalen Sprache (Programmiersprache) festzulegen.
MehrFachbericht zum Thema: Anforderungen an ein Datenbanksystem
Fachbericht zum Thema: Anforderungen an ein Datenbanksystem von André Franken 1 Inhaltsverzeichnis 1 Inhaltsverzeichnis 1 2 Einführung 2 2.1 Gründe für den Einsatz von DB-Systemen 2 2.2 Definition: Datenbank
MehrPhysische Datenorganisation
Physische Datenorganisation Physische Datenorganisation 2002 Prof. Dr. Rainer Manthey Informationssysteme 1 Übersicht Datenbanken, Relationen und Tupel werden auf der untersten Ebene der bereits vorgestellten
MehrAlgorithmen und Datenstrukturen Balancierte Suchbäume
Algorithmen und Datenstrukturen Balancierte Suchbäume Matthias Teschner Graphische Datenverarbeitung Institut für Informatik Universität Freiburg SS 12 Überblick Einführung Einfügen und Löschen Einfügen
Mehr7. Übung - Datenbanken
7. Übung - Datenbanken Informatik I für Verkehrsingenieure Aufgaben inkl. Beispiellösungen 1. Aufgabe: DBS a Was ist die Kernaufgabe von Datenbanksystemen? b Beschreiben Sie kurz die Abstraktionsebenen
MehrAllgemeines zu Datenbanken
Allgemeines zu Datenbanken Was ist eine Datenbank? Datensatz Zusammenfassung von Datenelementen mit fester Struktur Z.B.: Kunde Alois Müller, Hegenheimerstr. 28, Basel Datenbank Sammlung von strukturierten,
MehrObjektrelationale Datenbanken
Vorlesung Datenbanksysteme vom 26.11.2008 Objektrelationale Datenbanken Konzepte objektrelationaler DBs SQL:1999 OO vs. OR Konzepte objektrelationaler Datenbanken Große Objekte (LOBs: Large Objects) Mengenwertige
MehrBinäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen
Binäre Bäume 1. Allgemeines Binäre Bäume werden grundsätzlich verwendet, um Zahlen der Größe nach, oder Wörter dem Alphabet nach zu sortieren. Dem einfacheren Verständnis zu Liebe werde ich mich hier besonders
MehrDatenbanken. Prof. Dr. Bernhard Schiefer. bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer
Datenbanken Prof. Dr. Bernhard Schiefer bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Wesentliche Inhalte Begriff DBS Datenbankmodelle Datenbankentwurf konzeptionell, logisch und relational
MehrProgrammiertechnik II
Bäume Symboltabellen Suche nach Werten (items), die unter einem Schlüssel (key) gefunden werden können Bankkonten: Schlüssel ist Kontonummer Flugreservierung: Schlüssel ist Flugnummer, Reservierungsnummer,...
MehrTeil IV Dateiorganisation und Zugriffsstrukturen
Teil IV Dateiorganisation und Zugriffsstrukturen Überblick 1 Klassifikation der Speichertechniken c Sattler / Saake Datenbank-Implementierungstechniken Letzte Änderung: 13. April 2017 4 1 Überblick 1 Klassifikation
MehrDatenbanken 16.1.2008. Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt:
Datenbanksysteme Entwicklung der Datenbanksysteme Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt: 1. Generation: In den fünfziger
MehrFolge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12
Grundlagen: Folge 19 - Bäume 19.1 Binärbäume - Allgemeines Unter Bäumen versteht man in der Informatik Datenstrukturen, bei denen jedes Element mindestens zwei Nachfolger hat. Bereits in der Folge 17 haben
MehrEinordnung in 5-Schichten-Architektur. 4. Dateiorganisation / Zugriffsstrukturen. Klassifikation der Speichertechniken.
4. Dateiorganisation / Zugriffsstrukturen Klassifikation der Speichertechniken Statische Verfahren (Heap, indexsequentiell, indiziert-nichtsequentiell) Baumverfahren (B-Bäume und Varianten) Hashverfahren
MehrMengenvergleiche: Alle Konten außer das, mit dem größten Saldo.
Mengenvergleiche: Mehr Möglichkeiten als der in-operator bietet der θany und der θall-operator, also der Vergleich mit irgendeinem oder jedem Tupel der Unteranfrage. Alle Konten außer das, mit dem größten
MehrAlgorithmen und Datenstrukturen Suchbaum
Algorithmen und Datenstrukturen Suchbaum Matthias Teschner Graphische Datenverarbeitung Institut für Informatik Universität Freiburg SS 12 Motivation Datenstruktur zur Repräsentation dynamischer Mengen
MehrOracle 9i Einführung Performance Tuning
Kurs Oracle 9i Einführung Performance Tuning Teil 13 Cluster Timo Meyer Wintersemester 2005 / 2006 Seite 1 von 14 Seite 1 von 14 1. Anordnung von Zeilen in einer Tabelle 2. Einführung 3. Cluster 4. Typen
MehrHandbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken
Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken Dateiname: ecdl5_01_00_documentation_standard.doc Speicherdatum: 14.02.2005 ECDL 2003 Basic Modul 5 Datenbank - Grundlagen
MehrProfessionelle Seminare im Bereich MS-Office
Der Name BEREICH.VERSCHIEBEN() ist etwas unglücklich gewählt. Man kann mit der Funktion Bereiche zwar verschieben, man kann Bereiche aber auch verkleinern oder vergrößern. Besser wäre es, die Funktion
MehrAlgorithmik II. a) Fügen Sie in einen anfangs leeren binären Baum die Schlüsselfolge 20, 28, 35, 31, 9, 4, 13, 17, 37, 25 ein.
Aufgabe 10 Binäre Bäume a) Fügen Sie in einen anfangs leeren binären Baum die Schlüsselfolge, 28, 35, 31, 9, 4,, 17, 37, 25 ein. 1. Einfügen von : 3. Einfugen von 35: 2. Einfügen von 28: 28 28 10. Einfügen
MehrDATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER
DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER INHALTSVERZEICHNIS 1. Datenbanken 2. SQL 1.1 Sinn und Zweck 1.2 Definition 1.3 Modelle 1.4 Relationales Datenbankmodell 2.1 Definition 2.2 Befehle 3.
MehrPhysische Datenbankdefinition in. Arthur Bauer
Physische Datenbankdefinition in Arthur Bauer Inhalt Cluster Index-Cluster Hash-Cluster Vor- und Nachteile Index-Organisierte Tabelle (IOT) Partitionierung STORAGE-Klausel in DDL Indexstrukturen Oracle
MehrBinäre Bäume Darstellung und Traversierung
Binäre Bäume Darstellung und Traversierung Name Frank Bollwig Matrikel-Nr. 2770085 E-Mail fb641378@inf.tu-dresden.de Datum 15. November 2001 0. Vorbemerkungen... 3 1. Terminologie binärer Bäume... 4 2.
MehrDatenbanken II Speicherung und Verarbeitung großer Objekte (Large Objects [LOBs])
Datenbanken II Speicherung und Verarbeitung großer Objekte (Large Objects [LOBs]) Hochschule für Technik, Wirtschaft und Kultur Leipzig 06.06.2008 Datenbanken II,Speicherung und Verarbeitung großer Objekte
MehrDatenstrukturen und Algorithmen
Datenstrukturen und Algorithmen VO 708.031 Bäume robert.legenstein@igi.tugraz.at 1 Inhalt der Vorlesung 1. Motivation, Einführung, Grundlagen 2. Algorithmische Grundprinzipien 3. Sortierverfahren 4. Halden
MehrIndex- und Zugriffsstrukturen für. Holger Brämer, 05IND-P
Index- und Zugriffsstrukturen für Data Warehousing Holger Brämer, 05IND-P Index- und Zugriffstrukturen für Data Warehousing Materialisierte Sichten Bitmap-Indexe Verbundindexe Materialisierte Sichten gehören
MehrPhysischer Datenbankentwurf: Datenspeicherung
Datenspeicherung.1 Physischer Datenbankentwurf: Datenspeicherung Beim Entwurf des konzeptuellen Schemas wird definiert, welche Daten benötigt werden und wie sie zusammenhängen (logische Datenbank). Beim
MehrKapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete
Kapitel 4: Dynamische Datenstrukturen Algorithmen und Datenstrukturen WS 2012/13 Prof. Dr. Sándor Fekete 4.4 Binäre Suche Aufgabenstellung: Rate eine Zahl zwischen 100 und 114! Algorithmus 4.1 INPUT: OUTPUT:
MehrFragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96
Fragenkatalog zum Kurs 1666 (Datenbanken in Rechnernetzen) Kurstext von SS 96 Dieser Fragenkatalog wurde aufgrund das Basistextes und zum Teil aus den Prüfungsprotokollen erstellt, um sich auf mögliche
MehrData Warehouse Technologien
Veit Köppen Gunter Saake Kai-Uwe Sattler Data Warehouse Technologien Inhaltsverzeichnis Inhaltsverzeichnis vii 1 Einführung in Data-Warehouse-Systeme 1 1.1 Anwendungsszenario Getränkemarkt...............
MehrKapiteltests zum Leitprogramm Binäre Suchbäume
Kapiteltests zum Leitprogramm Binäre Suchbäume Björn Steffen Timur Erdag überarbeitet von Christina Class Binäre Suchbäume Kapiteltests für das ETH-Leitprogramm Adressaten und Institutionen Das Leitprogramm
MehrSoftware Engineering Klassendiagramme Assoziationen
Software Engineering Klassendiagramme Assoziationen Prof. Adrian A. Müller, PMP, PSM 1, CSM Fachbereich Informatik und Mikrosystemtechnik 1 Lesen von Multiplizitäten (1) Multiplizitäten werden folgendermaßen
MehrOP-LOG www.op-log.de
Verwendung von Microsoft SQL Server, Seite 1/18 OP-LOG www.op-log.de Anleitung: Verwendung von Microsoft SQL Server 2005 Stand Mai 2010 1 Ich-lese-keine-Anleitungen 'Verwendung von Microsoft SQL Server
MehrVeit Köppen Gunter Saake Kai-Uwe Sattler. 2. Auflage. Data Warehouse Technologien
Veit Köppen Gunter Saake Kai-Uwe Sattler 2. Auflage Data Warehouse Technologien Inhaltsverzeichnis Inhaltsverzeichnis ix 1 Einführung in Data-Warehouse-Systeme 1 1.1 Anwendungsszenario Getränkemarkt...
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Dipl. Inform. Andreas Wilkens aw@awilkens.com Überblick Grundlagen Definitionen Elementare Datenstrukturen Rekursionen Bäume 2 1 Datenstruktur Baum Definition eines Baumes
MehrDatenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin
Datenbanken SQL Einführung Datenbank in MySQL einrichten mit PhpMyAdmin PhpMyAdmin = grafsches Tool zur Verwaltung von MySQL-Datenbanken Datenbanken erzeugen und löschen Tabellen und Spalten einfügen,
MehrRückblick: Pufferverwaltung
Rückblick: Pufferverwaltung Datenbankpuffer zum Schließen der Zugriffslücke zwischen Primär- und Sekundärspeicher Ersetzungsstrategien berücksichtigen Zeitpunkte und/oder Anzahl der Zugriffe auf bestimmte
MehrAlgorithmen und Datenstrukturen 1
Algorithmen und Datenstrukturen 1 10. Vorlesung Peter F. Stadler Universität Leipzig Institut für Informatik studla@bioinf.uni-leipzig.de Suchverfahren für große Datenmengen bisher betrachtete Datenstrukturen
Mehr! DBMS organisiert die Daten so, dass minimal viele Plattenzugriffe nötig sind.
Unterschiede von DBMS und files Speichern von Daten! DBMS unterstützt viele Benutzer, die gleichzeitig auf dieselben Daten zugreifen concurrency control.! DBMS speichert mehr Daten als in den Hauptspeicher
Mehr(Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl (gbs-ws11@mailschlichter.informatik.tu-muenchen.de)
Übung zur Vorlesung Grundlagen Betriebssysteme und Systemsoftware (Prof. Dr. J. Schlichter, WS 2011 / 2012) Übungsleitung: Dr. Wolfgang Wörndl (gbs-ws11@mailschlichter.informatik.tu-muenchen.de) http://www11.in.tum.de/veranstaltungen/grundlagenbetriebssystemeundsystemsoftwarews1112
Mehrdpa-infocom - Datenlieferung
dpa-infocom - Datenlieferung Copyright 2006 von dpa-infocom GmbH Status des Dokuments: FINAL Inhaltsverzeichnis Inhaltsverzeichnis...1 1. Verzeichnisstrukturen...2 2. Nachrichtenmanagement...2 3. Datenübertragung...3
MehrVorlesung Dokumentation und Datenbanken Klausur
Dr. Stefan Brass 5. Februar 2002 Institut für Informatik Universität Giessen Vorlesung Dokumentation und Datenbanken Klausur Name: Geburtsdatum: Geburtsort: (Diese Daten werden zur Ausstellung des Leistungsnachweises
Mehr1 topologisches Sortieren
Wolfgang Hönig / Andreas Ecke WS 09/0 topologisches Sortieren. Überblick. Solange noch Knoten vorhanden: a) Suche Knoten v, zu dem keine Kante führt (Falls nicht vorhanden keine topologische Sortierung
MehrVorkurs Informatik WiSe 15/16
Konzepte der Informatik Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 16.10.2015 Technische Universität Braunschweig, IPS Inhaltsverzeichnis Suchen Binärsuche Binäre Suchbäume 16.10.2015 Dr. Werner
MehrOECD Programme for International Student Assessment PISA 2000. Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland
OECD Programme for International Student Assessment Deutschland PISA 2000 Lösungen der Beispielaufgaben aus dem Mathematiktest Beispielaufgaben PISA-Hauptstudie 2000 Seite 3 UNIT ÄPFEL Beispielaufgaben
MehrRelationale Datenbanken Datenbankgrundlagen
Datenbanksystem Ein Datenbanksystem (DBS) 1 ist ein System zur elektronischen Datenverwaltung. Die wesentliche Aufgabe eines DBS ist es, große Datenmengen effizient, widerspruchsfrei und dauerhaft zu speichern
MehrDatenbanken: Architektur & Komponenten 3-Ebenen-Architektur
Datenbanken: Architektur & Komponenten 3-Ebenen-Architektur Moderne Datenbanksysteme sind nach der 3-Ebenen-Architektur gebaut: Anwendung 1 Web-Anwendung Anwendung 2 Java-Programm... Anwendung n Applikation
MehrProgrammieren I. Kapitel 7. Sortieren und Suchen
Programmieren I Kapitel 7. Sortieren und Suchen Kapitel 7: Sortieren und Suchen Ziel: Varianten der häufigsten Anwendung kennenlernen Ordnung Suchen lineares Suchen Binärsuche oder Bisektionssuche Sortieren
Mehr6. Formaler Datenbankentwurf 6.1. Rückblick. Datenbanken und Informationssysteme, WS 2012/13 22. Januar 2013 Seite 1
6. Formaler Datenbankentwurf 6.1. Rückblick 3. Normalform Ein Relationsschema R = (V, F) ist in 3. Normalform (3NF) genau dann, wenn jedes NSA A V die folgende Bedingung erfüllt. Wenn X A F, A X, dann
MehrAlbert HAYR Linux, IT and Open Source Expert and Solution Architect. Open Source professionell einsetzen
Open Source professionell einsetzen 1 Mein Background Ich bin überzeugt von Open Source. Ich verwende fast nur Open Source privat und beruflich. Ich arbeite seit mehr als 10 Jahren mit Linux und Open Source.
MehrKURZANLEITUNG CLOUD OBJECT STORAGE
KURZANLEITUNG CLOUD OBJECT STORAGE Version 1.12 01.07.2014 SEITE _ 2 INHALTSVERZEICHNIS 1. Einleitung... Seite 03 2. Anmelden am Cloud&Heat Dashboard... Seite 04 3. Anlegen eines Containers... Seite 05
Mehr3. Das Relationale Datenmodell
3. Das Relationale Datenmodell Das Relationale Datenmodell geht zurück auf Codd (1970): E. F. Codd: A Relational Model of Data for Large Shared Data Banks. Comm. of the ACM 13(6): 377-387(1970) DBMS wie
MehrIdee: Wenn wir beim Kopfknoten zwei Referenzen verfolgen können, sind die Teillisten kürzer. kopf Eine Datenstruktur mit Schlüsselwerten 1 bis 10
Binäre Bäume Bäume gehören zu den wichtigsten Datenstrukturen in der Informatik. Sie repräsentieren z.b. die Struktur eines arithmetischen Terms oder die Struktur eines Buchs. Bäume beschreiben Organisationshierarchien
Mehrmit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007
6. Übung zur Vorlesung Datenbanken im Sommersemester 2007 mit Musterlösungen Prof. Dr. Gerd Stumme, Dipl.-Inform. Christoph Schmitz 11. Juni 2007 Aufgabe 1: Rekursion Betrachten Sie die folgende Tabelle
MehrSortierte Folgen 250
Sortierte Folgen 250 Sortierte Folgen: he 1,...,e n i mit e 1 apple applee n kennzeichnende Funktion: M.locate(k):= addressof min{e 2 M : e k} Navigations Datenstruktur 2 3 5 7 11 13 17 19 00 Annahme:
MehrSortierverfahren für Felder (Listen)
Sortierverfahren für Felder (Listen) Generell geht es um die Sortierung von Daten nach einem bestimmten Sortierschlüssel. Es ist auch möglich, daß verschiedene Daten denselben Sortierschlüssel haben. Es
Mehrmobilepoi 0.91 Demo Version Anleitung Das Software Studio Christian Efinger Erstellt am 21. Oktober 2005
Das Software Studio Christian Efinger mobilepoi 0.91 Demo Version Anleitung Erstellt am 21. Oktober 2005 Kontakt: Das Software Studio Christian Efinger ce@efinger-online.de Inhalt 1. Einführung... 3 2.
MehrAufgabe 1: [Logische Modellierung]
Aufgabe 1: [Logische Modellierung] a) Entwerfen Sie für das von Ihnen entworfene Modell aus Aufgabe 2 des 1. Übungsblattes ein Star-Schema. b) Entwerfen Sie für das vorangegangene Modell einen Teil eines
MehrB-Bäume I. Algorithmen und Datenstrukturen 220 DATABASE SYSTEMS GROUP
B-Bäume I Annahme: Sei die Anzahl der Objekte und damit der Datensätze. Das Datenvolumen ist zu groß, um im Hauptspeicher gehalten zu werden, z.b. 10. Datensätze auf externen Speicher auslagern, z.b. Festplatte
MehrKONSTRUKTION VON ROT-SCHWARZ-BÄUMEN
KONSTRUKTION VON ROT-SCHWARZ-BÄUMEN RALF HINZE Institut für Informatik III Universität Bonn Email: ralf@informatik.uni-bonn.de Homepage: http://www.informatik.uni-bonn.de/~ralf Februar, 2001 Binäre Suchbäume
MehrAbschnitt: Algorithmendesign und Laufzeitanalyse
Abschnitt: Algorithmendesign und Laufzeitanalyse Definition Divide-and-Conquer Paradigma Divide-and-Conquer Algorithmen verwenden die Strategien 1 Divide: Teile das Problem rekursiv in Subproblem gleicher
Mehrt r Lineare Codierung von Binärbbäumen (Wörter über dem Alphabet {, }) Beispiel code( ) = code(, t l, t r ) = code(t l ) code(t r )
Definition B : Menge der binären Bäume, rekursiv definiert durch die Regeln: ist ein binärer Baum sind t l, t r binäre Bäume, so ist auch t =, t l, t r ein binärer Baum nur das, was durch die beiden vorigen
MehrAlgorithmen & Datenstrukturen 1. Klausur
Algorithmen & Datenstrukturen 1. Klausur 7. Juli 2010 Name Matrikelnummer Aufgabe mögliche Punkte erreichte Punkte 1 35 2 30 3 30 4 15 5 40 6 30 Gesamt 180 1 Seite 2 von 14 Aufgabe 1) Programm Analyse
MehrWichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge
Wichtige Hinweise zu den neuen Orientierungshilfen der Architekten-/Objektplanerverträge Ab der Version forma 5.5 handelt es sich bei den Orientierungshilfen der Architekten-/Objektplanerverträge nicht
MehrSchlüssel bei temporalen Daten im relationalen Modell
Schlüssel bei temporalen Daten im relationalen Modell Gesine Mühle > Präsentation > Bilder zum Inhalt zurück weiter 322 Schlüssel im relationalen Modell Schlüssel bei temporalen Daten im relationalen Modell
MehrMit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.
Seite erstellen Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken. Es öffnet sich die Eingabe Seite um eine neue Seite zu erstellen. Seiten Titel festlegen Den neuen
MehrCarl-Engler-Schule Karlsruhe Datenbank 1 (5)
Carl-Engler-Schule Karlsruhe Datenbank 1 (5) Informationen zur Datenbank 1. Definition 1.1 Datenbank-Basis Eine Datenbank-Basis ist eine Sammlung von Informationen über Objekte (z.b Musikstücke, Einwohner,
MehrLineargleichungssysteme: Additions-/ Subtraktionsverfahren
Lineargleichungssysteme: Additions-/ Subtraktionsverfahren W. Kippels 22. Februar 2014 Inhaltsverzeichnis 1 Einleitung 2 2 Lineargleichungssysteme zweiten Grades 2 3 Lineargleichungssysteme höheren als
Mehr4. Jeder Knoten hat höchstens zwei Kinder, ein linkes und ein rechtes.
Binäre Bäume Definition: Ein binärer Baum T besteht aus einer Menge von Knoten, die durch eine Vater-Kind-Beziehung wie folgt strukturiert ist: 1. Es gibt genau einen hervorgehobenen Knoten r T, die Wurzel
MehrProzessarchitektur einer Oracle-Instanz
6. Juni 2008 Inhaltsverzeichnis Oracle Instanz 1 Oracle Instanz 2 3 Redo Log Buffer Shared Pool Java Pool & Large Pool Oracle Instanz Eine Oracle-Instanz ist Hauptbestandteil des Oracle Datenbank Management
MehrHilfe zur Dokumentenverwaltung
Hilfe zur Dokumentenverwaltung Die Dokumentenverwaltung von Coffee-CRM ist sehr mächtig und umfangreich, aber keine Angst die Bedienung ist kinderleicht. Im Gegensatz zur Foto Galeria können Dokumente
MehrB*-BÄUME. Ein Index ist seinerseits wieder nichts anderes als eine Datei mit unpinned Records.
B*-Bäume 1 B*-BÄUME Beobachtung: Ein Index ist seinerseits wieder nichts anderes als eine Datei mit unpinned Records. Es gibt keinen Grund, warum man nicht einen Index über einem Index haben sollte, und
MehrBaumbasierte Strukturen
Baumbasierte Strukturen Baumbasierte Struktur / Organisation als Binärbaum Haufendateien oder sortierte Dateien nützlich für statische Dateien Dateien organisiert als Binärbaum Effizientes Einfügen und
MehrDatenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware
Datenübernahme von HKO 5.9 zur Advolux Kanzleisoftware Die Datenübernahme (DÜ) von HKO 5.9 zu Advolux Kanzleisoftware ist aufgrund der von Update zu Update veränderten Datenbank (DB)-Strukturen in HKO
MehrR-Baum R + -Baum X-Baum M-Baum
R-Baum und Varianten R-Baum R + -Baum X-Baum M-Baum staab@uni-koblenz.de 1 R-Baum R-Baum: Guttman 1984 Erweiterung B-Baum um mehrere Dimensionen Standardbaum zur Indexierung im niedrigdimensionalen Raum
MehrEinführung in Datenbanksysteme. H. Wünsch 01.2001
Einführung in Datenbanksysteme H. Wünsch 01.2001 H. Wünsch 01/2001 Einführung Datenbanken 2 Was sind Datenbanken? Datenbanken sind Systeme zur Beschreibung, Speicherung und Wiedergewinnung von Datenmengen.
Mehr17.1.2014 Einführung in die Programmierung Laborübung bei Korcan Y. Kirkici. 12.Übung 13.1. bis 17.1.2014
17.1.2014 Einführung in die Programmierung Laborübung bei Korcan Y. Kirkici 12.Übung 13.1. bis 17.1.2014 1 BEFRAGUNG http://1.bp.blogspot.com/- waaowrew9gc/tuhgqro4u_i/aaaaaaaaaey/3xhl 4Va2SOQ/s1600/crying%2Bmeme.png
Mehr1 Einleitung. Lernziele. Symbolleiste für den Schnellzugriff anpassen. Notizenseiten drucken. eine Präsentation abwärtskompatibel speichern
1 Einleitung Lernziele Symbolleiste für den Schnellzugriff anpassen Notizenseiten drucken eine Präsentation abwärtskompatibel speichern eine Präsentation auf CD oder USB-Stick speichern Lerndauer 4 Minuten
MehrGunter Saake Kai-Uwe Sattler Andreas Heuer. 3. Auflage. Datenbanken. Implementierungstechniken
Gunter Saake Kai-Uwe Sattler Andreas Heuer 3. Auflage Datenbanken Implementierungstechniken Vorwort v ix 1 Aufgaben und Prinzipien von Datenbanksystemen 1 1.1 Wiederholung der Datenbank-Grundbegriffe...
MehrTypisierung des Replikationsplan Wirries, Denis Datenbankspezialist
Typisierung des Replikationsplan Wirries, Denis Datenbankspezialist Feintypisierung - Überblick Ergebnisse Ergebnisse aus aus anderen anderen Arbeitsergebnissen Arbeitsergebnissen Replikationsplan Replikationsplan
MehrTTS - TinyTimeSystem. Unterrichtsprojekt BIBI
TTS - TinyTimeSystem Unterrichtsprojekt BIBI Mathias Metzler, Philipp Winder, Viktor Sohm 28.01.2008 TinyTimeSystem Inhaltsverzeichnis Problemstellung... 2 Lösungsvorschlag... 2 Punkte die unser Tool erfüllen
MehrWeb-Kürzel. Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter
Krishna Tateneni Yves Arrouye Deutsche Übersetzung: Stefan Winter 2 Inhaltsverzeichnis 1 Web-Kürzel 4 1.1 Einführung.......................................... 4 1.2 Web-Kürzel.........................................
MehrDatenbanken: Indexe. Motivation und Konzepte
Datenbanken: Indexe Motivation und Konzepte Motivation Warum sind Indexstrukturen überhaupt wünschenswert? Bei Anfrageverarbeitung werden Tupel aller beteiligter Relationen nacheinander in den Hauptspeicher
MehrDatenbanksysteme SS 2013
Datenbanksysteme SS 2013 Kapitel 4: Physikalische Datenorganisation Vorlesung vom 16.04.2013 Oliver Vornberger Institut für Informatik Universität Osnabrück Speicherhierarchie GB 10 GHertz TB 100 10 ms
MehrAnmerkungen zur Übergangsprüfung
DM11 Slide 1 Anmerkungen zur Übergangsprüfung Aufgabeneingrenzung Aufgaben des folgenden Typs werden wegen ihres Schwierigkeitsgrads oder wegen eines ungeeigneten fachlichen Schwerpunkts in der Übergangsprüfung
MehrAlgorithmen und Datenstrukturen
Algorithmen und Datenstrukturen Dipl. Inform. Andreas Wilkens 1 Organisatorisches Freitag, 05. Mai 2006: keine Vorlesung! aber Praktikum von 08.00 11.30 Uhr (Gruppen E, F, G, H; Vortestat für Prototyp)
MehrWiederholung ADT Menge Ziel: Verwaltung (Finden, Einfügen, Entfernen) einer Menge von Elementen
Was bisher geschah abstrakter Datentyp : Signatur Σ und Axiome Φ z.b. ADT Menge zur Verwaltung (Finden, Einfügen, Entfernen) mehrerer Elemente desselben Typs Spezifikation einer Schnittstelle Konkreter
MehrHow to do? Projekte - Zeiterfassung
How to do? Projekte - Zeiterfassung Stand: Version 4.0.1, 18.03.2009 1. EINLEITUNG...3 2. PROJEKTE UND STAMMDATEN...4 2.1 Projekte... 4 2.2 Projektmitarbeiter... 5 2.3 Tätigkeiten... 6 2.4 Unterprojekte...
Mehr