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.

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

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

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

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

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

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

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

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

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

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

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

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

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

Physische Datenorganisation. Vorlesung Datenbanksysteme Univ.-Prof. Dr. Günther Specht

Physische Datenorganisation. Vorlesung Datenbanksysteme Univ.-Prof. Dr. Günther Specht Physische Datenorganisation Kapitel IX Vorlesung Datenbanksysteme Univ.-Prof. Dr. Günther Specht Universität Innsbruck Institut für Informatik Datenbanken und Informationssysteme (DBIS) Vorlesungsinhalt

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

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

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

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

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

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

In die Zeilen würden die Daten einer Adresse geschrieben werden. Das Ganze könnte in etwa folgendermaßen aussehen:

In die Zeilen würden die Daten einer Adresse geschrieben werden. Das Ganze könnte in etwa folgendermaßen aussehen: 1 Einführung in Datenbanksysteme Fast jeder kennt Excel und hat damit in seinem Leben schon einmal gearbeitet. In Excel gibt es Arbeitsblätter, die aus vielen Zellen bestehen, in die man verschiedene Werte

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

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

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

2. Architekturen von DBS

2. Architekturen von DBS 2. Architekturen von DBS Schema-Architektur System-Architekturen Konkrete System-Architekturen Anwendungsarchitekturen Andreas Heuer, Gunter Saake Datenbanken I 2-1 Schema-Architektur I Zusammenhang zwischen

Mehr

13. Binäre Suchbäume

13. Binäre Suchbäume 1. Binäre Suchbäume Binäre Suchbäume realiesieren Wörterbücher. Sie unterstützen die Operationen 1. Einfügen (Insert) 2. Entfernen (Delete). Suchen (Search) 4. Maximum/Minimum-Suche 5. Vorgänger (Predecessor),

Mehr

Memory Management. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at

Memory Management. Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at Memory Management Peter Puschner Institut für Technische Informatik peter@vmars.tuwien.ac.at 1 Speicherverwaltung Effektive Aufteilung und Verwaltung des Arbeitsspeichers für BS und Programme Anforderungen

Mehr

Kapitel 7 Datenbank-Tuning. Folien zum Datenbankpraktikum Wintersemester 2010/11 LMU München

Kapitel 7 Datenbank-Tuning. Folien zum Datenbankpraktikum Wintersemester 2010/11 LMU München Kapitel 7 Datenbank-Tuning Flien zum Datenbankpraktikum Wintersemester 2010/11 LMU München 2008 Thmas Bernecker, Tbias Emrich unter Verwendung der Flien des Datenbankpraktikums aus dem Wintersemester 2007/08

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

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

Hauptspeicher- Datenbanksysteme. Hardware-Entwicklungen Column- versus Row-Store...

Hauptspeicher- Datenbanksysteme. Hardware-Entwicklungen Column- versus Row-Store... Hauptspeicher- Datenbanksysteme Hardware-Entwicklungen Column- versus Row-Store... Hauptspeicher-Datenbanksysteme Disk is Tape, Tape is dead Jim Gray Die Zeit ist reif für ein Re-engineering der Datenbanksysteme

Mehr

Kurs 1575, Musterlösung zur Winter Klausur 2002/03

Kurs 1575, Musterlösung zur Winter Klausur 2002/03 1 0 Kurs 1575, Musterlösung zur Klausur im Wintersemester 2002/03 1 Kurs 1575, Musterlösung zur Winter Klausur 2002/03 Aufgabe 1: Warteschlange Wer kennt das Problem nicht? Sie wollen noch schnell im Supermarkt

Mehr

Physische Datenorganisation

Physische Datenorganisation Herbstsemester 2011 CS241 Datenbanken mit Übungen Kapitel 9: Speicher- und Zugriffssystem H. Schuldt Physische Datenorganisation Im Zentrum des konzeptuellen Datenbankentwurfs steht die Frage, welche Daten

Mehr

MySQL Konfiguration - die wichtigsten Parameter

