===== Arten von Datenbanken ===== ==== 1) Single-User vs. Multi-User-Betrieb ==== **Single-User-Datenbanken** können stets von nur einem Benutzer gleichzeitig benutzt werden. z.B.: Tabellenkalkulation (MS Excel Sheet) mit mehreren Tabellen in einer Datei Das Betriebssystem beziehungsweise die Anwendung verhindert die mehrfache öffnen der Datenbank (Excel-Datei) zum Schreiben. Aber: Excel bietet das Anlegen einer Kopie an  es existieren unterschiedliche Dateistände  Dateninkonsistenz **Multi-User-Datenbanksysteme** erlauben mehreren Anwendern gleichzeitig den Tabellenzugriff. Schreibzugriffe werden durch Sperren der betroffenen Datensätzen geschützt. * es existiert nur ein aktueller Datenbestand * mehrere Benutzer können am selben Datenbestand unabhängig arbeiten * dadurch Vermeidung von mehreren unterschiedlichen Versionen (keine Inkonsistenzen) Datenbankzugriff wird über das Datenbank-Management-System (DBMS) geregelt ==== 2) Desktop vs. Server-Datenbank ==== Eine Desktop-Datenbank ist auf einem Desktop installiert. Eine Server-Datenbank ist auf einem dedizierten Server installiert. Zum Zugriff auf die Datenbank sind Clients erforderlich. **Client-Server-Betrieb** Client und Server sind im Normalfall räumlich voneinander getrennt. Datenbankanfragen werden über Protokolle geregelt. Die Verbindung erfolgt üblicherweise über das Netzwerk (OSI-Modell). Server kann gleichzeitig mehrere Benutzer und mehrere Verbindungen bearbeiten (Multi-User und Multi-Tasking). ==== 3) Anzahl der Benutzer ==== * bis ca. 50 Benutzer -> Desktop-Datenbank * über 50 Benutzer -> Server-Datenbank ==== 4) Zentrale vs. verteilte Datenbank ==== * Zentrale Datenbank -> ein Server * verteilte Datenbank -> Datenbank auf mehrere Server verteilt ==== 5) Transaktionale Datenbank vs. Data-Warehouse ==== **Transaktion:** Tätigkeit, die in einem Stück eine Datenbank-Änderung ausführt (z.B. Namensänderung) Transaktion kann eventuell zurück genommen werden (Rollback). z.B. Server-Kopie über Logskipping **Data-Warehouse:** es wird eine Kopie einer Datenbank gemacht und diese ausgwertet ==== 6) Datenbankmanagementsystem ==== umfasst folgende Funktionalitäten * Verwaltung der Sicherheit * aktive Sicherheit (Zugriffsrechte) * passive Sicherheit (Backup und Restore) * Verwaltung der Anwender * Satzsperren * Objektberechtigungen * Anwenderrollen * Bereitstellen von Kommunikationswegen * ODBS * APIs * Wahrung der Datenintegrität * Datenkonvertierung und Präsentation (z.B. Datum) * Datenträgerverwaltung * z.B. Transaktionsprotokoll auf schnelles Laufwerk und eigentliche Datenbank auf RAID 5 * Meta-Datenverwaltung (z.B. Leistungsparameter)