Physische Datenorganisation



Ähnliche Dokumente
Kapitel 8: Physischer Datenbankentwurf

Nachtrag zu binären Suchbäumen

Physischer Datenbankentwurf: Datenspeicherung

B-Bäume I. Algorithmen und Datenstrukturen 220 DATABASE SYSTEMS GROUP

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Anzeige von eingescannten Rechnungen

Schnellanleitung: Verbuchung von Studien- und Prüfungsleistungen

Stundenerfassung Version 1.8 Anleitung Arbeiten mit Replikaten

Professionelle Seminare im Bereich MS-Office

Advoware mit VPN Zugriff lokaler Server / PC auf externe Datenbank

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: MORE Projects GmbH

ecaros2 - Accountmanager

Lehrer: Einschreibemethoden

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

HANDBUCH PHOENIX II - DOKUMENTENVERWALTUNG

Erfahrungen mit Hartz IV- Empfängern

OPERATIONEN AUF EINER DATENBANK

Aufgabe 1: [Logische Modellierung]

Datenbanken Kapitel 2

1 topologisches Sortieren

Arbeitsgruppen innerhalb der Website FINSOZ e.v.

Dokumentation für Lehrstühle

Webalizer HOWTO. Stand:

Anleitung zur Erstellung einer Gefährdungsbeurteilung

Algorithmik 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.

Im Original veränderbare Word-Dateien

Datenübernahme von HKO 5.9 zur. Advolux Kanzleisoftware

4. BEZIEHUNGEN ZWISCHEN TABELLEN

Auf der linken Seite wählen Sie nun den Punkt Personen bearbeiten.

GEVITAS Farben-Reaktionstest

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

BANKETTprofi Telefonschnittstelle

Kapitel 3 Bilder farblich verändern - Arbeiten mit Objekten

Einführung in. Logische Schaltungen

Angaben zu einem Kontakt...1 So können Sie einen Kontakt erfassen...4 Was Sie mit einem Kontakt tun können...7

Informationsblatt Induktionsbeweis

Dateimanagement in Moodle Eine Schritt-für

TYPO3 Tipps und Tricks

Nutzung des Retain-Archivs

Handbuch ECDL 2003 Basic Modul 5: Datenbank Access starten und neue Datenbank anlegen

teamsync Kurzanleitung

Access Grundlagen für Anwender. Andrea Weikert 1. Ausgabe, 1. Aktualisierung, Juli inkl. zusätzlichem Übungsanhang ACC2010-UA

Mit dem Tool Stundenverwaltung von Hanno Kniebel erhalten Sie die Möglichkeit zur effizienten Verwaltung von Montagezeiten Ihrer Mitarbeiter.

BsBanking. Nach dem Anmelden werden Ihnen alle Rechtsanwälte angezeigt. Sie können hier auch neue anlegen und vorhandene bearbeiten.

Einführungskurs MOODLE Themen:

Universal Gleismauer Set von SB4 mit Tauschtextur u. integrierten Gleismauerabschlüssen!

Veröffentlichen von Apps, Arbeitsblättern und Storys. Qlik Sense Copyright QlikTech International AB. Alle Rechte vorbehalten.

Ist Excel das richtige Tool für FMEA? Steve Murphy, Marc Schaeffers

Hilfen zur Verwendung der Word-Dokumentvorlage des BIS-Verlags

DELFI. Benutzeranleitung Dateiversand für unsere Kunden. Grontmij GmbH. Postfach Bremen. Friedrich-Mißler-Straße Bremen

Informationen zu den regionalen Startseiten

Grundlagen der Theoretischen Informatik, SoSe 2008

Kapitel 6 Anfragebearbeitung

mobilepoi 0.91 Demo Version Anleitung Das Software Studio Christian Efinger Erstellt am 21. Oktober 2005

Kapitel 4 Die Datenbank Kuchenbestellung Seite 1

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1

1. Adressen für den Serienversand (Briefe Katalogdruck Werbung/Anfrage ) auswählen. Die Auswahl kann gespeichert werden.

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: )

Stundenerfassung Version 1.8

1 Mathematische Grundlagen