MySQL Konfiguration - die wichtigsten Parameter MySQL Konfiguration - die wichtigsten Parameter DOAG SIG MySQL Performance 13. März 2012, Wiesbaden Oli Sennhauser Senior MySQL Consultant, FromDual GmbH oli.sennhauser@fromdual.com www.fromdual.com 1

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

Sortierte Folgen 250

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

Mehr

Jeder Datenträger besitzt einen I-Node-Array. Jede Datei auf dem Datenträger hat einen I-Node-Eintrag.

Jeder Datenträger besitzt einen I-Node-Array. Jede Datei auf dem Datenträger hat einen I-Node-Eintrag. Einführung in die Betriebssysteme Fallstudien zu Dateisystemen Seite 1 Unix-Dateisystem Der Adreßraum einer Datei wird in gleichlange Blöcke aufgeteilt. Ein Block hat die Länge von 1 oder mehreren Sektoren

Mehr

Algorithmen und Datenstrukturen Suchbaum

Algorithmen 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

Mehr

Kapitel 7 Datenbank-Tuning

Kapitel 7 Datenbank-Tuning Kapitel 7 Datenbank-Tuning Flien zum Datenbankpraktikum Wintersemester 2012/13 LMU München 2008 Thmas Bernecker, Tbias Emrich 2010 Tbias Emrich, Erich Schubert unter Verwendung der Flien des Datenbankpraktikums

Mehr

Inhaltsverzeichnis. Installationsübersicht. A. Installationsübersicht

Inhaltsverzeichnis. Installationsübersicht. A. Installationsübersicht Inhaltsverzeichnis A. Installationsübersicht B. und Optimierungsbereiche B.1 Hardware B.2 OperatingSystem Z/OS B.3 Databasemanagementsystem DB2 B.4 Applikation C. Organisation BSS_Chart-library 1 Installationsübersicht

Mehr

MS SQL Server: Index Management. Stephan Arenswald 10. Juli 2008

MS 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...?

Mehr

Speicherstrukturen. Aufgabe 1-1: Fragen zu FAT (File Allocation Table) Aufgabe 1-2: Datensätze variabler Länge. Kind.java:

Speicherstrukturen. Aufgabe 1-1: Fragen zu FAT (File Allocation Table) Aufgabe 1-2: Datensätze variabler Länge. Kind.java: Institut für Datenbanken und Informationssysteme Prof. Dr. M. Reichert, M. Predeschly, J. Kolb Lösung für Übungsblatt 1 Aufgabe 1-1: Fragen zu FAT (File Allocation Table) 1. Im Bootsektor der Festplatte

Mehr

Prozesse und Scheduling

Prozesse und Scheduling Betriebssysteme für Wirtschaftsinformatiker SS04 KLAUSUR Vorbereitung mit Lösungen / Blatt 1 Prozesse und Scheduling Aufgabe 1 : Scheduling Gegeben seien die folgenden Prozesse und die Längen des jeweiligen

Mehr

Hardware- und Software-Anforderungen IBeeS.ERP

Hardware- und Software-Anforderungen IBeeS.ERP Hardware- und Software-Anforderungen IBeeS.ERP IBeeS GmbH Stand 08.2015 www.ibees.de Seite 1 von 8 Inhalt 1 Hardware-Anforderungen für eine IBeeS.ERP - Applikation... 3 1.1 Server... 3 1.1.1 Allgemeines

Mehr

Download:.../~rieche. gehalten am 2. Februar 2004. Stephan Rieche. Vortrag. Thema: Index Selection. von. Seminar Advanced Data Warehouse

Download:.../~rieche. gehalten am 2. Februar 2004. Stephan Rieche. Vortrag. Thema: Index Selection. von. Seminar Advanced Data Warehouse Seminar Advanced Data Warehouse Thema: Index Selection Vortrag von Stephan Rieche gehalten am 2. Februar 2004 Download:.../~rieche Inhalt des Vortrages 1. Einleitung - Was ist das Index Selection Problem?

Mehr

Kontrollstrukturen - Universität Köln

