# Funktionen eines DBMS Von Mika Merten https://hackmd.io/@Strike/HyxARCzfO ---- ## Gliederung 1. Datensicherheit 2. Transaktion 3. Datenintegrität 4. Abfrageoptimierung 5. Anwendungsunterstützung 6. Sprachen 7. Mehrbenutzerfähigkeit 8. Quellen ---- ## Datensicherheit * speichert relationale Daten auf Medium * eigentliche Daten * Information über Datenshemata und Zugriffsrechte von Benutzern * letztere wichtig um Datensicherheit zu Garantieren * Schutz gegen Datenverlust & unerlaubten Zugriff * Metadaten auch data dictionary oder Katalog des Systems * Backups * Performance-Problem ![Bild-Datensicherheit](https://www.leuchterag.ch/wp-content/uploads/2016/04/blog-datenschutz-datensicherheit-panamapapers-600x313.jpg) ---- ## Transaktion * Transaktionskonzept * Schutz gegen Race Conditions * paralleler Zugriff von Benutzern * sperrt Daten für Zugriff durch andere Benutzer, bis Transaktion durch commit beendet/Änderungen durch Rollback unwirksam ![Bild-Transaktion](https://image.jimcdn.com/app/cms/image/transf/dimension=670x10000:format=png/path/s834d64c225dfb243/image/i39a6df0debd10e8b/version/1573925220/image.png) ---- ## Datenintegrität * Integrität kann durch Constraints sichergestellt werden * Regeln im Managementsystem * Beschreiben, wie Daten verändert werden dürfen * Wichtigster Vertreter: Foreign Key Constraint * Verhindert Löschung von Daten, wenn für andere Tabelle benötigt ![BildDatenintegrität](https://wirtschaftslexikon.gabler.de/sites/default/files/graph/compact/datenintegritaet-28296.png) ---- ## Abfrageoptimierung * Für Abfrage und Veränderung stellt DBMS Datenbanksprache * Abfrage zunächst in logische Operationen relationaler Algebra übersetzt * Danach werden Datenbankoperatoren ausgewählt * führen logische Operationen tatsächlich auf Datei aus * Wahl + Reihenfolge nennt man Erstellen eines Ausführungsplans * Abfrageoptimierer besonders komplexer Teil von Datenbanksoftware * wesentlichen Einfluss auf Effizienz des Gesamtsystems * indizes spielen wichtige Rolle * dienen dazu, schnell bestimmten Datensatz zu finden ![Bild-Abfrageoptimierung](https://upload.wikimedia.org/wikipedia/de/thumb/b/bb/Datenbankoperatoren.svg/220px-Datenbankoperatoren.svg.png) ---- ## Anwendungsunterstützung * Zur Unterstützung von Datenbankapplikationen * Trigger * Durch Eintreten von bestimmten Ereignis Auslösung von Aktion. * häufig bei Einfüge - und Änderungsoperationen * Stored Procedures * Ausführen von Scripten in Datenbank * Innerhalb der Datenbank * => oft effizientester Weg Daten zu manipulieren * Datenbanken mit Unterstützung von Trigger & Stored Procedures auch aktive Datenbanken ![Bild-Anwendungsunterstützung](https://w7.pngwing.com/pngs/240/789/png-transparent-database-trigger-computer-icons-data-manipulation-language-sql-clarity-c-i-c-others-angle-text-rectangle-thumbnail.png) ---- ## Sprachen * Datenbank stellt Datenbanksprache für folgende Zwecke zur Verfügung: * Datenabfrage und manipulation * Verwaltung der Datenbank und Definition der Datenstrukturen * Berechtigungssteuerung * Bei relationalen DBMS sind diese in einer Sprache(SQL) vereint * Bei anderen Systemen existiert durchaus eine Trennung ---- ## Mehrbenutzerfähigkeit * Für Zugriff auf Daten werden Berichtigungen verwaltet * ohne Berechtigung kann entsprechende Funktion nicht durchgeführt werden * Den gleichzeitigen Zugriff mehrer Anwendungen regelt das DBMS Konkurrenzsituation * es werden sperren verwaltet * Systemprotokolle verwaltet * Datenbank arbeitet Transaktionsorientiert * Auszeichnung gegenüber funktional erweiterten Dateisystemen * Fehler durch unzulässigen Datenbankzugriff = Anomalie in Mehrbenutzerbetrieb ![Bild-Mehrbenutzerfähigkeit](https://w7.pngwing.com/pngs/240/789/png-transparent-database-trigger-computer-icons-data-manipulation-language-sql-clarity-c-i-c-others-angle-text-rectangle-thumbnail.png) ---- ## Quellen * https://de.wikipedia.org/wiki/Datenbank#Datensicherheit 21.01.2021 20:38
{"metaMigratedAt":"2023-06-15T20:11:46.364Z","metaMigratedFrom":"YAML","title":"Funktionen eines DBMS","breaks":true,"description":"Zusammenfassung und Klärung","slideOptions":"{\"theme\":\"blood\",\"transition\":\"concave\"}","contributors":"[{\"id\":\"d986e76a-aa05-4ed9-ab48-8ab001f4f2ec\",\"add\":4475,\"del\":4}]"}
    268 views