Version: System: DFBnet Lizenz 5.20

Zwischenablage (Bilder, Texte,...)

7. Übung - Datenbanken

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Updatehinweise für die Version forma 5.5.5

Pfötchenhoffung e.v. Tier Manager

Aufklappelemente anlegen

Antolin-Titel jetzt automatisch in WinBIAP kennzeichnen

Anleitungen TYPO 3 Eingaben tätigen

Anwendertreffen 20./21. Juni

AutoCAD Dienstprogramm zur Lizenzübertragung

Anlage eines neuen Geschäftsjahres in der Office Line

S/W mit PhotoLine. Inhaltsverzeichnis. PhotoLine

Lizenzierung von SharePoint Server 2013

Schnelleinstieg. Datenimport für die EXPOSÉ - Familie. Import von Adress / Objektdaten aus MS Excel. = Datenintegration aus anderen Lösungen

Historical Viewer. zu ETC5000 Benutzerhandbuch 312/15

Kurzanleitung RACE APP

Schuljahreswechsel im Schul-Webportal

Import und Export von Übergängern

Stand: Adressnummern ändern Modulbeschreibung

Laufende Auswertung von Feedback-Fragebögen Eine Vorlage zur Auswertung eines Fragebogens und die Präsentation erstellen...

BEDIENUNGSANLEITUNG: EINREICH-TOOL

6 Bilder und Dokumente verwalten

Anbindung des eibport an das Internet

Hilfedatei der Oden$-Börse Stand Juni 2014

Handbuch ECDL 2003 Modul 2: Computermanagement und Dateiverwaltung Dateien löschen und wiederherstellen

Bedienungsanleitung für Mitglieder von Oberstdorf Aktiv e.v. zur Verwaltung Ihres Benutzeraccounts auf

Informations- und Kommunikationsinstitut der Landeshauptstadt Saarbrücken. Upload- / Download-Arbeitsbereich

SUB-ID- VERWALTUNG MIT GPP SETUP-GUIDE FÜR PUBLISHER

MMS - Update auf Version 4.4

Das Seminar ist eine Prüfungsleistung für Bachelor und Masterstudierende der Informatik!

Teaser-Bilder erstellen mit GIMP. Bildbearbeitung mit GIMP 1

Individuelle Formulare

SCHRITT 1: Öffnen des Bildes und Auswahl der Option»Drucken«im Menü»Datei«...2. SCHRITT 2: Angeben des Papierformat im Dialog»Drucklayout«...

Whitepaper. Produkt: combit factura manager. Mehrwertsteuererhöhung durchführen. combit GmbH Untere Laube Konstanz

Leichtathletik Datenverarbeitung Handbuch für Melder

1 Einleitung. Lernziele. automatische Antworten bei Abwesenheit senden. Einstellungen für automatische Antworten Lerndauer. 4 Minuten.

etax.schwyz: Suche nach Steuerfalldateien

Bedienungsanleitung für den Online-Shop

Transkript:

Physische Datenorganisation Physische Datenorganisation 2002 Prof. Dr. Rainer Manthey Informationssysteme 1 Übersicht Datenbanken, Relationen und Tupel werden auf der untersten Ebene der bereits vorgestellten 3-Schichten-Architektur - der physischen Ebene - durch "reale" Datenstrukturen (meist Dateien) realisiert. Die Bereitstellung und Verwaltung dieser Datenstrukturen erfolgt in letzter Konsequenz - wie bei jeder vom Rechner genutzten Datenstruktur - durch entsprechende Dienste des Betriebssystems. Jedes DBMS enthält jedoch auch selbst Komponenten, insgesamt unter dem Begriff 'Speicherverwaltung' zusammengefasst, die für Aufbau und Verwaltung der physischen Ausprägungen der Datenbanken zuständig sind. Zentrale Aufgaben der Speicherverwaltung sind: Abbildung logischer Relationsschemata auf Dateien Aufbau zusätzlicher Datenstrukturen zur Verbesserung der Zugriffseffizienz (Zugriffspfade, insbesondere Indexstrukturen) Abwicklung aller Manipulationen gespeicherter Daten in Folge von Änderungsbefehlen, die an der Nutzerschnittstelle des DBMS auflaufen. In diesem Kapitel wird eine kurze, an Kapitel 7 des Kemper-Buchs orientierte Einführung in die wichtigsten Prinzipien der physischen DB-Organisation gegeben. 2002 Prof. Dr. Rainer Manthey Informationssysteme 2

