Hauptfunktionen des DBMS
Hauptfunktionen des DBMS

Video: Hauptfunktionen des DBMS

Video: Hauptfunktionen des DBMS
Video: Abstürze: Eine Geschichte der Börsenkrisen 2024, Kann
Anonim

Moderne Datenbankmanagementsysteme werden an vielen Standorten eingesetzt, aber nicht jeder weiß, was sie sind und wie man die Funktionen des DBMS nutzen kann. Solche Tools haben eine Vielzahl von Möglichkeiten, um sie also vollständig nutzen zu können, sollten Sie verstehen, was sie können und wie nützlich sie für den Benutzer sind.

Datenverw altung

Zunächst umfassen die Funktionen des DBMS die Verarbeitung von Informationen im externen Speicher, und diese Funktion soll die grundlegenden Strukturen des VIs bereitstellen, die nicht nur zum Speichern von Informationen benötigt werden, die direkt in der Datenbank enth alten sind, sondern auch um verschiedene Serviceaufgaben auszuführen, z. B. um in verschiedenen Fällen beschleunigten Zugriff auf beliebige Dateien zu erh alten. Bei bestimmten Modifikationen werden die Fähigkeiten verschiedener Dateisysteme aktiv genutzt, während andere sogar auf der Ebene externer Speichergeräte arbeiten. Allerdings ist in diesem Fall anzumerken, dass der Benutzer in der Funktion eines hochentwickelten DBMS ohnehin nicht darüber informiert wird, ob ein System verwendet wird und wenn ja, wie die Dateien organisiert sind. Insbesondere verw altet das System seine eigene Namensreihenfolge für Objekte, die in der Datenbank enth alten sind.

subd-Funktionen
subd-Funktionen

RAM-Pufferverw altung

In den allermeisten Fällen ist es üblich, DBMS-Funktionen in ziemlich großen Datenbanken zu verwenden, und diese Größe ist zumindest oft viel größer als der verfügbare Arbeitsspeicher. Wenn beim Zugriff auf jedes Datenelement ein Austausch mit externem Speicher durchgeführt wird, entspricht die Geschwindigkeit des letzteren natürlich der Geschwindigkeit des Systems selbst, daher ist praktisch die einzige Möglichkeit, sie tatsächlich zu erhöhen, zu puffern Informationen im RAM. Selbst wenn das Betriebssystem systemweite Pufferung durchführt, beispielsweise mit UNIX, wird dies darüber hinaus nicht ausreichen, um dem DBMS den Zweck und die Grundfunktionen bereitzustellen, da es eine viel größere Menge an Daten über die vorteilhaften Eigenschaften der Pufferung für jede hat bestimmten Teil der verwendeten Datenbank. Aus diesem Grund unterh alten fortschrittliche Systeme ihre eigenen Puffersätze sowie eine einzigartige Disziplin für deren Ersetzung.

Es ist erwähnenswert, dass es eine separate Richtung der Kontrollsysteme gibt, die sich auf die kontinuierliche Präsenz der gesamten Datenbank im RAM konzentriert. Diese Richtung basiert auf der Annahme, dass in naher Zukunft der Arbeitsspeicher in Computern so stark erweitert werden kann, dass sie sich nicht mehr um Pufferung kümmern müssen, und die Grundfunktionen dieser Art von DBMS werden sich hier als nützlich erweisen. Im Moment befinden sich alle diese Arbeiten noch in der Testphase.

Transaktionsverw altung

Eine Transaktion ist eine Abfolge von Operationen mit der verwendeten Datenbank, die das Verw altungssystem als betrachtetein einziges Ganzes. Wenn die Transaktion vollständig erfolgreich ausgeführt wird, behebt das System die Änderungen, die es im externen Speicher vorgenommen hat, oder keine dieser Änderungen wirkt sich auf den Zustand der Datenbank aus. Dieser Vorgang ist erforderlich, um die logische Integrität der verwendeten Datenbank aufrechtzuerh alten. Es ist erwähnenswert, dass die Aufrechterh altung des korrekten Ablaufs des Transaktionsmechanismus eine Voraussetzung ist, auch wenn Einzelbenutzer-DBMS verwendet werden, deren Zweck und Funktionen sich erheblich von anderen Arten von Systemen unterscheiden.

