Speichersystem und Pufferverwaltung in Datenbankmanagementsystemen

Größe: px
Ab Seite anzeigen:

Download "Speichersystem und Pufferverwaltung in Datenbankmanagementsystemen"

Transkript

1 und in Datenbankmanagementsystemen Christoph Hennig

2 1 Einleitung und Grundlagen K2 Computer Softwareentwicklung Diplomarbeit bei K2 5-Schichtenarchitektur von DBMS 2 Aufgaben Satzabbildung Satzadressierung 3 E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen 4

3 1 Einleitung und Grundlagen K2 Computer Softwareentwicklung Diplomarbeit bei K2 5-Schichtenarchitektur von DBMS 2 Aufgaben Satzabbildung Satzadressierung 3 E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen 4

4 K2 Computer Softwareentwicklung Diplomarbeit bei K2 5-Schichtenarchitektur von DBMS Software-, Hardware- und Consulting-Dienstleister Sitz im sonnigen Quedlinburg (Harz) Gründung 1993 als Händler von CAD/GIS-Software (CADdy) Seit 1995 Vertrieb und Herstellung eines selbstentwickelten CAD/GIS-Systems (GEOvision) Seit 2008 wird der Fokus verstärkt auf die Softwareentwicklung gelegt 4 / 44

5 K2 Computer Softwareentwicklung Diplomarbeit bei K2 5-Schichtenarchitektur von DBMS Performance-Probleme im Produkt GEOvision führten zu der Diplomarbeit Probleme traten besonders im Umgang mit grossen Datenmengen auf Es bestanden zwei Möglichkeiten: 1 Evaluierung eines Datenbankmanagementsystems zur Datenhaltung 2 Entwicklung einer eigenen Lösung zur Datenhaltung Möglichkeit 2 wurde bearbeitet und hat gezeigt, dass Implementierungskonzepte der unteren Schichten eines DBMS erfolgreich angewendet werden können 5 / 44

6 K2 Computer Softwareentwicklung Diplomarbeit bei K2 5-Schichtenarchitektur von DBMS deskriptiv WAS Datensystem WIE prozedural Zugriffssystem Härder/Rahm 2001 Weiterentwicklung von DIAM Anwendungsprogramme/Benutzer SELECT... FROM... WHERE Anfrageübersetzung/-optimierung Zugriffspfadauswahl Zugriffskontrolle/Integritätskontrolle FINDE nächsten Satz SPEICHERE Satz (log.) Katalogverwaltung Sortierkomponente Sperrverwaltung SPEICHERE internen Satz FÜGE Eintrag im B*-Baum ein Record Manager Zugriffspfadverwaltung Logging/Recovery (Fehlerbeh.komp.) BEREITSTELLEN Seite j FREIGEBEN Seite j Systempufferverwaltung (Buffer Manager) LIES Block k Betriebssystem/ SCHREIBE Block k Dateiverwaltung Externspeicherverwaltung/Dateiverwaltung DB Query Optimizer aufgezeigt am Beispiel eines relationalen Datenbanksystems deskriptive, mengenorientierte Schnittstelle (z.b. SQL) satzorientierte Schnittstelle (log.) interne Satzschnittstelle (phys.) Dateischnittstelle Anwendung Datenbank-Verwaltungssystem (DBVS) Systempufferschnittstelle Betriebssystem/ Dateisystem 6 / 44

7 1 Einleitung und Grundlagen K2 Computer Softwareentwicklung Diplomarbeit bei K2 5-Schichtenarchitektur von DBMS 2 Aufgaben Satzabbildung Satzadressierung 3 E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen 4

8 Aufgaben des Zugriffssystems Aufgaben Satzabbildung Satzadressierung Stellt höheren Schichten eine satzorientierte DB-Schnittstelle zur Verfügung Verbirgt die Implementierungskonzepte für externe Sätze und logische Zugriffspfade Katalogverwaltung enthält Informationen über den Aufbau der Sätze und über vorhandene Zugriffspfade Wird verwendet, um durch logische Satzmengen zu navigieren: Operationen FIND NEXT <record> STORE <record> 8 / 44

9 Aufgaben des Zugriffssystems Aufgaben Satzabbildung Satzadressierung Die satzorientierte DB-Schnittstelle dient in DBS nach dem Hierarchie- oder Netzwerkmodell sowie in objektorientierten DBS als Anwendungsprogrammierschnittstelle. KUNDEN Name Plz Ort Geb.-Datum. Hennig Quedlinburg Müller Jena Tupel Cetin Leipzig- Schkeuditz Staadt Oldenburg Thorgau Erfurt Spalte 9 / 44

10 Aufgaben des s Aufgaben Satzabbildung Satzadressierung Stellt dem Zugriffssystem die interne Satzschnittstelle zur Verfügung Realisiert physische Speicherungsstrukturen (interne Sätze, phys. Zugriffspfade) Bietet verschiedene Zugriffspfadarten und Speicherungsoptionen (zur Optimierung) Aufgaben lassen sich zwei Komponenten zuordnen: Recordund Index-Manager Operationen STORE <internal record> INSERT <b* tree entry> 10 / 44

11 Abbildung von Tupeln auf Sätze Aufgaben Satzabbildung Satzadressierung Materialisierte Speicherung * * Cetin 18 Leipzig-Schkeuditz Satz mit eingebetteten Längenfeldern und Zeigern 5 Cetin Leipzig-Schkeuditz Satz mit eingebetteten Längenfeldern Referenzierte Speicherung * * Cetin Leipzig-Schkeuditz Tupel auf mehrere Sätze abgebildet 11 / 44

12 Abbildung von Tupeln auf Sätze Aufgaben Satzabbildung Satzadressierung Tupel wird auf einen oder mehrere physische Sätze abgebildet Physische Sätze besitzen ein eindeutiges Satzkennzeichen (zum Wiederauffinden) Konkatenation von Feldwerten fester Länge ergibt Satz fester Länge Feldwerte variabler Länge implizieren Sätze variabler Länge Einhaltung der Reihenfolge der Feldwerte kann aufgehoben werden, wenn Feldnamen mit gespeichert werden Komplexe Objekte/Tupel (Mengen-, Listenkonstrukturen) werden hier nicht betrachtet (siehe Literatur) Annahme Zur Vereinfachung werden hier im Folgenden physische Sätze fester und variabler Länge unterschieden und betrachtet. 12 / 44

13 Abbildung von Tupeln auf Sätze Aufgaben Satzabbildung Satzadressierung KUNDEN Name Plz Ort Geb.-Datum. Tupel Hennig Müller Cetin Staadt Thorgau Spalte Quedlinburg Jena Leipzig- Schkeuditz Oldenburg Erfurt Hennig Quedlinburg Müller Jena Cetin Leipzig-Schkeuditz Staadt Oldenburg Thorgau Erfurt Satz belegt 42 Byte STRUKTUR Ober-Teil Unter-Teil Menge Tupel X A 1 X B 1 X Z 1 A C 4 A D 8 A E 1 B E 7 C Y 4 D Y 5 E Z 3 X A 1 X B 1 X Z 1 A C 4 A D 8 A E 1 B E 7 C Y 4 D Y 5 E Z 3 Spalte Jeder Satz 6 Byte groß 13 / 44

