|
|
Code: DBWINFO-250 |
|
- |
8 |
Studienjahr: 2 |
Pflichtfach: ja |
Arbeitssprache:
Deutsch |
Prüfungsart:
Klausur (150 Minuten, davon 70 Min. für Datenmodellierung und je 40 Min. für Prozedurale Datenbankprogrammierung und für Datenbankadministration) Pro Bearbeitungsminute ist ein Punkt zu vergeben.
[letzte Änderung 06.10.2021]
|
DBWINFO-250 (P730-0014) Wirtschaftsinformatik, Bachelor, ASPO 01.10.2021
, 2. Studienjahr, Pflichtfach
|
Der Gesamtaufwand des Moduls beträgt 240 Arbeitsstunden.
|
Empfohlene Voraussetzungen (Module):
Keine.
|
Als Vorkenntnis empfohlen für Module:
|
Modulverantwortung:
Prof. Dr. Dieter Hofbauer |
Dozent/innen: Prof. Dr. Dieter Hofbauer
[letzte Änderung 01.09.2021]
|
Lernziele:
Datenmodellierung: Die Studierenden verstehen die Grundidee der Informationsorganisation und -verwaltung im relationalen Datenmodell und sind mit den Grundbegriffen der Relationenalgebra vertraut. Sie kennen Vor- und Nachteile der Datenhaltung mit relationalen bzw. nichtrelationalen Ansätzen. Die Studierenden sind in der Lage, das Entity-Relationship-Modell in der Entwurfsphase der Anwendungsentwicklung einzusetzen, sie können ein gegebenes ER-Modell in ein passendes Datenbankschema transformieren, und sie verstehen grundlegende Konzepte der Datenmodellierung wie Typkonzept, Integritätsbedingungen und Normalisierungseigenschaften. Die Studierenden kennen die Einteilung der Datenbanksprache SQL in ihre Teilsprachen und können gemeinsame Strukturen und Analogien aufzeigen. Sie verfügen über detaillierte Kenntnis der einzelnen SQL-Befehle und erkennen Gemeinsamkeiten und Unterschiede analoger Aktionen auf unterschiedlichen Ebenen. Die Studierenden verstehen die Funktionsweise und die Auswirkungen von Transaktionen nach dem ACID-Prinzip und können SQL-Transaktionsanweisungen für typische Anwendungsfälle einsetzen. Sie besitzen umfassende Kenntnisse in SQL-Abfragen sowie praktische Erfahrungen mit deren Einsatz. Prozedurale Datenbankprogrammierung: Die Studierenden kennen die wesentlichen Elemente von 3GL-Sprachen im Vergleich zu 4GLSprachen wie Variablen und Kontrollstrukturen. Sie verstehen den Unterschied zwischen datenbankinternen Programmen und einer Implementierung „von außen“. Sie Studierenden können selbst definierte Datenbankfunktionen und -prozeduren mit Hilfe einer prozeduralen Sprache wie PL/pgSQL programmieren. Sie sind in der Lage, Triggerprozeduren in einer prozeduralen Sprache zu definieren und mit Hilfe von Triggern zu aktivieren. Datenbankadministration: Die Studierenden kennen die wesentlichen Aufgabenbereiche eines Datenbankadministrators wie Datensicherheit, Unterstützung von Entwicklern und Anwendern, Leistungsüberwachung und -verbesserung sowie Datensicherung und -wiederherstellung, und sie sind in der Lage, grundlegende Administrationsaufgaben zu übernehmen. Sie verstehen den Aufbau eines Datenbankmanagementsystems und den Zusammenhang zwischen der logischen und der physikalischen Sicht sowie die sich daraus ergebenden Folgerungen aus dem Blickwinkel des Administrators. Die Studierenden wissen, welche Anforderungen an Sicherheit und Zuverlässigkeit eines Datenbanksystems gestellt werden und kennen Methoden und Werkzeuge, um diese Anforderungen umzusetzen.
[letzte Änderung 06.10.2021]
|
Inhalt:
Datenmodellierung: 1. Grundlagen: Informationen, Daten, Datenbanken 2. Datenbankmanagementsysteme (DBMS): Prinzipien und Aufgaben; DBMS-Produkte; Drei-Ebenen-Architektur; Nutzergruppen; historische Entwicklung 3. Relationales Datenmodell: Relationen und Relationenalgebra 4. Datenbankentwurf: Entity-Relationship-Modellierung; Transformation von ER-Modell in relationales DB-Schema; ER- Diagramme versus UML-Klassendiagramme; Normalformen 5. SQL: Definition und Manipulation von Tabellen und Datensätzen mit DDL- und DML-Anweisungen (Anlegen, Ändern, Löschen); Analogien zwischen DML und DDL; Integritätsbedingungen 6. Transaktionen: ACID-Prinzip; SQL-Transaktionsanweisungen 7. SQL-Abfragen: Selektion und Projektion; Gruppierung; Aggregatfunktionen; Mengenoperationen; Subselects; temporäre Tabellen; Abarbeitungsreihenfolge 8. Sichten; Rechtevergabe Prozedurale Datenbankprogrammierung: 1. Prozedurale Sprachen in Datenbanksystemen im Überblick; wesentliche Merkmale und Unterschiede zwischen 3GL-Sprachen und SQL 2. Prozedurale Datenbankprogrammierung am Beispiel der Sprache PL/pgSQL 3. Grundlegende Syntaxelemente 4. Prozeduren und Funktionen (Aufrufparameter, Rückgabewerte und deren Typen) 5. Imperative Sprachkonzepte: Fallunterscheidungen und Schleifen 6. Cursor (implizit, explizit, parametrisiert) 7. Ausnahmebehandlung 8. Selbst definierte Aggregat- und Fensterfunktionen 9. Triggerprozeduren und Trigger (auslösende Ereignisse, Zeitpunkt und Häufigkeit der Ausführung, Einfluss auf das auslösende Ereignis), Anwendungsbeispiele Datenbankadministration: 1. Datenbankarchitektur im Überblick (Client/Server, Netzwerk, Komponenten, Prozesse, Dateien, Tablespace, Konfigurationsoptionen, Werkzeuge, logische Hierarchien) 2. Datenbanktuning (Konfiguration/Dimensionierung, Indizierung, Abfrageoptimierung) 3. Benutzer, Rollen, Rollenattribute und Privilegien für wesentliche Datenbankobjekte 4. Backupkonzepte (volles/inkrementelles Backup, Offline-/Online-Backup, physikalisches/logisches Backup) 5. Transaktionen aus administrativer Perspektive (u. a. Isolationsgrade) 6. Backup/Recovery im Detail (Befehle/Ablauf, Recovery nach physikalischen/logischen Fehlern), Unterstützungphysikalischer Backups durch Barman (Backup and Recovery Manager) 7. Wartungsaufgaben (z. B. Tabellenstatistiken)
[letzte Änderung 06.10.2021]
|
Weitere Lehrmethoden und Medien:
Vorlesung mit integrierter Übung
[letzte Änderung 06.10.2021]
|
Literatur:
Datenmodellierung: • Elmasri, Ramez A./Navathe, Shamkant B.: Grundlagen von Datenbanksystemen; Pearson Studium, München • Geisler, Frank: Datenbanken – Grundlagen und Design; mitp; Heidelberg u. a. • Kudraß, Thomas (Hrsg.): Taschenbuch Datenbanken; Hanser; München • Fröhlich, Lutz: PostgreSQL 10 – Praxisbuch für Administratoren und Entwickler; Hanser; München • Saake, Gunter/Sattler, Kai-Uwe/Heuer, Andreas: Datenbanken – Konzepte und Sprachen; mitp; Frechen Prozedurale Datenbankprogrammierung: • Feuerstein, Steven/Pribyl, Bill/Dawes, Chip: Oracle PL/SQL – kurz & gut; O´Reilly; Köln • Scherbaum, Andreas: PostgreSQL – Datenbankpraxis für Anwender, Administratoren und Entwickler; Open Source Press; München • Papakostas, Ioannis: Datenbankentwicklung mit PostgreSQL 9; TEIA; Kelkheim Datenbankadministration: • Eisentraut, Peter/Helmle, Bernd: PostgreSQL Administration; O´Reilly; Köln • Fröhlich, Lutz: PostgreSQL 10 – Praxisbuch für Administratoren und Entwickler; Hanser; München
[letzte Änderung 06.10.2021]
|