Hauptfunktionen von subd
Hauptfunktionen von subd

Die Eigenschaft, dass jede Transaktion nur gestartet wird, wenn sich die Datenbank in einem konsistenten Zustand befindet, und sie nach dem Ende des Vorgangs in demselben Zustand belässt, macht es äußerst bequem, sie als Aktivitätseinheit für die Datenbank zu verwenden. Bei richtiger Verw altung der gleichzeitig ausgeführten Transaktionen durch das Steuerungssystem kann sich jeder einzelne Benutzer im Prinzip als Teil des Ganzen fühlen. Allerdings handelt es sich dabei teilweise um eine idealisierte Darstellung, da in vielen Situationen der Berufstätigen die Präsenz der Kollegen bei Nutzung eines Mehrplatzsystems noch spürbar sein wird, dies aber auch von der eigentlichen Konzeption eines DBMS vorgesehen ist. Die Funktionen des Mehrbenutzer-DBMS beziehen sich auch auf Konzepte wie den seriellen Ausführungsplan und die Serialisierung auf das Transaktionsmanagement.

Was bedeuten sie?

Die Serialisierung gleichzeitig ausgeführter Transaktionen sieht die Erstellung eines speziellen Plans für ihre Arbeit vor, in demdie erzielte Gesamtwirkung der Mischung entspricht dem Ergebnis, das aufgrund ihrer sequentiellen Ausführung erzielt wird.

Ein serieller Ausführungsplan ist eine bestimmte Struktur von Aktionen, die zur Serialisierung führen. Wenn es dem System gelingt, eine wirklich serielle Ausführung einer Mischung von Transaktionen bereitzustellen, ist die Anwesenheit anderer Benutzer natürlich für jeden Benutzer, der eine Transaktion initiiert, völlig unmerklich, außer dass es im Vergleich zum Einzelbenutzer etwas langsamer arbeitet Modus.

Anzahl grundlegender subd-Funktionen
Anzahl grundlegender subd-Funktionen

Es gibt mehrere grundlegende Serialisierungsalgorithmen. In zentralisierten Systemen basieren die heute gängigsten Algorithmen auf Synchronisationserfassungen verschiedener Datenbankobjekte. Bei Verwendung beliebiger Serialisierungsalgorithmen besteht die Möglichkeit von Konflikten zwischen zwei oder mehreren Transaktionen beim Zugriff auf bestimmte Datenbankobjekte. In einer solchen Situation ist es zur Unterstützung dieses Verfahrens erforderlich, ein Rollback durchzuführen, d. h. alle Änderungen zu beseitigen, die durch einen oder mehrere Prozesse an der Datenbank vorgenommen wurden. Dies ist nur eine der Situationen, in denen eine Person die Anwesenheit anderer in einem Mehrbenutzersystem spürt.

Journaling

Eine der Hauptanforderungen an moderne Systeme ist die Gewährleistung der Zuverlässigkeit der Informationsspeicherung im externen Speicher. Insbesondere sieht dies vor, dass zu den Hauptfunktionen des DBMS die Fähigkeit gehört, die zuletzt vereinbarten Daten wiederherzustellenden Zustand der Datenbank, nachdem ein Software- oder Hardwarefehler aufgetreten ist. In den allermeisten Fällen ist es üblich, zwei Optionen für Hardwarefehler in Betracht zu ziehen:

  • soft, was als unerwartetes Herunterfahren des Computers interpretiert werden kann (der häufigste Fall ist ein Notstromausfall);
  • hard, die durch teilweisen oder vollständigen Verlust von auf externen Medien gespeicherten Daten gekennzeichnet sind.

Beispiele für Softwarefehler sind der Absturz des Systems beim Versuch, eine Funktion zu verwenden, die nicht zu den Hauptfunktionen des DBMS gehört, oder der Absturz eines Benutzerdienstprogramms, wodurch eine bestimmte Transaktion nicht abgeschlossen werden konnte. Erstere Situation kann als spezielle Art von Soft Failure angesehen werden, während letztere eine Wiederherstellung einer einzelnen Transaktion erfordert.

untergeordneter Zweck und Hauptfunktionen
untergeordneter Zweck und Hauptfunktionen