14 Adressierung von Sätzen Aufgaben Satzabbildung Satzadressierung Datei des Betriebssystems Byte 0 Byte n 5 Ce tin Leipzig- Schkeuditz Adresse des Datensatzes = Byte-Offset Zum Referenzieren eines Satzes werden z.b. in Zugriffspfaden Verweise auf den Satz gespeichert Byte-Offset ist statisch und nicht resistent gegenüber Datensatzverschiebungen Häufige Reorganisierungen notwendig und damit verbundene Aktualisierungen der Zugriffspfade 14 / 44

15 Adressierung von Sätzen Aufgaben Satzabbildung Satzadressierung Datei des Betriebssystems Block 0 Block n Block mit 4 bis 64K 5 Ce tin Leipzig- Schkeuditz Adresse des Datensatzes = BlockNr. und Block-Offset TID-Konzept (Tuple IDentifier) Jede Satzadresse besteht aus Blocknummer und Index auf Blockinterne Slot-Tabelle 15 / 44

16 Adressierung von Sätzen (variabel) Aufgaben Satzabbildung Satzadressierung Var Record Page Record SlotTable FreeBytes Deleted Resistent gegenüber Satzverschiebungen innerhalb der Seite. Free Space Slot-Tabelle spiegelverkehrt zu den Datensätzen. Satzlänge implizit aus der Slot-Tabelle ermittelbar. Slot[4] Slot[3] Slot[2] Slot[1] Slot[0] 16 / 44

17 Aufgaben Satzabbildung Satzadressierung Beispiel: Adressierung von Sätzen (variabel) auf 2K-Block Anzahl freier Byte Beginn der Slottabelle Var Record Page Hennig Quedlinburg Müller Jena Cetin Leipzig-Schkeuditz Staadt Oldenburg Thorgau Erfurt Slot enthält Offset und Flag (Deleted, Hidden) zu einem Satz. Sätze fortlaufend dicht aufeinander folgend gespeichert Satzlänge ergibt sich aus der Differenz der Offsets der Slots. Slot[5] Slot[1] Beginn des Freibereichs 17 / 44

18 Adressierung von Sätzen (variabel) Aufgaben Satzabbildung Satzadressierung TID (32 Bit Adresse) wird in Anteil für BlockNr. und Anteil für Slotindex zerlegt (Bitmaske) 8 Bit für Slotindex erlauben es maximal 256 Datensätze auf einem Block zu verwalten Bei 8K-Block beträgt dann die kleinste Satzgrösse 30 Byte um Block voll auszulasten Maximale Dateigrösse liegt dann bei 128 GB (24 Bit für BlockNr.) u.u. muss die maximale Slotanzahl auf einer Seite an die Seitengrösse angepasst werden 18 / 44

19 Adressstabilität Einleitung und Grundlagen Aufgaben Satzabbildung Satzadressierung Block X Block Y Var Record Page 0... Var Record Page Hennig Quedlinburg Müller Jena Block Y, Slot 1 6 Staadt Oldenburg Thorgau Erfurt Cetin-Abrahams Leipzig-Schkeuditz Im Zugriffspfad steht: Block X, Slot 3 Anstelle des Datensatzes wird Stellvertreter-TID gespeichert. Reorganisationen werden damit verzögert. 19 / 44

20 Aufgaben Satzabbildung Satzadressierung Adressierung von Sätzen (fest lang) Fix Record Page Bitlist for Used/Unused Slots Satzverschiebungen und Satzerweiterungen nicht nötig/möglich. Bitliste am Seitenanfang markiert Slots als belegt oder frei. Slotlänge nicht veränderbar -> direkte Adressierung. 20 / 44

21 Aufgaben Satzabbildung Satzadressierung Beispiel: Adressierung von Sätzen (fest lang) Fix Record Page X A 1 X B 1 X Z 1 A C 4 A D 8 A E 1 B E 7 C Y 4 D Y 5 E Z 3 TID (32 Bit Adresse) wird mittels DIV und MOD in BlockNr. und Slotindex zerlegt. Satzoperationen (Einfügen, Ersetzen, Lesen) performanter als bei variablen Satzlängen. 21 / 44

22 Realisierung langer Sätze Aufgaben Satzabbildung Satzadressierung TID des übergrossen Satzes: Block x, Slot 1 Block X Var Record Page PageSets, bestehend aus Block A, Slot 1, 2036 Liste von (TID, Highest Byte) Block B, Slot 1, Paaren Block C, Slot 1, 6110 Block D, Slot 1, Block A Var Record Page Block C Var Record Page Byte 0 Byte 2036 Block B Var Record Page Byte 4074 Byte 6110 Block D Var Record Page Byte 2037 Byte 4073 Byte 6111 Byte / 44

23 Realisierung langer Sätze Aufgaben Satzabbildung Satzadressierung Datensatz wird in Teildatensätze (MaxRecordSize) zerlegt Jeder Teildatensatz wird auf bekannte Weise gespeichert TID und höchstwertigstes Byte eines Teildatensatzes werden in einer sortierten Liste gesammelt Liste (PageSet) wird rekursiv wie ein Datensatz behandelt und gespeichert Es entsteht ein Zugriffsbaum (Key = Highest Byte) auf den Datensatz Selektiver Zugriff auf bestimmte Bereiche des Datensatzes möglich 23 / 44

24 1 Einleitung und Grundlagen K2 Computer Softwareentwicklung Diplomarbeit bei K2 5-Schichtenarchitektur von DBMS 2 Aufgaben Satzabbildung Satzadressierung 3 E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen 4

25 E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen Bisher: Speicherungsstrukturen basieren auf blockstrukturierten Dateien: READ <block>, WRITE <block> Zwischen einem READ und einem WRITE werden mehr Blockinhalte geändert als nur der einzelne Datensatz u.u. wird auf einen Block mehrfach hintereinander zugegriffen Deshalb:, welche einen begrenzten Hauptspeicherbereich als Pool für solche Dateiblöcke verwendet, mit dem Ziel READ-/WRITE-Aufrufe einzusparen 25 / 44

26 E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen Speicherdichte wächst bei Externspeichern schneller als die Zugriffszeit. Folglich verschlechtert sich das Verhältnis wahlfrei vs. sequentiell zu ungunsten wahlfreier Zugriffe. Prozessor Register Caches Hauptspeicher Kapazität Zugriffszeit Bytes 1-5 ns K - MBytes 2-20 ns M - GBytes ns Kosten pro Einheit Lösung: Grosse Blöcke und geschickte Clusterung der Daten (um wahlfreie Zugriffe zu reduzieren)! Externspeicher Archivspeicher GBytes 4-10 ms T - PBytes sec - min Kapazität Zugriffzeit 26 / 44

27 E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen Stellt dem eine Systempufferschnittstelle zur Verfügung: GET <page>, RELEASE <page> Logische Seitenreferenz: 1 Seite im Cache Lokalisierung erfolgreich FIX-Vermerk Wartungsoperationen in Verwaltung (u.a. LRU) Pufferadresse zurückgeben 2 Seite nicht im Cache (Physische Seitenreferenz) Lokalisierung erfolglos Seite zur Ersetzung auswählen und u.u. zurückschreiben Angeforderte Seite lesen FIX-Vermerk Wartungsoperationen in Verwaltung (u.a. LRU) Pufferadresse zurückgeben 27 / 44