Speicherstrukturen Physische Datenorganisation 6.1 Speicherstrukturen 2002 Prof. Dr. Rainer Manthey Informationssysteme 3 Speicherhierarchie Zugriffszeiten: Register 1-10ns Cache 10-100ns Hauptspeicher Plattenspeicher Zugriffslücke: Faktor 10 5 100-1000ns 10 ms Archivspeicher sec 2002 Prof. Dr. Rainer Manthey Informationssysteme 4

Magnetplattenspeicher 2002 Prof. Dr. Rainer Manthey Informationssysteme 5 2002 Prof. Dr. Rainer Manthey Informationssysteme 6

Hauptspeicher als Datenbankpuffer Operationen auf Daten können nur im Hauptspeicher durchgeführt werden! Folge: Zu bearbeitende Daten müssen immer seitenweise in den Hauptspeicher eingelesen ("gepuffert") und nach der Modifikation (irgendwann) wieder ausgelagert werden (Strategien: siehe Kapitel 7 im Zshg. mit Transaktionen) Für das DBMS dient der größte Teil des Hauptspeichers damit als Datenbankpuffer. gepufferte Seite verdrängen einlagern Hauptspeicher (transient, "vorübergehend") Hintergrundspeicher (persistent, "dauerhaft") 2002 Prof. Dr. Rainer Manthey Informationssysteme 7 Ein- und Auslagern von Seiten Der Systempuffer ist in Seitenrahmen gleicher Größe aufgeteilt. Ein Rahmen kann eine Seite aufnehmen. Überzählige Seiten werden auf die Platte ausgelagert. Details zur Seitenverwaltung durch das Betriebssystem: siehe Informatik II Konsequenz: DBMS-Komponente zur Speicherverwaltung ist eng mit Betriebssystem verzahnt. Hauptspeicher 0 4K 8K 12K Hintergrundspeicher (Platte) 16K 20K 24K 28K 32K 36K 40K 44K 48K 52K 56K 60K Seitenrahmen Seite 2002 Prof. Dr. Rainer Manthey Informationssysteme 8

Speicherung von Tupeln auf Seiten Prinzip der Abbildung von Relationen auf Seiten: pro Relation: Datei aus mehreren (aufeinanderfolgenden) Seiten pro Seite: interne Datensatztabelle mit Verweisen auf alle Tupel dieser Seite Adressierung einzelner Tupel mittels Tupel-Identifikator (TID) TID besteht aus zwei Teilen: Seitennummer Nummer eines Eintrags in interner Datensatztabelle der Seite Indirektion ist nützlich bei Reorganisation im Inneren der Seite. TID 4711 2 1 2 3 5001 Grundzüge... 4052 Logik... 5041 Ethik... Seite 4711 2002 Prof. Dr. Rainer Manthey Informationssysteme 9 Interne Reorganisation Aufgrund der indirekten Adressierung von Tupeln mittels TIDs sind die meisten internen Reorganisationen auf Seiten ohne nach aussen sichtbare Adressänderungen möglich: Tupel (nach Modifikation) innerhalb der Seite verschoben, ohne den TID zu ändern 2002 Prof. Dr. Rainer Manthey Informationssysteme 10

Verdrängen eines Tupels von einer Seite Ist eine Seite zu voll geworden, müssen Tupel ggf. auf andere Seiten verlagert ("verdrängt") werden. interner Verweis auf neue Position des verdrängten Datensatzes: Keine externe TID-Änderung nötig! 2002 Prof. Dr. Rainer Manthey Informationssysteme 11 Indexstrukturen Physische Datenorganisation 6.2 Indexstrukturen 2002 Prof. Dr. Rainer Manthey Informationssysteme 12