Kontrollstrukturen - Universität Köln Kontrollstrukturen - Universität Köln Mario Manno Kontrollstrukturen - Universität Köln p. 1 Was sind Sprachen Auszeichnungssprachen HTML, XML Programmiersprachen ASM, Basic, C, C++, Haskell, Java, Pascal,

Mehr

Unterabfragen (Subqueries)

Unterabfragen (Subqueries) Unterabfragen (Subqueries) Die kürzeste Formulierung ist folgende: SELECT Felderliste FROM Tabelle1 WHERE Tabelle1.Feldname Operator (SELECT Feldname FROM Tabelle2 WHERE Bedingung); wobei Tabelle1 und

Mehr

Einstieg in das SQL- und Datenbanktuning 14.01.2009. Loblied auf den Tabellen-Index!

Einstieg in das SQL- und Datenbanktuning 14.01.2009. Loblied auf den Tabellen-Index! 1/40 PHP-User-Group Stuttgart 14.01.2009 Warum Datenbanken einen Hals bekommen und was sich dagegen tun lässt. Tuning und Performancesteigerung ohne zusätzliche Hardware. Ein. Loblied auf den Tabellen-Index!

Mehr

Proseminar Konzepte von Betriebssystem-Komponenten Disk-Caches & Dateizugriff von Athanasia Kaisa

Proseminar Konzepte von Betriebssystem-Komponenten Disk-Caches & Dateizugriff von Athanasia Kaisa Proseminar Konzepte von Betriebssystem-Komponenten Disk-Caches & Dateizugriff von Athanasia Kaisa Massenspeichermedien sind in der Regel gegenüber dem Hauptspeicher eines Rechners viel langsamer. Da Massenspeicher

Mehr

A Kompilieren des Kernels... 247. B Lineare Listen in Linux... 251. C Glossar... 257. Interessante WWW-Adressen... 277. Literaturverzeichnis...

A Kompilieren des Kernels... 247. B Lineare Listen in Linux... 251. C Glossar... 257. Interessante WWW-Adressen... 277. Literaturverzeichnis... 1 Einführung................................................ 1 1.1 Was ist ein Betriebssystem?............................... 1 1.1.1 Betriebssystemkern................................ 2 1.1.2 Systemmodule....................................

Mehr

Implementierung von Datenbanksystemen

Implementierung von Datenbanksystemen Implementierung von Datenbanksystemen Kapitel 4: Teile dieses Foliensatzes beruhen auf ähnlichen Vorlesungen, gehalten von Prof. Dr. T. Härder am Fachbereich Informatik der Universität Kaiserslautern und

Mehr

Abschnitt: Algorithmendesign und Laufzeitanalyse

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

Mehr

IBM Informix Tuning und Monitoring

IBM Informix Tuning und Monitoring Seminarunterlage Version: 11.01 Copyright Version 11.01 vom 25. Juli 2012 Dieses Dokument wird durch die veröffentlicht. Copyright. Alle Rechte vorbehalten. Alle Produkt- und Dienstleistungs-Bezeichnungen

Mehr

PostgreSQL im praktischen Einsatz. Stefan Schumacher

PostgreSQL im praktischen Einsatz. Stefan Schumacher PostgreSQL im praktischen Einsatz 2. Brandenburger Linux Infotag 2005 Stefan Schumacher , PGP Key http:/// $Header: /home/daten/cvs/postgresql/folien.tex,v 1.11 2005/04/25

Mehr

Datenstrukturen und Algorithmen

Datenstrukturen 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

Mehr

Suchen in Listen und Hashtabellen

Suchen in Listen und Hashtabellen Kapitel 12: Suchen in Listen und Hashtabellen Einführung in die Informatik Wintersemester 2007/08 Prof. Bernhard Jung Übersicht Einleitung Lineare Suche Binäre Suche (in sortierten Listen) Hashverfahren

Mehr

SQL structured query language

SQL structured query language Umfangreiche Datenmengen werden üblicherweise in relationalen Datenbank-Systemen (RDBMS) gespeichert Logische Struktur der Datenbank wird mittels Entity/Realtionship-Diagrammen dargestellt structured query