28 Zustände einer Seite im Cache E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen getpage() releasepage() getpage() Fixed Clean getpage() releasepage() UnFixed Clean savepage() flush() modifypage() getpage() savepage() flush() releasepage() Dateisystem (Betriebssystem) Fixed Dirty getpage() releasepage() UnFixed Dirty modifypage() newpage() discard() *Nirvana* 28 / 44

29 E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen Beispiel: Satzzugriff über Primärschlüssel Katalogseitenreferenz (Index vorhanden? Welche Datei?) 1 Index vorhanden Entsprechend der Indexhöhe bis zu 4 Indexseitenreferenzen Entsprechend der Satzgrösse mindestens eine Seitenreferenz 2 Index nicht vorhanden Datei seitenweise durchsuchen VIELE Seitenreferenzen!!! 29 / 44

30 Referenzlokalität Einleitung und Grundlagen E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen Beispiel zeigt: Speicherungsstrukturen und Zugriffspfadstrukturen haben wesentlichen Einfluss auf logisches Referenzverhalten Viele Seitenreferenzen werden über wenige ausgeprägte Seiten abgewickelt: Katalogseiten Adressumsetztabellen Freispeichertabellen Indexseiten (Wurzel bei B*-Bäumen) Tragen wesentlich zur Referenzlokalität bei 30 / 44

31 Lokalisierung von Seiten im Cache E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen Seitenpool Hashtabelle h(seitennr) Direkte Suche im Speicher ineffizient Indirekte Suche über Hilfsstrukturen wie gekettet oder kompakte sortierte Listen ineffizient Hashstrukturen unterstützen erfolgreiche und erfolglose Suche effizient 31 / 44

32 Synchronisation Einleitung und Grundlagen E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen Cache liegt im gemeinsamen Speicher Viele Prozesse/Threads operieren parallel auf der Verwaltungsstruktur u.u. gibt es eine weitere Verwaltungsstruktur für Ersetzungsstrategie: z.b. LRU-Stack Synchronisierung der Zugriffe erforderlich Möglichkeiten: 1 Sperren der Verwaltungsstruktur 2 Sperren von Teilen der Verwaltungsstruktur 3 Verwende blockadefreie Algorithmen 32 / 44

33 E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen Sperren (von Teilen) der Verwaltungsstruktur Verwendung kritischer Abschnitte: EnterCriticalSection(), LeaveCriticalSection(), Binäre Semaphoren,... Nur ein Thread/Prozess kann Lesend bzw. Schreibend auf Datenstruktur(teil) zugreifen CAS (Compare and Swap) - Operationen (hardwaregestützt) erlauben atomares Lesen und Schreiben von Variablen Sperrvariable while (Lock=1) do sleep(timeout) Lock:=1 ModifiyData... Lock:=0 CAS mit Sperrvariable while (CASCompExch(Lock,1,0)>0) do sleep(timeout) ModifyData... CASExch(Lock,0) 33 / 44

34 E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen Sperren (von Teilen) der Verwaltungsstruktur CAS - Aufrufe sind performanter als Sperrobjekte (Betriebssystem) Teils aktives Warten auf Freigabe der Sperre vermeidet teure Threadwechsel Insbesondere wenn der gesperrte Bereich von kurzer Dauer ist (z.b. Lookup() in Hashtabelle) SpinLock while (CASCompExch(Lock,1,0)>0) do sleep(0) if (CASCompExch(Lock,1,0)=0) then break sleep(timeout) ModifyData... CASExch(Lock,0) 34 / 44

35 E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen Feingranulare Zellsperren in der Hashtabelle Im Rahmen der Diplomarbeit wurde u.a. ein Cache implementiert, der SpinLocks zum Sperren einzelner Zellen einer Hashtabelle verwendet Lookup()- und Delete()-Operationen konnten massiv parallel ausgeführt werden Allerdings erforderten Insert()-Operationen durch die Überlaufbehandlung zusätzliche Sperrmechanismen (Intervallsperren bei Cuckoo-Hashing :-) Trotz des Mehraufwandes konnte auf Mehrprozessorrechnern eine Steigerung des Operationsdurchsatzes von über 25% erreicht werden Allerdings brach ab über 128 parallelen Threads der Durchsatz stärker ein, als bei herkömmlicher Implementierung 35 / 44

36 Blockadefreie Algorithmen E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen Sind eine Anwendung der CAS - Operationen ohne diese für Sperren zu verwenden Arbeiten nach dem folgenden Prinzip: 1 Lese aktuellen Zustand in lokale Variable 2 Arbeite mit dieser lokalen Variablen 3 CAS - Aufruf, der nur dann klappt, wenn sich der Zustand zwischenzeitlich nicht geändert hat, sonst erneuter Versuch :-) <Node> am Kopf einer Liste einfügen: repeat localhead:=list.head Node.Next:=localHead until CASCompExch(List.Head,Node,localHead)=localHead 36 / 44

37 Blockadefreie Algorithmen E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen Werden durch Mehrkernprozessoren zunehmen interessanter Skalieren sehr gut mit steigender Anzahl Threads Nicht einfach zu implementieren Zwei Probleme: Speicherverwaltung und ABA-Problem Speicher von freigegebenen Elementen darf nicht freigegeben werden ABA-Problem Zwischen dem zweimaligen Lesen lesen eines Wertes, wurde dieser durch Threadwechsel von einem anderen Thread geändert und wiederhergestellt. Der aktuelle Thread nimmt an, es habe sich nichts geändert. 37 / 44

38 Blockadefreie Algorithmen E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen Einfügen in einfach verkettete Liste Head Tail 19 Thread 2 Thread 1 20 Head Tail Head Tail Head Tail Next-Zeiger hat sich geändert -> erneuter Versuch 38 / 44

39 Blockadefreie Algorithmen E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen Einfügen und Löschen in einfach verketteter Liste Head Tail Thread 2 Thread 1 20 Head Tail Head Tail 20 Knotenverluste sind möglich 39 / 44

40 Blockadefreie Algorithmen E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen Zusätzliche CAS-Aufrufe um Next-Zeiger zu löschender Knoten zu markieren Im zweiten Schritt Knoten löschen, dh nicht freigeben, sondern in Freiliste einhängen!!! Blockadefreie Algorithmen haben so ihre Tücken :-) Performancegewinn gegenüber Sperrverfahren: z.b. auf Core 2 Duo fast halbe Laufzeit bei zwei einfügenden Threads Weiteres Problem: Listen referenzieren i.d.r. Daten, die trotzdem vor mehreren Zugriffen gesperrt werden müssen 40 / 44

41 1 Einleitung und Grundlagen K2 Computer Softwareentwicklung Diplomarbeit bei K2 5-Schichtenarchitektur von DBMS 2 Aufgaben Satzabbildung Satzadressierung 3 E/A-Architektur Aufgaben und Arbeitsweise Verwaltungsstrukturen 4