Zugriffspfade und Indexe Datenbankmanagementsysteme verwenden in der Regel zahlreiche intern verwaltete Hilfs-Datenstrukturen, um den Zugriff auf größere Tabellen zu beschleunigen. Solche Datenstrukturen werden allgemein Zugriffspfade genannt. Die wichtigste Zugriffshilfe stellen Indexe dar, spezielle Formen von Suchbäumen, die anhand bestimmter Indexierungskriterien (meist bestimmte Attribute) einen gezielten Zugriff auf Datensätze bieten, die die Indexwerte enthalten (statt sequentiell in der ganzen Tabelle danach suchen zu müssen). Der Begriff 'Index' ist motiviert durch die Indexseiten von Büchern. Plural für diesen "terminus technicus" ist 'Indexe' (nicht 'Indizes'), das zugehörige Verb ist 'indexieren' (nicht 'indizieren') - Empfehlung, keine "Duden-Regel". Die meisten SQL-Dialekte kennen mittlerweile eigene DDL-Befehle zum Anlegen bzw. Löschen von Indexen auf eines oder mehrere Spalten einer Tabelle: CREATE INDEX <index-name> ON <table-name> <list-of-column-names> DROP INDEX <index-name> 2002 Prof. Dr. Rainer Manthey Informationssysteme 13 Indexe: Übersicht Pro Relation gibt es normalerweise mindestens einen Index, der die Werte des Primärschlüssels der Relation indexiert (und oft automatisch angelegt wird): Primärindex Darüberhinaus kann es mehrere Sekundärindexe geben, die beliebige andere Attribute/A.kombinationen indexieren, auch wenn diese nicht die Schlüsseleigenschaft besitzen. Zur Implementierung von Indexen werden vom DBMS unterschiedliche Formen spezieller Datenstrukturen verwendet, deren Auswahl nur bei großen kommerziellen Systemen vom DB-Administrator beeinflusst werden kann: Suchbäume: ISAM-Dateien B-Bäume, (Präfix-)B + -Bäume R-Bäume, R+-Bäume (mehrdimensionale Indexstrukturen) Hashing, Erweitertes Hashing hier nicht behandelt (siehe Kemper Kap. 7) Die Verwendung von Indexen unterliegt einem typischen "Tradeoff" verbrauchter Ressourcen: Einem Zeitgewinn beim Zugriff auf Daten steht ein Zeitverlust durch die Indexverwaltung und ein Speicherplatzverbrauch für die Indexstrukturen gegenüber. 2002 Prof. Dr. Rainer Manthey Informationssysteme 14

ISAM-Organisation einfachste Form der Indexierung: Index-Sequential Access Method (ISAM) Jeder Datensatz (hier: jedes Tupel) besteht aus den Werten des/der indexierten Attributs/A.te ("Suchschlüssel S") und denen der übrigen Attribute (Daten D). Die Suchschlüsselwerte werden auf eigenen Speicherseiten sequentiell und sortiert abwechselnd mit Verweisen auf die zugehörigen Datenseiten gespeichert. Suche innerhalb einer Seite: sequentiell! Bei Modifikationen der Indexseiten ist u.u. hoher Verwaltungsaufwand erforderlich (Ausgleichen benachbarter Seiten, Umsetzen von Verweisen, Anlegen neuer Seiten, Verschieben von Schlüsseln)... S 1 S 2... S k... S l... S m Indexseiten... S 1 < S 2 Datenseiten D 1 D 2... D s D t... D... s D v... D w 2002 Prof. Dr. Rainer Manthey Informationssysteme 15 B-Bäume weniger "anfällig" bei Umorganisation: spezielle balancierte Suchbäume, die zur Seitenstruktur eines DB-Speichers passen B-Bäume B? Das Prinzip der B-Bäume wurde estmals 1971 in einer Arbeit von Bayer und McCreight eingeführt. Jeder Knoten eines B-Baums entspricht einer Seite des Speichers (i.a. mehrere 100 Datensätze/Schlüsselwerte pro Seite). Knoten enthalten sowohl Schlüssel als auch Daten (bzw. TIDs von Datensätzen), d.h. keine Unterscheidung mehr zwischen Index- und Datenseiten. Interne Organisation nach dem Binärbaum-Prinzip (analog zu ISAM): Verweise auf Nachfolgerseiten wechseln mit Schlüssel ab. linker Nachfolgerknoten (pro Schlüsselwert!): kleinere Schlüsselwerte rechter Nachfolgerknoten: größere Schlüsselwerte Da viele Verweise von einem Knoten ausgehen, hat jeder Knoten i.a. mehr als zwei Nachfolger: Mehrwegbäume 2002 Prof. Dr. Rainer Manthey Informationssysteme 16