Mehr

Datenbankadministration WS 2012/13: Performance-Monitoring und -Tuning

Datenbankadministration WS 2012/13: Performance-Monitoring und -Tuning Datenbankadministration WS 2012/13: Performance-Monitoring und -Tuning Prof. Dr. K. Küspert, Dipl.-Math. K. Büchse, Dipl.-Inf. A. Göbel Friedrich-Schiller-Universität Jena 09. Januar 2013 Gliederung Motivation

Mehr

Datenbanksysteme SS 2007

Datenbanksysteme SS 2007 Datenbanksysteme SS 2007 Frank Köster (Oliver Vornberger) Institut für Informatik Universität Osnabrück Kapitel 9c: Datenbankapplikationen Architektur einer Web-Applikation mit Servlets, JSPs und JavaBeans

Mehr

MaxDB-Schulungsthemen

MaxDB-Schulungsthemen MaxDB-Schulungsthemen Ein Überblick über unser Angebot Allgemeine Hinweise zu unseren Schulungen Die Schulungen finden in der Regel als Inhouse Schulungen bei den interessierten Unternehmen statt. Die

Mehr

Programmiertechnik II

Programmiertechnik II Analyse von Algorithmen Algorithmenentwurf Algorithmen sind oft Teil einer größeren Anwendung operieren auf Daten der Anwendung, sollen aber unabhängig von konkreten Typen sein Darstellung der Algorithmen

Mehr

Vorlesungsinhalt. Recovery. G. Specht: Datenbanksysteme 11-1. Kapitel XI. Vorlesung Datenbanksysteme Univ.-Prof. Dr.

Vorlesungsinhalt. Recovery. G. Specht: Datenbanksysteme 11-1. Kapitel XI. Vorlesung Datenbanksysteme Univ.-Prof. Dr. Recovery Kapitel XI Vorlesung Datenbanksysteme Univ.-Prof. Dr. Günther Specht Universität Innsbruck Institut für Informatik Datenbanken und Informationssysteme (DBIS) Vorlesungsinhalt 11. Recovery Fehler

Mehr

Der linke Teilbaum von v enthält nur Schlüssel < key(v) und der rechte Teilbaum enthält nur Schlüssel > key(v)

Der linke Teilbaum von v enthält nur Schlüssel < key(v) und der rechte Teilbaum enthält nur Schlüssel > key(v) Ein Baum T mit Knotengraden 2, dessen Knoten Schlüssel aus einer total geordneten Menge speichern, ist ein binärer Suchbaum (BST), wenn für jeden inneren Knoten v von T die Suchbaumeigenschaft gilt: Der

Mehr

Prozeß P1 Prozeß P2. Zur Synchronisation stehen den beiden Prozessen binäre Semaphore und die beiden Funktionen

Prozeß P1 Prozeß P2. Zur Synchronisation stehen den beiden Prozessen binäre Semaphore und die beiden Funktionen Seite 8 A UFGABE 11 INTERP ROZEßKOMMUNIKATION Das folgende Petrinetz zeigt zwei verkoppelte Prozesse P1 und P2. Die Transitionen a und b beschreiben Aktionen von P1, die Transitionen c und d Aktionen von

Mehr

Kap. 4.2: Binäre Suchbäume

Kap. 4.2: Binäre Suchbäume Kap. 4.2: Binäre Suchbäume Professor Dr. Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 11. VO DAP2 SS 2009 26. Mai 2009 1 Zusätzliche Lernraumbetreuung Morteza Monemizadeh:

Mehr

3. Architektur eines DBS (Oracle)

3. Architektur eines DBS (Oracle) 3. Architektur eines DBS (Oracle) aus Sicht des Datenbank Server Rechners Connectivity Komponente(n) des DBS (z.b. Oracle Listener) Installation ORACLE_HOME Instanz ORACLE_SID Datenbank Oracle: 1 (aktive)

Mehr

Kapitel 9 Hauptspeicherverwaltung