42 Es wurden Speicherungstrukturen im detailliert behandelt Auf physische Zugriffspfade und deren Anforderungen an Speicherungsstrukturen wurde nicht eingegangen Jeder sollte jetzt eine Vorstellung davon haben, wie Tabellendaten gespeichert werden (können) Sinn und Zweck einer wurden genannt und die grundlegende Arbeitsweise erklärt Ersetzungsstrategien sind Thema einer eigenen Vorlesung, ebenso Rückschreibstrategien, etc. Der Cache wurde herangezogen um einen Einblick in Kurzzeitsperren zu geben. Interessant und bestimmt auch sinnvoll erscheint hier die Betrachtung Blockadefreier Algorithmen und Datenstrukturen 42 / 44

43 Und wie sieht es mit der Praxis aus? Wer sich ein wenig vertiefen möchte, sollte einen Blick in Datenbanksysteme: Konzepte und Techniken der Implementierung (T. Härder, E. Rahm) werfen. Zudem findet man genügend Literatur zu blockadefreien Algorithmen und Datenstrukturen. Zur Vertiefung und Praxiserbrobung gibts per UNI-Verteiler ein Wrapper-Objekt zur Bearbeitung von Seiten für variabel lange Datensätze. Es ist ein Delphi-Projekt, welches noch mit ein wenig Leben gefüllt werden kann und sollte und an dem man sich per Debugger die Abläufe veranschaulichen kann. Zudem befindet sich dort ebenfalls ein CASList-Objekt, welches eine Delphi-Implementierung der vorgestellten blockadefreien Liste darstellt. 43 / 44

44 Vielen Dank für die Aufmerksamkeit! Wirth s Law [1995] Software gets slower faster than hardware gets faster.

OPERATIONEN AUF EINER DATENBANK

OPERATIONEN 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:

Mehr

Physische Datenorganisation

Physische 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

Mehr

Abschluss Einblick und Ausblick

Abschluss Einblick und Ausblick Abschluss Einblick und Ausblick Prof. Dr. T. Kudraß 1 Benutzer Komponenten eines DBMS (Überblick) I/O-Prozessor Output-Generierung Parser für selbst. oder eingebettete Kommandos Precompiler Autorisierungs-Kontrolle

Mehr

Benutzer. Dateiverwaltung

Benutzer. Dateiverwaltung 1.4 Datenbanksysteme u. ihre Eigenschaften und Terminologie im Überblick 1.4.1 Datenbank/Datenbanksystem/Datenbank-Verwaltungssystem (DBVS, DBMS) Begriffliche Abgrenzung und Einordnung Client liegt üblicherweise

Mehr

Datenbanken: Architektur & Komponenten 3-Ebenen-Architektur

Datenbanken: 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

Mehr

Kapitel 8: Physischer Datenbankentwurf

Kapitel 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

Mehr

Physischer Datenbankentwurf: Datenspeicherung

Physischer 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

Mehr

Transaktionen und Synchronisation konkurrierender Zugriffe

Transaktionen und Synchronisation konkurrierender Zugriffe Transaktionen und Synchronisation konkurrierender Zugriffe Fragestellungen Aufgaben des Transaktionsmanagers Aktivieren von Transaktionen entsprechend den Anforderungen von Anwendungsprogrammen. Dabei

Mehr

! DBMS organisiert die Daten so, dass minimal viele Plattenzugriffe nötig sind.

! 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

Aufbau Datenbanksysteme

Aufbau Datenbanksysteme Aufbau Datenbanksysteme Lehrveranstaltung Datenbanktechnologien Prof. Dr. Ingo Claßen Prof. Dr. Martin Kempa Hochschule für Technik und Wirtschaft Berlin Speichersystem c Ingo Claßen, Martin Kempa Softwarearchitektur

Mehr

Architektur und Implementierung von Apache Derby

Architektur und Implementierung von Apache Derby Architektur und Implementierung von Apache Derby Das Zugriffssystem Carsten Kleinmann, Michael Schmidt TH Mittelhessen, MNI, Informatik 16. Januar 2012 Carsten Kleinmann, Michael Schmidt Architektur und

Mehr

Einführung in die technische Informatik

Einführung in die technische Informatik Einführung in die technische Informatik Christopher Kruegel chris@auto.tuwien.ac.at http://www.auto.tuwien.ac.at/~chris Betriebssysteme Aufgaben Management von Ressourcen Präsentation einer einheitlichen

Mehr

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

Mehr

Einteilung von Datenbanken

Einteilung von Datenbanken Datenbanksysteme (c) A.Kaiser; WU-Wien 1 Einteilung von Datenbanken 1. formatierte Datenbanken 2. unformatierte Datenbanken Information Retrieval Systeme 2 Wozu Datenbanken? Speicherung und Verwaltung

Mehr

Virtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44

Virtueller Speicher. SS 2012 Grundlagen der Rechnerarchitektur Speicher 44 Virtueller Speicher SS 2012 Grundlagen der Rechnerarchitektur Speicher 44 Die Idee Virtuelle Adressen Prozess 1 Speicherblock 0 Speicherblock 1 Speicherblock 2 Speicherblock 3 Speicherblock 4 Speicherblock

Mehr

Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff

Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff Konzepte von Betriebssystemkomponenten Disk-Caches und Dateizugriff von Athanasia Kaisa Grundzüge eines Zwischenspeichers Verschiedene Arten von Zwischenspeicher Plattenzwischenspeicher in LINUX Dateizugriff

Mehr

DATENBANKEN SQL UND SQLITE VON MELANIE SCHLIEBENER

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

Mehr

Architekturen im DB-Umfeld

Architekturen im DB-Umfeld Architekturen im DB-Umfeld ANSI/SPARC und DIAM 66 Motivation 67 Ziele von Architekturdefinitionen I Strukturierung des Chaos Komplexe (IT-)Anwendungen und reale Problemstellungen bestehen aus vielen Einzelteilen.

Mehr

Die Grundbegriffe Die Daten Die Informationen

Die Grundbegriffe Die Daten Die Informationen Die Grundbegriffe Die Daten sind diejenigen Elemente, die vom Computer verarbeitet werden. Die Informationen sind Wissenselemente, welche durch die Analyse von Daten erhalten werden können. Die Daten haben

Mehr

Software-Engineering und Datenbanken

Software-Engineering und Datenbanken Software-Engineering und Datenbanken Prof. Dr. Bernhard Schiefer bernhard.schiefer@fh-kl.de http://www.fh-kl.de/~schiefer Prof. Dr. Bernhard Schiefer 1-1 Wesentliche Inhalte Begriff DBS Datenbankmodelle

Mehr

One of the few resources increasing faster than the speed of computer hardware is the amount of data to be processed. Bin Hu

One of the few resources increasing faster than the speed of computer hardware is the amount of data to be processed. Bin Hu Bin Hu Algorithmen und Datenstrukturen 2 Arbeitsbereich fr Algorithmen und Datenstrukturen Institut fr Computergraphik und Algorithmen Technische Universität Wien One of the few resources increasing faster

Mehr

Informatik II Datenorganisation Datenbanken