Um die Datenbank normal wiederherzustellen, benötigen Sie natürlich in jedem Fall eine gewisse Menge an zusätzlichen Informationen. Mit anderen Worten, für die normale Aufrechterh altung der Zuverlässigkeit der Datenspeicherung in der Datenbank ist es notwendig, die Redundanz der Informationsspeicherung sicherzustellen, und der Teil der Daten, der während der Wiederherstellung verwendet wird, muss besonders sorgfältig geschützt werden. Die gebräuchlichste Methode zur Pflege dieser redundanten Daten ist die Protokollierung von Änderungen.

Was ist das und wie wird es verwendet?

Das Log ist ein besonderer Teil der Datenbank, accessdie nicht in der Anzahl der DBMS-Funktionen enth alten ist und sehr sorgfältig unterstützt wird. In einigen Situationen werden sogar zwei Kopien des Protokolls gleichzeitig unterstützt, die sich auf verschiedenen physischen Medien befinden. Diese Repositories erh alten Informationen über alle Änderungen, die im Hauptteil der Datenbank auftreten, und in verschiedenen Verw altungssystemen können Änderungen auf verschiedenen Ebenen protokolliert werden. In einigen Situationen entspricht ein Protokolleintrag vollständig einer bestimmten logischen Aktualisierungsoperation, in anderen - einer minimalen internen Operation, die mit der Aktualisierung einer externen Speicherseite verbunden ist, während einige DBMS eine Kombination der beiden Ansätze vorsehen.

In jedem Fall wird die sogenannte "Write Ahead"-Protokollierungsstrategie verwendet. Wenn es angewendet wird, tritt ein Datensatz, der eine Änderung an beliebigen Datenbankobjekten anzeigt, in den externen Protokollspeicher ein, bevor das Objekt geändert wird. Es ist bekannt, dass, wenn die Funktionen des Access-DBMS die normale Implementierung dieses Protokolls vorsehen, die Verwendung des Protokolls alle Probleme löst, die mit der Wiederherstellung der Datenbank im Falle eines Fehlers verbunden sind.

Zurücksetzen

Die einfachste Wiederherstellungssituation ist ein Einzeltransaktions-Rollback. Für dieses Verfahren müssen Sie kein systemweites Änderungsprotokoll verwenden, und es reicht völlig aus, ein lokales Änderungsprotokoll für jede Transaktion zu verwenden und dann die Transaktionen rückgängig zu machen, indem Sie umgekehrte Operationen ausführen, beginnend am Ende jeder Transaktion die Aufzeichnungen. Die Struktur einer DBMS-Funktion sieht oft vordie Verwendung eben einer solchen Struktur, aber in den meisten Fällen werden lokale Logs immer noch nicht unterstützt, und es wird ein individueller Rollback auch für einzelne Transaktionen nach dem systemweiten durchgeführt, und dazu werden alle Aufzeichnungen jeder der Transaktionen zusammengefasst in einer umgekehrten Liste.

das Konzept der subd-Funktion subd
das Konzept der subd-Funktion subd

Während eines weichen Fehlers kann der externe Speicher der Datenbank verschiedene Objekte enth alten, die durch Transaktionen geändert wurden, die zum Zeitpunkt des Fehlers nicht abgeschlossen waren, und es können auch verschiedene Objekte fehlen, die von erfolgreich abgeschlossenen Transaktionen aktualisiert wurden vor dem Ausfall durch die Verwendung von RAM-Puffer, deren Inh alt vollständig verschwindet, wenn solche Probleme auftreten. Wenn das Protokoll zur Verwendung lokaler Protokolle befolgt wird, gibt es zwangsläufig Einträge im externen Speicher, die sich auf die Änderung solcher Objekte beziehen.

Das Hauptziel der Wiederherstellungsprozedur nach dem Auftreten von Soft Failures ist ein solcher Zustand des externen Speichers der Hauptdatenbank, der eintreten würde, wenn Änderungen an abgeschlossenen Transaktionen im VI festgeschrieben würden und keine Spuren enth alten würden von unvollendeten Verfahren. Um diesen Effekt zu erzielen, sind die Hauptfunktionen des DBMS in diesem Fall das Zurücksetzen unvollständiger Transaktionen und das Wiedergeben derjenigen Operationen, deren Ergebnisse nicht schließlich im externen Speicher angezeigt wurden. Dieser Prozess beinh altet eine ziemlich große Anzahl von Feinheiten, die sich hauptsächlich auf die Organisation der Protokoll- und Pufferverw altung beziehen.

