Database Management Flashcards
VL 9-10
Datenredundanz
- Existenz mehrerer identischer Datenelemente in verschiedenen Datensätzen oder Datenbanken,
- hoher Aufwand, um diese Kontaktinformationen gleichzeitig in allen Datenbanken synchron zu halten, zB. identische Kundenkontaktinformationen, die in mehreren Datenbanken eines Unternehmens gespeichert sind
Dateninkonsistenz
- Abbildung verschiedener Werte auf ein einzelnes Attribut eines Datenelements über mehrere Datensätze oder Datenbanken hinweg, zB. unterschiedl. Telefonnummern für die gleiche Person
Datenbanken
- Bestehen aus einem Datenbankverwaltungssystem (DBMS) und einer Gruppe von Daten (der eigentlichen Datenbank), die logische Abhängigkeiten untereinander aufweisen
- Ziel: Effizienter und gleichzeitiger Zugriff für mehrere Benutzer oder Anwendungen auf Daten
- Zentraler, gemeinsamer Speicherort für alle Anwendungen (statt Lokal mit einzelnen Anwendungssystemen)
Datenverwaltung
Ist verantwortlich für die Implementierung und Durchsetzung von Richtlinien in Bezug auf
- Datenplanung,
- Datensammlung,
- Datenqualitätsstandards,
- Datenpflege,
- Datennutzung (Richtlinie und Überwachung),
- Datentransfer
- Datenbankendesign
Database Management System (DBMS)
- Sammlung von Anwendungen für die Erstellung, Verwaltung und Nutzung einer Datenbank
- Durch die Sammlung können mehrere Anwendungssysteme gleichzeitig ihre Daten speichern, auf sie zugreifen, und sie ändern, ohne dass die Daten lokal gespeichert werden müssen
- Physische und logische Datenstrukturen werden vom DBMS getrennt
Physische und Logische Datenstrukturen
Physisch:
Zeigt an, wie Daten tatsächlich auf dem physischen Speichermedium organisiert und gespeichert werden
Logisch:
Beschreibt die Organisation von Daten basierend auf der Wahrnehmung eines Benutzers unter Verwendung logischer Konzepte, die von jeder technischen Implementierung abstrahieren
Komponenten für die Erstellung, Bearbeitung und Analyse von Datenbanken
- Data Definition Language (DDL): Definiert die Struktur des Datenbankinhalts
- Data Manipulation Language (DML): Dient zum Ändern von Daten, die in der Datenbank gespeichert sind (zB. SQL)
- Data Dictionary (DD): Hilfe zur Verwaltung vorhandener Datenbestände, generiert Berichte als Übersicht über in einer Datenbank gespeicherte Daten –> besonders wichtig bei großen Datenbanken
Datenmodelle für Datenbanken
- Hierarchical Data Model (veraltet)
- Network Data Model (veraltet)
- Relational Data Model (am Häufigsten in der Industrie verwendet)
- Object-oriented Data Model (neuestes Modell, jedoch nur selten verwendet)
Relational Data Model
- Geeignet für Ad-hoc Abfragen
- Flexibel in Bezug auf das Hinzufügen neuer Daten oder das Kombinieren von Daten aus mehreren verschiedenen Datenquellen
- Alle Daten werden als Tabellen (Relationen) mit einer festen Anzahl von Spalten und einer variablen Anzahl von Zeilen dargestellt
- Spalten repräsentieren Datenelemente bzw. Attribute, die Entitäten beschreiben
- Schwächen in: Konstruktionsdesign-Anwendungen, Multimedia-Anwendungen, Architekturkonzepten
Non-relational Data Model
NoSQL-Datenbanken sind nicht primär auf Tabellen aufgebaut und verwenden im Allgemeinen nicht nur SQL zur Datenbearbeitung
Besser als relationales und objektorientiertes Datenmodell in Anwendungen, in denen
- Große Datenmengen oft verarbeitet werden müssen (Big Data)
- Daten gestreamt werden
- Geschwindigkeit entscheidend für den Geschäftserfolg ist
- Architektur eine horizontale Skalierung erfordert, um das Wachstum von Unternehmen zu ermöglichen
- Beispiele: Graphbasiert, Säulenbasiert, Schlüsselwertspeicher
Object oriented Data Model
- Kann Einschränkungen von relationalen Datenmodellen eliminieren, zB. die Verwendung komplexer Objekte
- Lösung: Objektorientiertes DBMS
Datenbanken Design
- Datenbankadministratoren sind verantwortlich für die Definition und Strukturierung von Datenbankinhalten sowie für die Pflege und Administration der Datenbank
- Unterteilung in zwei Prozesse: Logisches Datenbankdesign und Physisches Datenbankdesign
Logisches Datenbankendesign
- Fragen, die das Design der Datenbank aufwirft: Welche Beziehungen bestehen zwischen den Daten? Welche Datentypen werden benötigt? Wie werden die gespeicherten Daten verwendet?
- Abstraktes Modell der zu speichernden Daten. Es beinhaltet Relevante Entitäten und Beziehungen zwischen den Datenelementen
- Modellierungswerkzeug: ER-Diagramme (Entity-Relationship)
Physisches Datenbankendesign
Adressiert die Frage, wie die Daten physikalisch gespeichert werden
- Zentrale Datenbank
- Verteilte Datenbank: Logisch verbunden, aber physisch an verschiedenen Orten
- Fragmentierte bzw. partitionierte Datenbanken: Tupel einer Relation werden in physikalisch unterschiedlichen Speicherorten gespeichert
- Replikation als Alternative zu fragmentierten Datenbanken
Datenbanknutzer
- Graphische Benutzeroberfläche (GUI) neben Datenbankdesign erforderlich
- Erlaubt verschiedene Perspektiven in einer physischen Datenbank (versch. Abteilungen/Personen können auf verschiedene Daten in derselben Datenbank zugreifen)