Informatik II Datenorganisation Datenbanken Informatik II Datenorganisation Datenbanken Studiengang Wirtschaftsingenieurwesen (2. Semester) Prof. Dr. Sabine Kühn Tel. (0351) 462 2490 Fachbereich Informatik/Mathematik skuehn@informatik.htw-dresden.de

Mehr

KAPITEL 2 VERWALTUNG DES HINTERGRUNDSPEICHERS

KAPITEL 2 VERWALTUNG DES HINTERGRUNDSPEICHERS KAPITEL 2 VERWALTUNG DES HINTERGRUNDSPEICHERS h_da Prof. Dr. Uta Störl Architektur von DBMS WS 2015/16 Kapitel 2: Verwaltung des Hintergrundspeichers 1 Verwaltung des Hintergrundspeichers Inhalte des Kapitels

Mehr

Teil II Architektur von DBMS

Teil II Architektur von DBMS Teil II Architektur von DBMS Überblick 1 2 Architekturvarianten 3 Architekturen konkreter DBMS c Sattler / Saake Datenbank-Implementierungstechniken Letzte Änderung: 04/04/2011 2 1 Betrachtete Fragestellungen

Mehr

1. Einfach verkettete Liste unsortiert 2. Einfach verkettete Liste sortiert 3. Doppelt verkettete Liste sortiert

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

Mehr

Betriebssysteme WS 2012/13 Peter Klingebiel, DVZ. Zusammenfassung Kapitel 4 - Datenträger/Dateiverwaltung

Betriebssysteme WS 2012/13 Peter Klingebiel, DVZ. Zusammenfassung Kapitel 4 - Datenträger/Dateiverwaltung Betriebssysteme WS 2012/13 Peter Klingebiel, DVZ Zusammenfassung Kapitel 4 - Datenträger/Dateiverwaltung Zusammenfassung Kapitel 4 Dateiverwaltung 1 Datei logisch zusammengehörende Daten i.d.r. permanent

Mehr

Datenbanken II Speicherung und Verarbeitung großer Objekte (Large Objects [LOBs])

Datenbanken 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

Mehr

B-Bäume, Hashtabellen, Cloning/Shadowing, Copy-on-Write

B-Bäume, Hashtabellen, Cloning/Shadowing, Copy-on-Write B-Bäume, Hashtabellen, Cloning/Shadowing, Copy-on-Write Thomas Maier Proseminar: Ein- / Ausgabe Stand der Wissenschaft Seite 1 von 13 Gliederung 1. Hashtabelle 3 2.B-Baum 3 2.1 Begriffserklärung 3 2.2

Mehr

Speicherstrukturen und Zugriffssystem

Speicherstrukturen und Zugriffssystem Speicherhierarchie Speicherhierarchie CPU Register Kapazität Bytes Zugriffszeit 1-5 ns Cache First-Level-Cache Second-Level-Cache Kilo-/Megabytes 2 10-2 20 2-20 ns Hauptspeicher Gigabytes 2 30 10-100 ns

Mehr

Einführung. Informationssystem als Abbild der realen Welt

Einführung. Informationssystem als Abbild der realen Welt Was ist ein Datenbanksystem? Anwendungsgrundsätze Betrieb von Datenbanksystemen Entwicklung von Datenbanksystemen Seite 1 Informationssystem als Abbild der realen Welt Modellierung (Abstraktion) Sachverhalte

Mehr

In diesem Abschnitt wollen wir uns mit der Architektur von Datenbank Managements Systemen beschäftigen.

In diesem Abschnitt wollen wir uns mit der Architektur von Datenbank Managements Systemen beschäftigen. 1 In diesem Abschnitt wollen wir uns mit der Architektur von Datenbank Managements Systemen beschäftigen. Zunächst stellt sich die Frage: Warum soll ich mich mit der Architektur eines DBMS beschäftigen?

Mehr

Dateiorganisation und Zugriffsstrukturen

Dateiorganisation 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

Mehr

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

B-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

Mehr

Betriebssysteme K_Kap11B: Files, Filesysteme Datenstrukturen

Betriebssysteme K_Kap11B: Files, Filesysteme Datenstrukturen Betriebssysteme K_Kap11B: Files, Filesysteme Datenstrukturen 1 Files als lineare Liste File angeordnet als verkette Liste von Blöcken Jeder Block enthält Zeiger zum Nachfolger Zeiger = Adresse des Blocks

Mehr

Datenbankadministration

Datenbankadministration Datenbankadministration 11. Synchronisation AG DBIS University of Kaiserslautern, Germany Karsten Schmidt kschmidt@informatik.uni-kl.de (Vorlage TU-Dresden) Wintersemester 2008/2009 Transaktion Transaktion

Mehr

Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008

Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008 Name: Matrikel-Nr: Prüfung VO Betriebssysteme SS2008 / 7. Juli 2008 Bitte schreiben Sie leserlich und antworten Sie kurz und präzise. 1. Zeichnen Sie das Schichten-Modell eines Computersystems und markieren

Mehr

6. Formaler Datenbankentwurf 6.1. Rückblick. Datenbanken und Informationssysteme, WS 2012/13 22. Januar 2013 Seite 1

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

Mehr

Relationale Datenbanken Datenbankgrundlagen

Relationale 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

Mehr

Architektur von Datenbanksystemen

Architektur von Datenbanksystemen Architektur von Datenbanksystemen Prof. Dr. Uta Störl Hochschule Darmstadt Fachbereich Informatik Sommersemester 2014 Motivation In Datenbanken-Grundvorlesung betrachtet: Funktionalität von Datenbanksystemen

Mehr

GRUNDLAGEN VON INFORMATIONSSYSTEMEN INDEXSTRUKTUREN I: B-BÄUME UND IHRE VARIANTEN

GRUNDLAGEN VON INFORMATIONSSYSTEMEN INDEXSTRUKTUREN I: B-BÄUME UND IHRE VARIANTEN Informationssysteme - Indexstrukturen I: B-Bäume und ihre Varianten Seite 1 GRUNDLAGEN VON INFORMATIONSSYSTEMEN INDEXSTRUKTUREN I: B-BÄUME UND IHRE VARIANTEN Leiter des Proseminars: Dr.Thomas Bode Verfasser

Mehr

Inhalt der Vorlesung. 1 Datenmodellierung (Entity-Relationship Modell) 2 Das relationale Modell. 3 Relationenalgebra. 4 Datenbanksprache (SQL)

Inhalt der Vorlesung. 1 Datenmodellierung (Entity-Relationship Modell) 2 Das relationale Modell. 3 Relationenalgebra. 4 Datenbanksprache (SQL) Inhalt der Vorlesung 1 Datenmodellierung (Entity-Relationship Modell) 2 Das relationale Modell 3 Relationenalgebra 4 Datenbanksprache (SQL) 5 Normalisierung 6 Vom ERM zum Datenbankschema 7 Routinen und

Mehr

6. Sichten, Integrität und Zugriffskontrolle. Vorlesung "Informa=onssysteme" Sommersemester 2015

6. Sichten, Integrität und Zugriffskontrolle. Vorlesung Informa=onssysteme Sommersemester 2015 6. Sichten, Integrität und Zugriffskontrolle Vorlesung "Informa=onssysteme" Sommersemester 2015 Überblick Sichten Integritätsbedingungen Zugriffsrechte SQL- Schema und SQL- Katalog Das Informa=onsschema

