• Martin Thoma
  • Home
  • Categories
  • Tags
  • Archives
  • Support me

Datenbanksysteme-Klausur

Contents

  • Behandelter Stoff
  • SQL
  • Fragen
  • Material
  • Aufbau der Klausur
  • Übungsbetrieb
  • Termine und Klausurablauf
  • Nicht vergessen
  • Ergebnisse
Dieser Artikel beschäftigt sich mit der Vorlesung „Datenbanksysteme“ des Moduls „Kommunikation und Datenhaltung“ am KIT. Er dient als Prüfungsvorbereitung. Ich habe die Vorlesungen bei Herrn Prof. Dr. Böhm im Sommersemester 2013 gehört.

An diesem Artikel wird natürlich noch gearbeitet.

Behandelter Stoff

15.04.2013 Warum Datenbanken toll sind; Transaktionseigenschaften; Datenschutz; Datensicherheit; Relationsmodell; Integritätsbedingungen; Schlüssel; Fremdschlüssel; SQL; View; Selektion; Projektion; Query-Algebra; Anfrage-Optimierer; Anfragen sind deklarativ; 3-Ebenen-Architektur; Trennung zwischen Schema und Instanz, 9 Codd'sche Regeln
Kapitel 1
18.04.2013 Datentyp, Instanz, Polymorphes Typsystem, Typkonstruktoren, ... (TODO)
Kapitel 2 - Kapitel 3, Folie 32
22.04.2013 SQL (alter, drop, index, unique); Index; ER-Diagramm; UML; Trägermenge $\mu$, Aktueller Zustand einer Variablen $\sigma$
Kapitel 3, Folie 32 - Kapitel 4, Folie 33
29.04.2013 Systemunabhängige Modellierung - Strukturelle Seite; abstrakte Klassen, Metaklassen, Parametrisierte Klassen; Aggregation und Assoziation
Kapitel 5, Folie 1 - Kapitel 6, Folie 24
06.06.2013 FD, Reflexivität, Projektivität, Akkumulation, RAP-Regeln, Einfügeanomalie, Löschanomalie; Abhängigkeitstreue / Verbundtreue; 1. - 4. Normalform
Kapitel 7
13.06.2013 Nebenläufigkeitsprobleme: Lost update, dirty read, non-repeatable read; Serielle Ausführung beseitigt Probleme, aber IO/Kommunikation machts ineffizient; History, Prefix Commit-Closed, commited projection; Transaktionen
Kapitel 11
24.06.2013 Serialisierbarkeitsgraph; Synthese-Verfahren; BCNF; Histories: RC, ACA, ST; prefix commit-closed
Kapitel 11
27.06.2013 Kapitel 8: Relationale Algebra, Bereichskalkül; Syntaktisch sicher $\Rightarrow$ Semantisch sicher; Kapitel 12: Anwendungsprogrammierung
Kapitel 8, 12

Falls hier was fehlt, könnt ihr mich gerne in den Kommentaren oder per Mail ([email protected]) darauf aufmerksam machen. Ich bin ja mal gespannt, ob ich das bis zum Ende aktuell halte.

SQL

create view MG as
select Mitarbeiter, Gehalt
from MGA
where Gehalt > 70
insert into MG
values ('Alice', 90)

Fragen

Was ist der Unterschied zwischen einem DBS und einem DBMS?
Ein DBMS ist eine Software zur Datenverwaltung. Die eigentlichen Daten sind in der Datenbank. Ein DBS ist eine DBMS und eine Datenbank. Ein DBMS kann mehrere Datenbanken verwalten.
Sei $H = r_1[y] w_1[x] r_3[x] w_1[z] r_2[z] w_3[y] r_2[x] w_2[y] c1 r_3[y] c_3 w_2[z] c_2$.
Welche Transaktionen sind in dieser History?
  • Ein Eintrag $r_i[x]$ bedeutet, dass die Transaktion $i$ die Ressource $x$ liest.
  • Ein Eintrag $w_i[x]$ bedeutet, dass die Transaktion $i$ die Ressource $x$ schreibt.
  • $c_i$ bedeutet, dass die $i$-te Transaktion commitet wird
Es gibt also die Transaktion $T_1, T_2 \text{ und } T_3$ mit $T_1 = r_1[y] w_1[x] c_1$

Material

  • Folien
  • Vorlesungswebsite
  • Mein Anki-Deck (digitale Karteikarten)
  • Mitschrieb-Wiki

In der Fachschaft gibt es folgende Altklausuren:

  • 25. Februar 2011
  • 30. Juli 2010 (DB + Rechnernetze, mit Lösung)

Aufbau der Klausur

Häufige Aufgabenstellungen sind:

  • Histories und Transaktionen: Ist eine gegebene History RC, ACA, Strict?
  • Modellierung
  • SQL-Abfragen formulieren

In der Klausur vom SS 2013 wurde das in 4 Aufgaben à 15 Punkte aufgeteilt. Unter anderem war diesmal der RAP-Algorithmus und der Dekompositionsalgorithmus relevant.

Übungsbetrieb

Es gibt nur ein "Übungsblatt" mit Bonuspunkten für die Klausur. Auf dieses beziehe ich mich.

  • Wo sind die Übungsblätter: Portal - Aufgaben
  • Abgabeform: Online
  • Abgabe: 07.07.2013
  • Rücknahme: ?
  • Turnus: Einmalig
  • Übungsschein verpflichtend: Nein
  • Bonus durch Übungsschein: Ja

Ein paar interessante Informationen zum Blatt:

Was ist mit "Brute-Force-Ansätze" in der Aufgabenstellung gemeint?
Antwort von Herrn Keller: Bei Anfragen, die nur eine Anzahl in der Projektionsliste erwarten, können sie mit einer Query SELECT FROM das korrekte Ergebnistupel durch ausprobieren herausbekommen. Im Portal wird das zunächst als "korrekt" bewertet, allerdings werden wir das im Nachhinein filtern.
Wie kann man bei der ORACLE-Datenbank die Anzahl der ausgegebenen Zeilen beschränken (LIMIT)?
SELECT *
FROM
( your selection )
WHERE ROWNUM <= 5

Ein bisschen was zu JOIN sollte man sich durchlesen.

Ich habe übrigens das folgende Captcha bekomme:

Datenbanksysteme - Captcha
Datenbanksysteme - Captcha

Wie zur Hölle soll man das lösen? Ich hatte auf „448444“ getippt, aber das war falsch.

Termine und Klausurablauf

Datum: Mittwoch, den 31. Juli 2013 von 11:00 bis 13:00 Uhr
Ort: seit 29.07.2013 online:

Wer Wo
Nachnamen A-G Gerthsen Hörsaal
Nachnamen H-J Nusselt Hörsaal
Nachnamen K-L Hörsaal Neue Chemie
Nachnamen M-R Daimler Hörsaal
Nachnamen S Gaede Hörsaal
Nachnamen T-Z Benz Hörsaal

Punkte: 60
Bestehensgrenze: ?
Übungsschein: ?
Bonuspunkte: ?

Nicht vergessen

  • Studentenausweis
  • Kugelschreiber

Ergebnisse

Sind noch nicht draußen (Stand: 20.04.2013)

Published

Apr 20, 2013
by Martin Thoma

Category

German posts

Tags

  • Klausur 34

Contact

  • Martin Thoma - A blog about Code, the Web and Cyberculture
  • E-mail subscription
  • RSS-Feed
  • Privacy/Datenschutzerklärung
  • Impressum
  • Powered by Pelican. Theme: Elegant by Talha Mansoor