Weiter zu

Was sind Transaktionale Datenbanken?

Transaktionsdatenbanken sind für das Ausführen von Produktionssystemen optimiert – von Websites über Banken bis hin zu Einzelhandelsgeschäften. Solche Datenbanken sind sehr gut darin, einzelne Datenzeilen sehr schnell zu lesen und zu schreiben, wobei die Datenintegrität aufrechterhalten wird.

Transaktionale datenbanken Übersicht

Transaktionale datenbanken sind Zeilenspeicher, das heißt, Daten werden als Zeilen und nicht als Spalten auf dem Laufwerk gespeichert. Zeilenspeicher eignen sich hervorragend, wenn Sie alles über einen Kunden in der Nutzertabelle wissen müssen, da Sie die Möglichkeit haben, nur die Daten zu nehmen, die Sie benötigen. Aber sie eignen sich nicht so gut, wenn Sie die Kunden in einem bestimmten Postleitzahlgebiet zählen wollen, da Sie dann nicht nur die Postleitzahlspalte, sondern auch die Spalten Name, Adresse und user_id laden müssen.

Transaktionale Datenbanken wurden nicht speziell für Analysen entwickelt, aber werden oft zu De-facto-Analyseumgebungen, da sie bereits als Produktionsdatenbanken vorhanden sind. Sie sind schon seit Jahrzehnten bekannt, daher sind sie vertraut, zugänglich und allgegenwärtig.

Falls Ihre Organisation nicht über einen bereits vorhandenen separaten Analysestack verfügt, besteht die schnellste Möglichkeit zum Ausführen von Analysen darin, ein Replikat Ihrer Transaktionsdatenbank zu erstellen. Dadurch wird sichergestellt, dass Analyseabfragen nicht versehentlich geschäftskritische Produktionsabfragen beeinträchtigen und eine minimale zusätzliche Einrichtung erfordern. Der Nachteil ist, dass diese Datenbanken für die Verarbeitung von Transaktionen und nicht für die Analyse entwickelt wurden. Sie für Analysen zu nutzen ist zum Einstieg geeignet. Möglicherweise stoßen Sie jedoch früher als bei einer analysespezifischen Einrichtung auf Einschränkungen und benötigen Problemumgehungen.

Welche Vorteile bieten Transaktionale datenbanken?

Transaktionale datenbanken eignen sich für:

Datenintegrität gewährleisten

Transaktionale datenbanken sind auf ACID-konform ausgelegt. Dadurch wird sichergestellt, dass Schreibvorgänge in der Datenbank entweder gemeinsam erfolgreich sind oder gemeinsam fehlschlagen, und dass die Datenintegrität beim Schreiben von Daten in die Datenbank hoch bleibt. Transaktionale Datenbanken sind daher für Geschäftstransaktionen von entscheidender Bedeutung, wenn eine hohe Datenintegrität erforderlich ist. Das kanonische Beispiel ist das Banking, in dem eine gesamte Transaktion – Abbuchung von einem Konto und Gutschrift auf ein anderes – entweder erfolgreich oder nicht erfolgreich sein soll.

Niedrige Latenz

Da transaktionale Datenbanken für die Ausführung von Produktionssystemen entwickelt wurden, sind sie sehr gut für Vorgänge geeignet, die innerhalb von Millisekunden abgeschlossen werden müssen. Wenn Sie für ein Transaktionsreplikat Ihrer Produktionsdatenbank eine Analyse machen, ist das Replikat wahrscheinlich fast mit der Hauptdatenbank synchronisiert, also mit Latenzen von unter einer Sekunde.

Monitoring von operativer Systeme

Die Verwendung von Daten aus Transaktionalen datenbanken zur Bereitstellung eines operativen Snapshots in Echtzeit ist der ideale analytische Anwendungsfall für transaktionale Datenbanken, da das Replikat so wenig Latenz einbringt. Wenn Sie unterstützende Arbeitslasten oder Inventar oder ein anderes operatives System überwachen möchten und Entscheidungen anhand möglichst neuer Daten treffen müssen, ist die Replikation der Produktionsdatenbank möglicherweise die beste Option.

Was ist eine ACID-Transaktion in der Datenbank?

ACID besteht aus einer Reihe von Attributen, die beschreiben, wie Transaktionale datenbanken so konzipiert sind, dass Integrität von Schreibvorgängen in die Datenbank erhalten bleibt. Im Folgenden sind die Definitionen der einzelnen Attribute aufgeführt:

Atomarität

Wenn auch nur ein Teil der Transaktion fehlschlägt, schlägt die gesamte Transaktion fehl. Entsprechend muss jede Transaktion zu 100 % erfolgreich sein, um erfolgreich in die Datenbank aufgenommen zu werden.

Konsistenz

Eine Transaktion wird entweder in die Datenbank geschrieben (bringt die Datenbank von einem gültigen Zustand in einen anderen) oder die Transaktion wird rückgängig gemacht.

Isolation

Auf Transaktionen, die noch nicht abgeschlossen sind, können von anderen Transaktionen nicht reagiert oder sie geändert werden.

Langlebigkeit

Sobald eine Transaktion in die Datenbank geschrieben wurde, verbleibt sie dort, selbst bei einem Datenbankfehler.