Mehr

Bäume, Suchbäume und Hash-Tabellen

Bäume, Suchbäume und Hash-Tabellen Im folgenden Fokus auf Datenstrukturen, welche den assoziativen Zugriff (über einen bestimmten Wert als Suchkriterium) optimieren Bäume: Abbildung bzw. Vorberechnung von Entscheidungen während der Suche

Mehr

Wie groß ist die Page Table?

Wie groß ist die Page Table? Wie groß ist die Page Table? Im vorigen (typischen) Beispiel verwenden wir 20 Bits zum indizieren der Page Table. Typischerweise spendiert man 32 Bits pro Tabellen Zeile (im Vorigen Beispiel brauchten

Mehr

Technische Informatik I. Übung 3 Speicherhierarchie. v t d 0 d 1 d 2 d 3 0 1 2 3. Technische Informatik I Übung 3. Technische Informatik I Übung 3

Technische Informatik I. Übung 3 Speicherhierarchie. v t d 0 d 1 d 2 d 3 0 1 2 3. Technische Informatik I Übung 3. Technische Informatik I Übung 3 Institut für Kommunikationsnetze und Rechnersysteme Technische Informatik I Paul J. Kühn, Matthias Meyer Übung 3 Speicherhierarchie Inhaltsübersicht Aufgabe 3.1 Daten-Cache Aufgabe 3.2 Virtueller Speicher

Mehr

Datenbanken 16.1.2008. Die Entwicklung der Datenbanksysteme ist eng an die der Hardware gekoppelt und wird wie jene in Generationen eingeteilt:

Datenbanken 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

Mehr

Moderne Betriebssysteme. Kapitel 8. Kapitel 8. Folie: 1. Multiprozessorsysteme. Autor: Andrew S. Tanenbaum

Moderne Betriebssysteme. Kapitel 8. Kapitel 8. Folie: 1. Multiprozessorsysteme. Autor: Andrew S. Tanenbaum Moderne Betriebssysteme Kapitel 8 Multiprozessorsysteme Kapitel 8 Folie: 1 Multiprozessorsysteme Autor: Andrew S. Tanenbaum Pearson Studium 2009 2 3 4 5 6 7 Betriebssystemarten für Multiprozessoren Jede

Mehr

Vorlesung 30.03.2009 1) Einführung

Vorlesung 30.03.2009 1) Einführung Vorlesung 30.03.2009 1) Einführung Was versteht man unter dem Begriff Datenbank? - Eine Datenbank ist eine Struktur zur Speicherung von Daten mit lesendem und schreibendem Zugriff - Allgemein meint man

Mehr

Wiederholung: Realisierung von Dateien

Wiederholung: Realisierung von Dateien Wiederholung: Realisierung von Dateien Zusammenhängende Belegung Datei A Datei C Datei E Datei G Datei B Datei D Datei F Belegung durch verkettete Listen (z.b. FAT) Dateiblock 0 Dateiblock 1 Dateiblock

Mehr

Kapitel VI. Speicherverwaltung. Speicherverwaltung

Kapitel VI. Speicherverwaltung. Speicherverwaltung Kapitel VI Speicherverwaltung 1 Speicherverwaltung Computer exekutiert Programme (mit Daten) im Hauptspeicher. Hauptspeicher: Großes Array von Wörtern (1 oder mehrere Bytes) Jedes Wort hat eine eigene

Mehr

stattdessen: geräteunabhängiges, abstraktes Format für Speicherung und Transfer von Daten Datei

stattdessen: geräteunabhängiges, abstraktes Format für Speicherung und Transfer von Daten Datei Dateiverwaltung Dateiverwaltung 2002 Prof. Dr. Rainer Manthey Informatik II 1 Dateien weitere zentrale Aufgabe des Betriebssystems: "Verbergen" der Details der Struktur von und der Zugriffe auf Sekundärspeicher-Medien

Mehr

Datenbanken. Ein DBS besteht aus zwei Teilen:

Datenbanken. Ein DBS besteht aus zwei Teilen: Datenbanken Wikipedia gibt unter http://de.wikipedia.org/wiki/datenbank einen kompakten Einblick in die Welt der Datenbanken, Datenbanksysteme, Datenbankmanagementsysteme & Co: Ein Datenbanksystem (DBS)

Mehr

Fachbericht zum Thema: Anforderungen an ein Datenbanksystem

Fachbericht 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

Mehr

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL

XAMPP-Systeme. Teil 3: My SQL. PGP II/05 MySQL XAMPP-Systeme Teil 3: My SQL Daten Eine Wesenseigenschaft von Menschen ist es, Informationen, in welcher Form sie auch immer auftreten, zu ordnen, zu klassifizieren und in strukturierter Form abzulegen.

Mehr

Einleitung. Literatur. Pierre Fierz. Architektur von Datenbanksystemen. Physische Datenunabhängigkeit. Der Datenbank Administrator (DBA) 1.

Einleitung. Literatur. Pierre Fierz. Architektur von Datenbanksystemen. Physische Datenunabhängigkeit. Der Datenbank Administrator (DBA) 1. Inhalt der Vorlesung Literatur 1 Datenmodellierung (Entity-Relationship Modell) 2 Das relationale Modell 3 Relationenalgebra 4 Datenbanksprache (SQL) 5 Normalisierung 6 Vom ERM zum Datenbankschema 7 Routinen

Mehr

3. Übung Algorithmen I

3. Übung Algorithmen I Timo Bingmann, Christian Schulz INSTITUT FÜR THEORETISCHE INFORMATIK, PROF. SANDERS 1 KIT Timo Universität Bingmann, des LandesChristian Baden-Württemberg Schulz und nationales Forschungszentrum in der

Mehr

Nachtrag zu binären Suchbäumen

Nachtrag 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

Mehr

Whitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und 2005. combit GmbH Untere Laube 30 78462 Konstanz

Whitepaper. Produkt: combit Relationship Manager. Datensatzhistorie mit dem SQL Server 2000 und 2005. combit GmbH Untere Laube 30 78462 Konstanz combit GmbH Untere Laube 30 78462 Konstanz Whitepaper Produkt: combit Relationship Manager Datensatzhistorie mit dem SQL Server 2000 und 2005 Datensatzhistorie mit dem SQL Server 2000 und 2005-2 - Inhalt

Mehr

Die Sicht eines Sysadmins auf DB systeme

Die Sicht eines Sysadmins auf DB systeme Die Sicht eines Sysadmins auf DB systeme Robert Meyer 21. Oktober 2016 Robert Meyer Die Sicht eines Sysadmins auf DB systeme 21. Oktober 2016 1 / 20 Inhaltsverzeichnis 1 Einleitung 2 IO unter Linux typische

Mehr

9. Einführung in Datenbanken

9. Einführung in Datenbanken 9. Einführung in Datenbanken 9.1 Motivation und einführendes Beispiel 9.2 Modellierungskonzepte der realen Welt 9.3 Anfragesprachen (Query Languages) 9.1 Motivation und einführendes Beispiel Datenbanken