Kapitel 9 Hauptspeicherverwaltung Kapitel 9 Hauptspeicherverwaltung Einführung: Speicher als Betriebsmittel Speicherkapazität wächst ständig ein PC heute hat 1000 mal soviel Speicher wie 1965 der größte Computer der Welt Anwendungsprogramme

Mehr

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

Mehr

Physische Datenbankdefinition in. Arthur Bauer

Physische 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

Mehr

Technische Beschreibung: Modul Datei und Ordnerverwaltung

Technische Beschreibung: Modul Datei und Ordnerverwaltung EPOD Encrypted Private Online Disc Technische Beschreibung: Modul Datei und Ordnerverwaltung Fördergeber Förderprogramm Fördernehmer Projektleitung Projekt Metadaten Internet Foundation Austria netidee

Mehr

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.

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

Mehr

Betriebssysteme. 4y Springer. Eine kompakte Einführung mit Linux. Albrecht Achilles. Mit 31 Abbildungen

Betriebssysteme. 4y Springer. Eine kompakte Einführung mit Linux. Albrecht Achilles. Mit 31 Abbildungen Albrecht Achilles 2008 AGI-Information Management Consultants May be used for personal purporses only or by libraries associated to dandelon.com network. Betriebssysteme Eine kompakte Einführung mit Linux

Mehr

Beschreiben Sie stichwortartig, was die folgenden Kommandos bewirken.