B-Baum: Prinzipschaubild Verweis bei Primärindex: zug. Datensatz bei Sekundärindex: TID Suchschlüssel 2002 Prof. Dr. Rainer Manthey Informationssysteme 17 B-Baum: Füllungsgrad und Verwaltungsprinzipien wichtige Grundidee des B-Baumprinzips: Für jeden Knoten eines B-Baums gibt es einen minimalen und einen maximalen Füllungsgrad, der strikt eingehalten werden muss. stets gilt: maximaler Füllungsgrad = 2 minimaler Füllungsgrad!! Bezeichnung für die minimale Zahl an Datensätzen in einer Seite: Grad des Baums In einem B-Baum vom Grad k enthält jeder Knoten (ausser der Wurzel) mindestens k Datensätze und höchstens 2 k Einträge. Motivation: [k, 2 k ]-Intervall ermöglicht einfaches Aufspalten bzw. Verschmelzen von Knoten bei Über- oder Unterlauf nach DB-Änderungen bei Überlauf: 2 k + 1 Elemente im Knoten Aufspalten in 2 Knoten mit k Elementen Verschieben des mittleren Elements in den Vaterknoten (eventuell wiederholt bis zur Wurzel) bei Unterlauf: k - 1 Elemente im Knoten zunächst Ausgleichen durch Verschieben von Daten in Nachbarknoten im Extremfall: Verschmelzen von zwei Knoten zu einem 2002 Prof. Dr. Rainer Manthey Informationssysteme 18

B-Baum: "Definition" 2002 Prof. Dr. Rainer Manthey Informationssysteme 19 B-Baum: Beispiel k = 2 15? Suchkomplexität: logarithmisch (O(log k (n)) (bei n Datensätzen im B-Baum) 2002 Prof. Dr. Rainer Manthey Informationssysteme 20

Einfügen in einen B-Baum k = 2 einzufügender Wert: 17 13 16 19 Überlauf! 14 15 17 18 Aufspalten neu 2002 Prof. Dr. Rainer Manthey Informationssysteme 21 Einfügen eines neuen Objekts (Datensatz) in einen B-Baum Einfügealgorithmus für B-Bäume (Prinzip): 2002 Prof. Dr. Rainer Manthey Informationssysteme 22

Löschen aus einem B-Baum k = 2 zu löschender Wert: 7 Unterlauf! Auffüllen (Löschalgorithmus: komplexer als Einfügealgorithmus) 2002 Prof. Dr. Rainer Manthey Informationssysteme 23 Physische Datenorganisation: weitergehende Quellen Die Einführung in die Grundlagen der physischen Datenorganisation in diesem Kapitel ist relativ kurz und knapp ausgefallen. Es gibt zu diesem Thema noch wesentlich mehr zu sagen, was aber den Rahmen dieser Vorlesung sprengt. Insbesondere zum physischen Entwurf haben Sie hier gar keine Informationen erhalten. weiterführende Veranstaltung mit Schwerpunkt "Physische Datenorganisation": Vorlesung "Relationale Datenbanken" (Th. Bode) im SS 2003 Sehr gutes, neues Lehrbuch dazu: Theo Härder, Erhard Rahm: "Datenbanksysteme: Konzepte und Techniken der Implementierung", 2. Aufl. 2001, Springer-Verlag zugehörige Vorlesung von Prof. Rahm im Web: http://dbs.uni-leipzig.de/de/skripte/idbs1/inhalt.html 2002 Prof. Dr. Rainer Manthey Informationssysteme 24