Wintersemester 2011/2012
Vorlesung: montags 14:00 Uhr in Hörsaal HS5 (erster Termin 17.10.11)
Übungen: montags 15:30 Uhr in RZ2 (erster Termin 17.10.11)
Diese Vorlesung wird planmäßig nun im Wintersemester angeboten.
Achtng: Am 19. Dezember und am 2. Januar 2012 findet jeweils eine Doppelstunde Vorlesung statt.
Am 9. Januar finden Vorlesung und Übung statt. Während dieser Übung werden gemeinschaftlich die Ergebnisse der Komplexaufgabe besprochen.
Zur Besprechung von Fragen, die sich während der Bearbeitung der Komplexaufgabe stellen, finden Bedarfsübungen
montags 17:00-18:00 Uhr,
dienstags 13:00-14 Uhr und
mittwochs 13:00-14:00 Uhr
jeweils im RZ2 statt.
Konzepte der Datenbanktechnologie (ehemals Objekt-orientierte Datenbanken)
Das Ziel objekt-orientierter Datenbanksysteme ist das unmittelbare Verwalten von Objektstrukturen in Datenbanken. Dies erleichtert den Entwurf der Persistenzschicht in objekt-orientierten Systemen, da dann keine besonderen, strukturverändernden Vorkehrungen getroffen werden müssen, um Objekte dauerhaft - über den Lauf eines Programms hinweg - verfügbar zu haben.
Neben rein objekt-orientierten Datenbanksystemen spielen objekt-relationale Systeme eine wachsende Rolle. Sie versuchen, objekt-orientierte Strukturen auf relationale Datenbanksysteme abzubilden und auf diese Weise die Persistenz von Objekten zu erreichen. Dem sog. objekt-relationalen Mapping kommt dabei eine besondere Bedeutung zu.
Die Anforderungen an die Skalierbarkeit von Datenbankanwendungen durch weltweit operierende Unternehmen im Internet, wie etwa Google, Amazon oder Facebook führen zu einer weiteren Generation von Datenbankanwendungen, die sog. NoSQL-Datenbanken. Sie spielen in modernen Internet-Anwendungen eine wachsende Rolle.
Die Vorlesung richtet sich an Studierende im Master-Studiengang Informatik. Sie widmet sich dem Aufbau und dem Einsatz objekt-orientierter, objekt-relationaler sowie von NoSQL-Datenbanksystemen, beleuchtet verschiedene Persistenzmechanismen mit dem Schwerpunkt ihrer Realisierung in Java. In begleitenden Übungen wird an konkreten Beispielen der Umgang mit diesen Systemen erarbeitet.
Vorlesungsfolien
- KDBT_01_Einleitung.pdf
- KDBT_02_DB4O1.pdf
- KDBT_03_DB4O2.pdf
- KDBT_04_ODMG.pdf
- KDBT_05_OR_Mapping.pdf
- KDBT_06_Hibernate_1.pdf
- KDBT_07_Hibernate_2.pdf
- KDBT_08_Hibernate_3_OR_Mapping.pdf
- KDBT_09_Hibernate_4_OR_Mapping_2.pdf
- KDBT_10_Hibernate_5_HQL.pdf
- KDBT_11_Hibernate_6_Bottom_up.pdf
- KDBT_12_JPA_Annotationen.pdf
- KDBT_13_NOSQL.pdf
Themen der Vorlesung
- Grundlagen objekt-orientierter Datenbanksysteme
- Persistenz
- Transaktionen
- Anfragen
- Java Persistenz Standards
- (Java Data Objects JDO)
- Java Persistence API (JPA)
- NoSQL-Datenbanksystem
- Archtektur und Eigenschaften
- Skalierbarkeit
- CAP-Theorem
- konkrete Systeme:
- Persistente Objekte mit Versant jd4objects
- Objekt-relationales Mapping mit Hibernate bzw. EclipseLink
- MongoDB
- praktischer Umgang in den Übungen
Literatur
Objektrelationale und objektorientierte Datenbank-konzepte und -systeme, Andreas Geppert, dpunkt.verlag, Heidelberg, 2002
Datenbanksysteme - Eine Einführung, Alfons Kemper, Andre Eickler, Oldenbourg Verlag, 2004
Objektorientierte und objektrelationale Datenbanken, Andreas Meier, Thomas Wüst, dpunkt.verlag, Heidelberg, 2000
Java Data Objects, David Jordan, Craig Russel, O'Reilly, Sebastopol, 2003
Pro JPA 2 - Mastering the Java Persistence API, Mike Keith, Merrik Schincariol, APress, 2009
The Definitive Guide to db4o, Jim Paterson et. al., APress, Berkeley, 2006
Java Persistence with Hibernate, Christian Bauer, Gavin King, Manning, Greenwich, 2007