Mehr

wichtigstes Betriebsmittel - neben dem Prozessor: Speicher

wichtigstes Betriebsmittel - neben dem Prozessor: Speicher Speicherverwaltung Aufgaben der Speicherverwaltung wichtigstes Betriebsmittel - neben dem Prozessor: Speicher Sowohl die ausführbaren Programme selbst als auch deren Daten werden in verschiedenen Speicherbereichen

Mehr

SYSTEM J - Konzeption und prototypische Umsetzung eines Praktikums zur Datenbanksystementwicklung

SYSTEM J - Konzeption und prototypische Umsetzung eines Praktikums zur Datenbanksystementwicklung Einführung Architektur Komponenten FileManager BufferManager RecordManager IndexManager LockManager CatalogManager Compiler Optimizer RunTime Erfahrungen SYSTEM J - Konzeption und prototypische Umsetzung

Mehr

Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder

Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder Programmieren in PASCAL Bäume 1 1. Baumstrukturen Eine Baumstruktur sei folgendermaßen definiert. Eine Baumstruktur mit Grundtyp Element ist entweder 1. die leere Struktur oder 2. ein Knoten vom Typ Element

Mehr

Theoretische Informatik 1 WS 2007/2008. Prof. Dr. Rainer Lütticke

Theoretische Informatik 1 WS 2007/2008. Prof. Dr. Rainer Lütticke Theoretische Informatik 1 WS 2007/2008 Prof. Dr. Rainer Lütticke Inhalt der Vorlesung Grundlagen - Mengen, Relationen, Abbildungen/Funktionen - Datenstrukturen - Aussagenlogik Automatentheorie Formale

Mehr

Listener: Bei Oracle erfolgt die Steuerung (konventionell) via listener.ora (Listener Konfiguration), tnsnames.ora (Client Konfiguration)

Listener: Bei Oracle erfolgt die Steuerung (konventionell) via listener.ora (Listener Konfiguration), tnsnames.ora (Client Konfiguration) Protokoll 1: Listener: Bei Oracle erfolgt die Steuerung (konventionell) via listener.ora (Listener Konfiguration), tnsnames.ora (Client Konfiguration) Abschnitt 2.1 (Ausführungen zum Shutdown / Startup)

Mehr

Abschnitt 4: Grundlagen der Datenbanktechnologie

Abschnitt 4: Grundlagen der Datenbanktechnologie Abschnitt 4: Grundlagen der Datenbanktechnologie Inhalt: Dateien vs. Datenbanken Datenbanken: Tabellen, Attribute und Datentyp Datenmodellierung mit dem Entity-Relationship-Modell Normalformen einer Datenbank

Mehr

Technische Informatik II Wintersemester 2002/03 Sommersemester 2001. Heiko Holtkamp Heiko@rvs.uni-bielefeld.de

Technische Informatik II Wintersemester 2002/03 Sommersemester 2001. Heiko Holtkamp Heiko@rvs.uni-bielefeld.de Technische Informatik II Wintersemester 2002/03 Sommersemester 2001 Heiko Holtkamp Heiko@rvs.uni-bielefeld.de Speicher ist eine wichtige Ressource, die sorgfältig verwaltet werden muss. In der Vorlesung

Mehr

Freispeicherverwaltung Martin Wahl,

Freispeicherverwaltung Martin Wahl, Freispeicherverwaltung Martin Wahl, 17.11.03 Allgemeines zur Speicherverwaltung Der physikalische Speicher wird in zwei Teile unterteilt: -Teil für den Kernel -Dynamischer Speicher Die Verwaltung des dynamischen

Mehr

Einführung in Datenbanksysteme. H. Wünsch 01.2001

Einfü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.

Mehr

7. Übung - Datenbanken

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

Mehr

9.2: Die Fünf-Schichten-Architektur im Überblick

9.2: Die Fünf-Schichten-Architektur im Überblick Vorlesung " WS 98/99 9.2: Die Fünf-Schichten-Architektur im Überblick Lernziele: Aufgaben und Objekte der sechs Schnittstellen Teilaufgaben der Schichten Ausgewählte Lösungsansätze (je 1 Konzept pro Schicht)

Mehr

Gliederung Datenbanksysteme

Gliederung Datenbanksysteme Gliederung Datenbanksysteme 5. Datenbanksprachen 1. Datendefinitionsbefehle 2. Datenmanipulationsbefehle 3. Grundlagen zu SQL 6. Metadatenverwaltung 7. DB-Architekturen 1. 3-Schema-Modell 2. Verteilte

Mehr

Vorlesung 04.12.2006: Binäre Entscheidungsdiagramme (BDDs) Dr. Carsten Sinz

Vorlesung 04.12.2006: Binäre Entscheidungsdiagramme (BDDs) Dr. Carsten Sinz Vorlesung 04.12.2006: Binäre Entscheidungsdiagramme (BDDs) Dr. Carsten Sinz Datenstruktur BDD 1986 von R. Bryant vorgeschlagen zur Darstellung von aussagenlogischen Formeln (genauer: Booleschen Funktionen)

Mehr

Systeme 1. Kapitel 3 Dateisysteme WS 2009/10 1

Systeme 1. Kapitel 3 Dateisysteme WS 2009/10 1 Systeme 1 Kapitel 3 Dateisysteme WS 2009/10 1 Letzte Vorlesung Dateisysteme Hauptaufgaben Persistente Dateisysteme (FAT, NTFS, ext3, ext4) Dateien Kleinste logische Einheit eines Dateisystems Dateitypen

Mehr

Kap. 1: Einführung IDBS

Kap. 1: Einführung IDBS Kap. 1: Einführung Aufbau (Architektur) von DBS 3-Schichtenmodell 5-Schichtenmodell Datenbankadministration Tuning von DBS SS15, Prof. Dr. E. Rahm 1-1 Merkmale von Datenbanksystemen mächtige Datenmodelle

Mehr

Informatik II, SS 2014

Informatik II, SS 2014 Informatik II SS 2014 (Algorithmen & Datenstrukturen) Vorlesung 11 (4.6.2014) Binäre Suchbäume II Algorithmen und Komplexität Binäre Suchbäume Binäre Suchbäume müssen nicht immer so schön symmetrisch sein

Mehr

Seminar Datenbanken Martin Gerstmann

Seminar Datenbanken Martin Gerstmann Seminar Datenbanken Martin Gerstmann Gliederung 1. Ziele 2. Arten 2.1. erweiterbares Hashing 2.2. lineares Hashing 2.3. virtuelles Hashing 3. Bewertung 1. Ziele wachsende/schrumpfende Datenmengen verwalten

Mehr

Kapitel 6 Anfragebearbeitung

Kapitel 6 Anfragebearbeitung LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS DATABASE Skript zur Vorlesung: Datenbanksysteme II Sommersemester 2014 Kapitel 6 Anfragebearbeitung Vorlesung: PD Dr. Peer Kröger

Mehr

6-1 A. Schwill Grundlagen der Programmierung II SS 2005

6-1 A. Schwill Grundlagen der Programmierung II SS 2005 6-1 A. Schwill Grundlagen der Programmierung II SS 25 6. Suchen Suchen = Tätigkeit, in einem vorgegebenen Datenbestand alle Objekte zu ermitteln, die eine best. Bedingung, das Suchkriterium, erfüllen und

