Grundlagen des Datenmanagements: Dateiorganisation und Datenbankkonzepte
Eingeordnet in Informatik
Geschrieben am in Deutsch mit einer Größe von 9,01 KB
Grundlegende Konzepte der Datenverwaltung
Eine Programmanwendung muss in der Lage sein, Dateien zu sortieren, zu suchen, hinzuzufügen, zu löschen, Buchungssätze zu verwalten und Datensätze zu kopieren.
- Entität: Objekte der realen Welt.
- Werte: Informationen über ein Unternehmen.
- Datei: Eine Sammlung von Daten oder ein Datenspeicher.
- Attribute/Felder: Daten über eine Entität; die kleinste logische Dateneinheit.
- Datensatz: Die Darstellung einer Entität, gebildet durch eine Teilmenge von Feldern.
- Datei (erweitert): Eine Liste oder Sammlung von logischen Datensätzen, die einer Menge von Entitäten entsprechen, welche etwas gemeinsam haben und in einer bestimmten Weise organisiert sind.
- Physischer Datensatz (Block): Ein Block aus einem oder mehreren logischen Datensätzen, der auf einem externen Speichermedium gelesen oder geschrieben werden kann.
- Schlüsselfeld: Ein Feld, dessen Wert eine Entität eindeutig identifiziert.
- Organisation (Dateiorganisation): Hängt von verschiedenen Faktoren ab, wie dem Speichermedium, dem Aktualisierungs- und Abfragemodus, der Anzahl der Schlüssel und den wirtschaftlichen Anforderungen.
Dateiorganisation und Datenzugriff
Sequenzielle Dateiorganisation
Merkmale der sequenziellen Organisation
- Die Datensätze werden nacheinander gespeichert.
- Diese Methode ist nützlich für große Datenmengen mit wenigen Aktualisierungen.
- Ein Schlüsselfeld ist optional.
Operationen bei sequenziellen Dateien
- Anfügen: Neue Datensätze werden am Ende der Datei platziert.
- Kopieren und Einfügen: Wenn eine Datei nach einem bestimmten Feld geordnet ist, wird der Inhalt bis zur Einfügemarke kopiert, gefolgt vom Rest der Datei.
- Löschen: Ein Datensatz wird durch Auslassen beim Kopieren der Datei gelöscht.
- Änderungen: Die Größe eines Datensatzes kann verlängert oder verkürzt werden.
- Effizienz und Master-Datei: Alle Operationen sind langsam. Es ist effizienter, alle Änderungen in einer temporären Datei zu gruppieren, die dann zur Aktualisierung der ursprünglichen Master-Datei verwendet wird.
Indizierte Sequenzielle Dateiorganisation (ISAM)
Funktionsweise und Struktur
Die indizierte sequentielle Organisation ermöglicht den direkten Zugriff auf Datensätze über einen Index und einen Schlüssel. Sie ist typischerweise in drei Bereiche unterteilt:
- Primärbereich: Speichert die eigentlichen Datensätze in sequenzieller Reihenfolge.
- Indexbereich: Enthält Einträge, die auf die Datensätze im Primärbereich verweisen.
- Überlaufbereich: Speichert Datensätze, die nicht mehr in den Primärbereich passen.
Zugriffsarten
Der Zugriff kann zufällig oder sequenziell erfolgen:
- Zufälliger Zugriff: Ähnlich dem direkten Zugriff, ermöglicht das schnelle Auffinden eines spezifischen Datensatzes über den Index.
- Sequenzieller Zugriff: Nach dem Auffinden eines Datensatzes über den Index kann von dort aus sequenziell weitergelesen werden.
Schlüsselfeld und Index
Diese Organisationsform erfordert ein obligatorisches Schlüsselfeld (numerisch oder alphanumerisch), dessen Wert eindeutig ist. Der Entwickler gibt den Wert des Schlüsselfeldes ein, und der Index ist für das Auffinden des Datensatzes zuständig.
Der Indexbereich enthält Einträge, die den größten Schlüsselfeldwert eines Blocks und dessen Adresse speichern. Es gibt oft einen zweistufigen Index:
- Master-Index: Enthält das Schlüsselattribut und den Zylinder, in dem sich der Datensatz befindet.
- Zylinder-Index: Ein weiterer Index pro Zylinder, der den Bereich angibt, wo die meisten Datensätze liegen.
Überlaufbereich
Datensätze, die nicht mehr in den Primärbereich passen, werden im Überlaufbereich gespeichert.
Direkte Dateiorganisation
Grundlagen der direkten Organisation
Die direkte Dateiorganisation zeichnet sich durch eine direkte Beziehung zwischen dem Schlüsselwert und dem physischen Speicherort des Datensatzes aus. Der Schlüsselwert ist hierbei kein Datensatzfeld, sondern repräsentiert den Speicherort selbst.
Methoden der Adressierung
Es gibt zwei grundlegende Methoden für die Adressierung:
- Direkte Adressierung: Der Programmierer gibt die exakte Hardware-Adresse (z.B. Zylinder, Spur, Sektor) des Datensatzes an, um ihn abzurufen oder zu speichern. Der Schlüsselwert muss eine positive ganze Zahl sein, die absolut oder relativ sein kann.
- Indirekte Adressierung (Hashing/TIPP): Der Schlüsselwert wird einer Reihe von Transformationen (Hashing-Funktion) unterzogen, um einen Wert zu erhalten, der den tatsächlichen Speicherort des Datensatzes annähert. Es existieren zahlreiche Methoden zur Umwandlung von Schlüsseln in Adressen.
Informationssysteme und Datenbankkonzepte
Physisches und logisches Design von Informationssystemen
Informationssysteme umfassen zwei Hauptdesignphasen:
- Physisches Design: Dies ist die Implementierungsstufe, die sich mit der Definition von Speicherstrukturen und der Organisation von Daten auf Speichermedien befasst. Daten werden hier auf Festplatten gespeichert, entweder in Dateien oder Datenbanken.
- Logisches Design: Dies ist die Benutzer-Level-Design-Stufe, die sich darauf konzentriert, wie Benutzer Daten im System anzeigen und verwalten.
Ein wichtiger Aspekt, der in beiden Phasen berücksichtigt werden muss, ist die Redundanz.
Datenbanken: Konzepte und Vorteile
Definition einer Datenbank
Eine Datenbank (DB) ist eine kontrollierte und integrierte Sammlung von Daten, die auf einem sekundären Speichermedium gespeichert ist. Die Daten sollten unabhängig von den Anwendungen sein, die sie nutzen. Ein Datenmodell-Managementsystem (DBMS) sollte die Erfassung von Zusammenhängen und Einschränkungen der realen Welt ermöglichen.
Eine Datenbank ist zudem eine Sammlung von Programmen, die den Zugriff, die Implementierung und die Pflege der Datenbank ermöglichen. Zusammen mit der Datenbank und den Benutzern bildet dies das Datenbanksystem.
Vorteile von Datenbanksystemen
- Datenunabhängigkeit: Daten sind unabhängig von den Anwendungen, die sie verarbeiten, und umgekehrt.
- Bessere Datenverfügbarkeit: Daten sind leichter zugänglich.
- Effizienzsteigerung: Verbesserte Effizienz bei der Datenerfassung, Programmierung und Systeminbetriebnahme.
- Kohärenz und Standardisierung: Führt zu kohärenteren, informativeren und besser standardisierten Dokumentationen.
- Erhöhter Benutzerkomfort: Schnellerer und einfacherer Zugang für Endbenutzer; Daten sind für alle Benutzer einfacher zu finden; mehr Flexibilität bei sich ändernden Anforderungen.
Arten von Datenbanksystemen
- Relationale Datenbanksysteme: Verwalten Daten effizient mit einem moderaten Grad an Sicherheit und Formatierung.
- Neue Anwendungen: Erfordern Unterstützung für anspruchsvollere Datentypen, die Behandlung der zeitlichen Dimension, höhere Sicherheit und die Verwaltung ungenauer Daten.
Wichtige Eigenschaften von Datenbanksystemen
Datensicherheit und Integrität
Integrität: Schutz der Datenbank vor Operationen, die Inkonsistenzen in den Daten einführen könnten. Integrität bezieht sich auf die Richtigkeit, Aktualität und Korrektheit der Daten in einer Datenbank.
Datenverfügbarkeit
Verfügbarkeit: Sicherstellung der Datenverfügbarkeit für Benutzer, selbst bei Ausfällen. Dies wird durch physische oder logische Mechanismen zur Wiederherstellung der Datenbank (ganz oder teilweise) erreicht.
Das Wichtigste ist, dass die Datenbank in einem konsistenten Zustand bleibt. Dies wird durch die Erstellung von Transaktionen erreicht – Ausführungseinheiten, die atomar ausgeführt werden müssen. Das bedeutet, entweder werden alle Operationen einer Transaktion vollständig ausgeführt, oder keine einzige.
Vertraulichkeit
Vertraulichkeit: Das System muss die Identifizierung und Authentifizierung des Benutzers gewährleisten. Der Administrator oder Dateninhaber muss autorisierten Benutzern Berechtigungen für Objekte in der Datenbank erteilen können.