Beschreiben Sie stichwortartig, was die folgenden Kommandos bewirken. Betriebssysteme: Auswahl alter Klausuraufgaben Seite 1 Beschreiben Sie stichwortartig, was die folgenden Kommandos bewirken. a) sort < MeineDatei.txt > MeineDateiSort.txt b) find / -type d \( -name man

Mehr

6.2 FAT32 Dateisystem

6.2 FAT32 Dateisystem 6.2 FAT32 Dateisystem Dateisystem für Windows 98 einige Unterschiede zum Linux-Dateisystem EXT2: keine Benutzeridentifikation für Dateien und Verzeichnisse! Partitionen werden durch Laufwerke repräsentiert,

Mehr

Informatik 12 Datenbanken SQL-Einführung

Informatik 12 Datenbanken SQL-Einführung Informatik 12 Datenbanken SQL-Einführung Gierhardt Vorbemerkungen Bisher haben wir Datenbanken nur über einzelne Tabellen kennen gelernt. Stehen mehrere Tabellen in gewissen Beziehungen zur Beschreibung

Mehr

Kapitel 3: Datenbanksysteme

Kapitel 3: Datenbanksysteme LUDWIG- MAXIMILIANS- UNIVERSITY MUNICH DEPARTMENT INSTITUTE FOR INFORMATICS Skript zur Vorlesung: Einführung in die Informatik: Systeme und Anwendungen Sommersemester 2015 Kapitel 3: Datenbanksysteme Vorlesung:

Mehr

In Tabelle 2.1 sehen Sie das Ergebnis beider Ausführungen auf meiner Maschine.

In Tabelle 2.1 sehen Sie das Ergebnis beider Ausführungen auf meiner Maschine. Kapitel 2 Datenverwaltung durch SQL Server Wir wollen das obige Skript zwei Mal laufen lassen, einmal mit und einmal ohne eingeschalteten Schreibcache der Festplatte. Für eine lokale Festplatte können

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

Vorlesung Datenbankmanagementsysteme. Vorlesung Datenbankmanagementsysteme Überblick M. Lange, S. Weise Folie #0-1

Vorlesung Datenbankmanagementsysteme. Vorlesung Datenbankmanagementsysteme Überblick M. Lange, S. Weise Folie #0-1 Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme Überblick M. Lange, S. Weise Folie #0-1 Vorlesung Datenbankmanagementsysteme Überblick M. Lange, S. Weise Folie #0-2 Bioinformatik:

Mehr

Implementierung von Dateisystemen

Implementierung von Dateisystemen Implementierung von Dateisystemen Prof. Dr. Margarita Esponda WS 2011/2012 1 Implementierung von Dateisystemen Schichten-Architektur des Dateisystems Implementierung von Dateisystemen Implementierung der

Mehr

Verteiltes Backup. Einleitung Grundlegende Backup Techniken Backup in Netzwerken. Client/Server Peer-to-Peer

Verteiltes Backup. Einleitung Grundlegende Backup Techniken Backup in Netzwerken. Client/Server Peer-to-Peer Verteiltes Backup Einleitung Grundlegende Backup Techniken Backup in Netzwerken Client/Server Peer-to-Peer Einleitung Backup: Das teilweise oder gesamte Kopieren der in einem Computersystem vorhandenen

Mehr

Relationale Datenbanken in der Praxis

Relationale Datenbanken in der Praxis Seite 1 Relationale Datenbanken in der Praxis Inhaltsverzeichnis 1 Datenbank-Design...2 1.1 Entwurf...2 1.2 Beschreibung der Realität...2 1.3 Enitiy-Relationship-Modell (ERM)...3 1.4 Schlüssel...4 1.5

Mehr

Einführung in Hauptspeicherdatenbanken

Einführung in Hauptspeicherdatenbanken Einführung in Hauptspeicherdatenbanken Harald Zankl Probevorlesung 13. 01., 13:15 14:00, HS C Inhaltsverzeichnis Organisation Überblick Konklusion Harald Zankl (LFU) Hauptspeicherdatenbanken 2/16 Organisation

Mehr

Bäume. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 10: Collections 4. Inhalt. Bäume. Einführung. Bäume.

Bäume. Informatik B - Objektorientierte Programmierung in Java. Vorlesung 10: Collections 4. Inhalt. Bäume. Einführung. Bäume. Universität Osnabrück 1 Bäume 3 - Objektorientierte Programmierung in Java Vorlesung 10: Collections 4 Einführung Bäume sind verallgemeinerte Listenstrukturen Lineare Liste Jedes Element hat höchstens

Mehr

Vorlesung Datenbankmanagementsysteme

Vorlesung Datenbankmanagementsysteme Vorlesung Datenbankmanagementsysteme Datenbankarchitekturen M. Lange, S. Weise Folie #2-1 Datenbankarchitekturen Wiederholung - Motivation, Grundlagen Grundlegende Datenbankarchitekturen - Drei-Ebenen-Schema-Architektur

Mehr

Anfragebearbeitung. Vorlesung: Dr. Matthias Schubert

Anfragebearbeitung. Vorlesung: Dr. Matthias Schubert Kapitel l5 Anfragebearbeitung Vorlesung: Dr. Matthias Schubert Skript 2009 Matthias Schubert Dieses Skript basiert auf dem Skript zur Vorlesung Datenbanksysteme II von Prof. Dr. Christian Böhm gehalten

Mehr

Technische Informatik 2 Speichersysteme, Teil 2

Technische Informatik 2 Speichersysteme, Teil 2 Technische Informatik 2 Speichersysteme, Teil 2 Prof. Dr. Miroslaw Malek Sommersemester 2009 www.informatik.hu-berlin.de/rok/ca Thema heute Virtueller Speicher Virtueller Seitenspeicher Seitenregister

Mehr

Definition Informationssystem

Definition Informationssystem Definition Informationssystem Informationssysteme (IS) sind soziotechnische Systeme, die menschliche und maschinelle Komponenten umfassen. Sie unterstützen die Sammlung, Verarbeitung, Bereitstellung, Kommunikation

Mehr

Antwortzeitverhalten von Online Storage Services im Vergleich

Antwortzeitverhalten von Online Storage Services im Vergleich EPOD Encrypted Private Online Disc Antwortzeitverhalten von Online Storage Services im Vergleich Fördergeber Förderprogramm Fördernehmer Projektleitung Projekt Metadaten Internet Foundation Austria netidee

Mehr

Systemanforderungen ab Version 5.31

Systemanforderungen ab Version 5.31 Systemanforderungen ab Version 5.31 Auszug aus BüroWARE Erste Schritte Version 5.4 Generelle Anforderungen SoftENGINE BüroWARE SQL / Pervasive Das Programm kann sowohl auf 32 Bit- als auch auf 64 Bit-en

Mehr

Gliederung und Einordnung

Gliederung und Einordnung Gliederung und Einordnung 1. Objektorientierte Programmierung mit Object Pascal (5. Studienbrief, Kapitel 5) 9.4. + 16.4. 2. Software-Bausteine am Beispiel der Delphi-Komponenten (5. Studienbrief, Kapitel

Mehr

G7-Migration. UDS-ORACLE-Migration Verfahrensbeschreibung

G7-Migration. UDS-ORACLE-Migration Verfahrensbeschreibung G7-Migration UDS-ORACLE-Migration Verfahrensbeschreibung GSE Graeber Software-Entwicklung Karl-Albrecht Graeber In den Siefen 51 D-66346 Püttlingen/Saarbrücken Telefon.: +49(0)6806 306 00 70 Telefax.:

Mehr

Datenbanksysteme II Architektur und Implementierung von Datenbanksystemen

Datenbanksysteme II Architektur und Implementierung von Datenbanksystemen Datenbanksysteme II Architektur und Implementierung von Datenbanksystemen Winter 2009/10 Melanie Herschel Willhelm-Schickard-Institut für Informatik Kapitel 1 Einführung Vorstellung Überblick Organisatorisches

Mehr

2.2 Rechnerorganisation: Aufbau und Funktionsweise

2.2 Rechnerorganisation: Aufbau und Funktionsweise 2.2 Rechnerorganisation: Aufbau und Funktionsweise é Hardware, Software und Firmware é grober Aufbau eines von-neumann-rechners é Arbeitsspeicher, Speicherzelle, Bit, Byte é Prozessor é grobe Arbeitsweise

Mehr

Dateisysteme mit Plugin-Funktion

Dateisysteme mit Plugin-Funktion Dateisysteme mit Plugin-Funktion Basierend auf Reiser 4 unter Linux http://llugb.amsee.de/logo.gif Ausgearbeitet und vorgetragen von Michael Berger 1/23 Agenda Die Idee Dateisysteme mit Plugin-Funktion

Mehr

IO Performance - Planung Messung, Optimierung. Ulrich Gräf Principal Sales Consultant Oracle Deutschland B.V. und Co. KG

IO Performance - Planung Messung, Optimierung. Ulrich Gräf Principal Sales Consultant Oracle Deutschland B.V. und Co. KG IO Performance - Planung Messung, Optimierung Ulrich Gräf Principal Sales Consultant Oracle Deutschland B.V. und Co. KG The following is intended to outline our general product direction. It is intended

Mehr

Effiziente Implementierung einer häufig abgerufenen hierarchischen Struktur in relationalen Datenbanksystemen

Effiziente Implementierung einer häufig abgerufenen hierarchischen Struktur in relationalen Datenbanksystemen Effiziente Implementierung einer häufig abgerufenen hierarchischen Struktur in relationalen Datenbanksystemen Technischer Bericht Albert-Ludwigs-Universität Freiburg Christoph Hermann Institut für Informatik.

Mehr

Implementierung von Dateisystemen

Implementierung von Dateisystemen Implementierung von Dateisystemen Teil 2 Prof. Dr. Margarita Esponda WS 2011/2012 44 Effizienz und Leistungssteigerung Festplatten sind eine wichtige Komponente in jedem Rechnersystem und gleichzeitig

Mehr

Kapitel 7 Physische Datenorganisation. Speicherhierarchie Hintergrundspeicher / RAID Speicherstrukturen B-Bäume Hashing R-Bäume

Kapitel 7 Physische Datenorganisation. Speicherhierarchie Hintergrundspeicher / RAID Speicherstrukturen B-Bäume Hashing R-Bäume Kapitel 7 Physische Datenorganisation Speicherhierarchie Hintergrundspeicher / RAID Speicherstrukturen B-Bäume Hashing R-Bäume Überblick: Speicherhierarchie Register (L1/L2/L3) Cache Hauptspeicher Plattenspeicher

Mehr