Mehr

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper

Betriebssysteme. Dipl.-Ing.(FH) Volker Schepper Speicherverwaltung Real Mode Nach jedem starten eines PC befindet sich jeder x86 (8086, 80386, Pentium, AMD) CPU im sogenannten Real Mode. Datenregister (16Bit) Adressregister (20Bit) Dadurch lassen sich

Mehr

Mengenvergleiche: Alle Konten außer das, mit dem größten Saldo.

Mengenvergleiche: 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

Mehr

Betriebssystemschichten (11.03.2011)

Betriebssystemschichten (11.03.2011) Proseminar Speicher- und Dateisysteme (11.03.2011) Bernd Ihnen Übersicht 2/20 Einleitung Betriebssysteme/ Übersicht Mikrokernel Monolithischer Kernel Vergleich der Kernel Fallbeispiel Linux Kernelaufbau

Mehr

Recovery- und Buffermanager

Recovery- und Buffermanager Recovery- und Buffermanager Gesamtübersicht der Komponenten beim Zusammenspiel des lokalen Recovery Manager und des Datenbank Buffer Manager: persistenter Log Main memory Lokaler Recovery Manager (LRM)

Mehr

Carl-Engler-Schule Karlsruhe Datenbank 1 (5)

Carl-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,

Mehr

In-Memory Technologie Hekaton

In-Memory Technologie Hekaton Einleitende Worte 11. Juli 2014 Inhaltsverzeichnis I Einleitende Worte 1 Einleitende Worte 2 3 4 5 6 Hekaton... I Einleitende Worte griech:hekaton 100 (Zahlwort) Einsatz für OLTP (Echtzeit-Transaktionsverarbeitung)

Mehr

Datenstrukturen & Algorithmen

Datenstrukturen & 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

Mehr

5. Basisalgorithmen für DB-Operationen

5. Basisalgorithmen für DB-Operationen 5. Basisalgorithmen für DB-Operationen Datenbankparameter Komplexität von Grundalgorithmen Unäre Operationen (Scan, Selektion, Projektion) Binäre Operationen: Mengenoperationen Berechnung von Verbunden

Mehr

Aufgaben zur fachwissenschaftlichen Prüfung Modul 3 Daten erfassen, ordnen, verarbeiten und austauschen: Schwerpunkt Datenbanken

Aufgaben zur fachwissenschaftlichen Prüfung Modul 3 Daten erfassen, ordnen, verarbeiten und austauschen: Schwerpunkt Datenbanken Aufgaben zur fachwissenschaftlichen Prüfung Modul 3 Daten erfassen, ordnen, verarbeiten und austauschen: Schwerpunkt Datenbanken 30 Wozu dient ein Primärschlüssel? Mit dem Primärschlüssel wird ein Datenfeld

Mehr

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann

TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann TU München, Fakultät für Informatik Lehrstuhl III: Datenbanksysteme Prof. Dr. Thomas Neumann Blatt Nr. 11 Übung zur Vorlesung Einsatz und Realisierung von Datenbanksystemen im SoSe15 Moritz Kaufmann (moritz.kaufmann@tum.de)

Mehr

Kapitel 3. Speicherhierachie. Beispiel für Cache Effekte. Motivation Externspeicheralgorithmen. Motivation Für Beachtung von Cache Effekten

Kapitel 3. Speicherhierachie. Beispiel für Cache Effekte. Motivation Externspeicheralgorithmen. Motivation Für Beachtung von Cache Effekten Kapitel 3 Algorithmen für große Datenmengen Motivation Externspeicheralgorithmen Es werden immer größere Datenmengen gesammelt (WWW, Medizin, Gentechnik ) Daten müssen auf großen externen Massenspeichern

Mehr

Algorithmen II Vorlesung am

Algorithmen II Vorlesung am Algorithmen II Vorlesung am 31.01.2013 Algorithmen für externen Speicher INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales

Mehr

Relationenoperationen - Implementierung 0

Relationenoperationen - Implementierung 0 Relationenoperationen - Implementierung 0 Operationen der Relationenalgebra - unäre Operationen: π, σ - binäre Operationen: join,, +,,, SQL-Anfragen enthalten logische Ausdrücke, die auf die Operationen

Mehr

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221

Oracle 10g und SQL Server 2005 ein Vergleich. Thomas Wächtler 39221 Oracle 10g und SQL Server 2005 ein Vergleich Thomas Wächtler 39221 Inhalt 1. Einführung 2. Architektur SQL Server 2005 1. SQLOS 2. Relational Engine 3. Protocol Layer 3. Services 1. Replication 2. Reporting

Mehr

Inhaltsverzeichnis. BüroWARE Systemanforderungen ab Version 5.31. Generelle Anforderungen SoftENGINE BüroWARE SQL / Pervasive. 2

Inhaltsverzeichnis. BüroWARE Systemanforderungen ab Version 5.31. Generelle Anforderungen SoftENGINE BüroWARE SQL / Pervasive. 2 Inhaltsverzeichnis Generelle Anforderungen SoftENGINE BüroWARE SQL / Pervasive. 2 1. Terminal-Server-Betrieb (SQL)... 3 1.1. Server 3 1.1.1. Terminalserver... 3 1.1.2. Datenbankserver (bei einer Datenbankgröße

Mehr

Rechnerstrukturen Winter SPEICHER UND CACHE. (c) Peter Sturm, University of Trier 1

Rechnerstrukturen Winter SPEICHER UND CACHE. (c) Peter Sturm, University of Trier 1 9. SPEICHER UND CACHE (c) Peter Sturm, University of Trier 1 Inhalt Grundlagen Speichertypen RAM / ROM Dynamisches RAM Cache- Speicher Voll AssoziaNv n- Wege AssoziaNv Direct Mapping Beispiel: 8 Bit- Register

Mehr

Folge 19 - Bäume. 19.1 Binärbäume - Allgemeines. Grundlagen: Ulrich Helmich: Informatik 2 mit BlueJ - Ein Kurs für die Stufe 12

Folge 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

Mehr

CA Übung 30.01.2006. Christian kann heute nicht kommen => ich bin heute da, Christian das nächste Mal wieder

CA Übung 30.01.2006. Christian kann heute nicht kommen => ich bin heute da, Christian das nächste Mal wieder CA Übung 30.01.2006 Hallo zusammen! Christian kann heute nicht kommen => ich bin heute da, Christian das nächste Mal wieder Adrian Schüpbach: scadrian@student.ethz.ch Christian Fischlin: cfischli@student.ethz.ch

Mehr

Grundlagen der Informatik. Prof. Dr. Stefan Enderle NTA Isny

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

Mehr

VBA-Programmierung: Zusammenfassung

VBA-Programmierung: Zusammenfassung VBA-Programmierung: Zusammenfassung Programmiersprachen (Definition, Einordnung VBA) Softwareentwicklung-Phasen: 1. Spezifikation 2. Entwurf 3. Implementierung Datentypen (einfach, zusammengesetzt) Programmablaufsteuerung

Mehr