Harte Fehler

Wenn eine Datenbank nach einem harten Ausfall wiederhergestellt werden muss, wird nicht nur das Protokoll verwendet, sondern auch eine Sicherungskopie der Datenbank. Letzteres ist eine vollständige Kopie der Datenbank zu dem Zeitpunkt, als das Füllen des Protokolls begann. Natürlich ist für eine normale Wiederherstellungsprozedur die Aufbewahrung des Journals erforderlich, daher werden, wie zuvor erwähnt, äußerst ernsthafte Anforderungen an seine Aufbewahrung in einem externen Speicher gestellt. Die Wiederherstellung der Datenbank besteht in diesem Fall darin, dass das Protokoll anhand der Archivkopie alle Transaktionen wiedergibt, die zum Zeitpunkt des Ausfalls abgeschlossen wurden. Falls erforderlich, kann es sogar anstehende Transaktionen wiedergeben und ihren normalen Betrieb nach dem Ende der Wiederherstellungsprozedur fortsetzen, aber in den meisten realen Systemen wird diese Prozedur nicht durchgeführt, da die Wiederherstellung nach einem harten Ausfall selbst eine ziemlich langwierige Prozedur ist.

Sprachunterstützung

Moderne Datenbanken verwenden eine Vielzahl von Sprachen, und frühe DBMSs, deren Zweck, Funktionen und andere Merkmale sich erheblich von modernen Systemen unterschieden, boten Unterstützung für mehrere hochspezialisierte Sprachen. Im Grunde waren dies SDL und DML, die entwickelt wurden, um das Datenbankschema zu definieren bzw. Daten zu manipulieren.

subd Funktionsstruktur
subd Funktionsstruktur

SDL wurde verwendet, um die logische Struktur der Datenbank zu bestimmen, dh um die spezifische Struktur der Datenbank zu erkennen, die dargestellt wirdBenutzer. DML hingegen enthielt einen ganzen Komplex von Operatoren zur Informationsmanipulation, mit denen Sie Informationen in die Datenbank eingeben sowie vorhandene Daten löschen, ändern oder verwenden konnten.

Die DBMS-Funktionen umfassen verschiedene Arten der Unterstützung für eine einzige integrierte Sprache, die das Vorhandensein aller für die normale Arbeit mit Datenbanken erforderlichen Mittel, beginnend mit ihrer ursprünglichen Erstellung, und die Bereitstellung einer standardisierten Benutzeroberfläche vorsieht. SQL wird als Standardsprache verwendet, die die Grundfunktionen des DBMS der heute gängigsten relationalen Systeme bereitstellt.

Was ist das?

Zunächst kombiniert diese Sprache die Hauptfunktionen von DML und SDL, dh sie bietet die Möglichkeit, die spezifische Semantik einer relationalen Datenbank zu bestimmen und die erforderlichen Informationen zu manipulieren. Gleichzeitig wird die Benennung verschiedener Datenbankobjekte direkt auf Sprachebene in dem Sinne unterstützt, dass der Compiler Objektnamen in ihre internen Bezeichner umwandelt, basierend auf speziell gepflegten Dienstkatalogtabellen. Der Kern von Steuerungssystemen interagiert grundsätzlich in keiner Weise mit Tabellen oder deren einzelnen Sp alten.

nicht in den Hauptfunktionen des subd enth alten
nicht in den Hauptfunktionen des subd enth alten

Die SQL-Sprache enthält eine ganze Liste spezieller Tools, mit denen Sie die Einschränkungen für die Integrität der Datenbank bestimmen können. Wiederum werden solche Beschränkungen in spezielle Katalogtabellen aufgenommen, und die Integritätskontrolle wird direkt auf der Sprachebene durchgeführt, das heißtBeim Lesen einzelner Datenbank-Änderungsanweisungen generiert der Compiler anhand der Integritätsbedingungen in der Datenbank den entsprechenden Programmcode.

Empfohlen: