1.01k likes | 1.13k Views
Kapitel 10. Physische Datenorganisation. Lernziele. . Speicherhierarchie Hintergrundspeicher / RAID Organisation von B-Bäumen, B+ Bäumen.. Hashing Organisation von mehrdimensionalen Datenstrukturen. Lesen von Daten von der Festplatte. .
E N D
Kapitel 10 Physische Datenorganisation
Lernziele • Speicherhierarchie • Hintergrundspeicher / RAID • Organisation von B-Bäumen, B+ Bäumen.. • Hashing • Organisation von mehrdimensionalen Datenstrukturen Datenbanken, SS 12 Kapitel 9: Datenorganisation
Lesen von Daten von der Festplatte • 1. Seek Time: Arm positionieren auf entsprechende Spur • 5ms • 2. Latenzzeit: ½ Plattenumdrehung (im Durchschnitt) • Rotation der Platte bis Kopf über zu lesender/schreibender Stelle steht • 10000 Umdrehungen / Minute • Ca 3ms • 3. Lesezeit: Lesen des Blocks • 4. Transfer von der Platte zum Hauptspeicher • 100 Mb /s 15 MB/s Datenbanken, SS 12 Kapitel 9: Datenorganisation
Random versus Chained IO • 1000 Blöcke à 4KB sind zu lesen • Random I/O: „jedesmal zum Pluto fliegen“ • Jedesmal Arm positionieren • Jedesmal Latenzzeit • 1000 * (5 ms + 3 ms) + Transferzeit von 4 MB • > 8000 ms + 300ms 8s • Chained IO: „Rakete zum Pluto soll möglichst voll beladen sein“ • Einmal positionieren, dann „von der Platte kratzen“ • 5 ms + 3ms + Transferzeit von 4 MB • 8ms + 300 ms 1/3 s • Also ist Chained IO ein biszwei Größenordnungen schneller als Random IO • in Datenbank-Algorithmen unbedingt beachten ! Datenbanken, SS 12 Kapitel 9: Datenorganisation
Zugriff: Physikalische Speicherung der Daten Datenbank-Seite (32-64 Kb) Cache Header Meyer 123 ... Schneider 145 ... Müller 129 ... -- Forwarding-RID Slot-Array Extent Table Datenbanken, SS 12 Kapitel 9: Datenorganisation
Einfacher Index: Binäre Suchbaum Schlüssel (mit den ihnen zugeordneten Daten) bilden die Knoten eines binären Baums mit der Invariante: für jeden Knoten t mit Schlüssel t.key und alle Knoten l im linken Teilbaum von t, t.left, und alle Knoten r im rechten Teilbaum von t gilt: l.key t.key r.key Suchen eines Schlüssels k: Traversieren des Pfades von der Wurzel bis zu k bzw. einem Blatt Einfügen eines Schlüssels k: Suchen von k und Anfügen eines neuen Blatts Löschen eines Schlüssel k: Ersetzen von k durch das „rechteste“ Blatt links von k Worst-Case-Suchzeit für n Schlüssel: O(n) bei geeigneten Rebalancierungsalgorithmen (AVL-Bäume, Rot-Schwarz-Bäume, usw.): O(log n) Datenbanken, SS 12 Kapitel 9: Datenorganisation
Beispiel für einen binären Suchbaum London, Paris, Madrid, Kopenhagen, Lissabon, Zürich, Frankfurt, Wien, Amsterdam, Florenz London Kopenhagen Paris Frankfurt Lissabon Madrid Zürich Amsterdam Wien Florenz Datenbanken, SS 12 Kapitel 9: Datenorganisation
S.. Suchschlüssel D.. Weitere Daten V.. Verweise (SeitenNr) Datenbanken, SS 12 Kapitel 9: Datenorganisation
Einfügen eines neuen Objekts (Datensatz) in einen B-Baum Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 7 10 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 3 7 10 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 ? 3 7 10 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 ? 3 7 10 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 10 ? 3 3 7 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 10 ? 3 7 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 1 10 ? 3 7 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 1 10 ? 3 7 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 10 ? 1 3 7 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 10 ? 1 1 3 7 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 2 10 ? 1 3 7 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 2 10 ? 2 1 3 7 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 2 10 ? 2 1 2 3 7 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 4 10 ? 1 2 3 7 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 4 10 ? 4 1 2 3 7 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 4 10 ? 4 1 2 3 7 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 4 10 ? 4 1 2 3 7 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 4 3 10 ? 4 1 2 3 7 13 19 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 3 10 ? 1 2 13 19 4 7 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 11 3 10 ? 1 2 13 19 4 7 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 3 10 ? 1 2 11 13 19 4 7 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 21 3 10 ? 1 2 11 13 19 4 7 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 21 3 10 ? 1 2 11 13 19 4 7 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 12 3 10 ? 1 2 11 13 19 21 4 7 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 12 3 10 ? 1 2 11 13 19 21 12 4 7 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 12 3 10 ? 1 2 11 13 19 21 12 4 7 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 12 3 10 ? 1 2 11 13 19 21 12 4 7 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 12 3 10 13 ? 1 2 11 13 19 21 12 4 7 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 12 3 10 13 ? 1 2 11 19 21 4 7 11 12 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 12 3 10 13 ? 1 2 19 21 4 7 11 12 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 14 3 10 13 ? 1 2 19 21 4 7 11 12 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 14 3 10 13 ? 1 2 14 19 21 4 7 11 12 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 15 3 10 13 ? 1 2 14 19 21 4 7 11 12 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 20 3 10 13 ? 1 2 14 15 19 21 4 7 11 12 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 20 3 10 13 ? 20 1 2 14 15 19 21 4 7 11 12 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 20 3 10 13 ? 20 1 2 14 15 19 21 4 7 11 12 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 20 3 10 13 19 ? 20 1 2 14 15 19 21 4 7 11 12 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 20 3 10 13 19 ? 20 21 1 2 14 15 4 7 11 12 Datenbanken, SS 12 Kapitel 9: Datenorganisation
Sukzessiver Aufbau eines B-Baums vom Grad k=2 5 3 10 13 19 ? 20 21 1 2 14 15 4 7 11 12 Datenbanken, SS 12 Kapitel 9: Datenorganisation