OLTP oder Online Transaction Processing ist eine Art der Datenverarbeitung, bei der mehrere Transaktionen gleichzeitig ausgeführt werden – beispielsweise Online-Banking, Einkaufen, Auftragserfassung oder das Versenden von Textnachrichten. Diese Transaktionen werden traditionell als Wirtschafts- oder Finanztransaktionen bezeichnet, die aufgezeichnet und gesichert werden, sodass ein Unternehmen zu Buchhaltungs- oder Reportingzwecken jederzeit auf diese Informationen zugreifen kann.
In der Vergangenheit war OLTP auf reale Interaktionen beschränkt, bei denen etwas ausgetauscht wurde – Geld, Produkte, Informationen, Serviceanfragen usw. Jedoch hat sich in diesem Zusammenhang die Definition von Transaktion im Laufe der Jahre, insbesondere seit dem Aufkommen des Internets, erweitert, um jede Art von digitaler Interaktion oder Interaktion mit einem Unternehmen zu umfassen, was von überall auf der Welt und über jeden mit dem Internet verbundenen Sensor ausgelöst werden kann. Dazu gehören auch jegliche Arten von Interaktionen oder Aktionen wie das Herunterladen von PDFs auf einer Webseite, das Anzeigen eines bestimmten Videos oder automatische Wartungsauslöser oder Kommentare auf sozialen Kanälen, deren Aufzeichnung für ein Unternehmen eventuell wichtig ist, um einen besseren Kundenservice bereitzustellen.
Die primäre Definition für Transaktionen – wirtschaftlich oder finanziell – bleibt die Grundlage für die meisten OLTP-Systeme, sodass die Online-Transaktionsverarbeitung typischerweise das Einfügen, Aktualisieren und/oder Löschen kleiner Datenmengen in einem Datenspeicher umfasst, um diese Transaktionen zu erfassen, zu verwalten und zu sichern. In der Regel verfolgt eine Web-, Mobil- oder Unternehmensanwendung all diese Interaktionen oder Transaktionen mit Kunden, Lieferanten oder Partnern und aktualisiert sie in der OLTP-Datenbank. Diese in der Datenbank gespeicherten Transaktionsdaten sind für Unternehmen von entscheidender Bedeutung und werden für das Reporting verwendet oder analysiert, um sie für die datengesteuerte Entscheidungsfindung einzusetzen.
Lesen Sie wie andere Unternehmen, wie Retraced, Archaeological Park of Pompeii, Jasci oder Siemens, ihre Transaktionsverarbeitungs-Workloads in der Cloud erfolgreich erstellen konnten.
Unternehmen verfügen normalerweise über zwei Arten von Datenverarbeitungsfunktionen: OLTP und OLAP.
Obwohl sie ähnlich klingen und beide Online-Datenverarbeitungssysteme sind, gibt es dennoch einen großen Unterschied zwischen den beiden.
OLTP ermöglicht die Echtzeitausführung einer großen Anzahl von Transaktionen durch eine große Anzahl von Personen, während Online Analytical Processing (OLAP) normalerweise die Abfrage dieser Transaktionen (auch als Aufzeichnungen bezeichnet) in einer Datenbank zu Analysezwecken umfasst. Mit OLAP können Unternehmen Erkenntnisse aus ihren Transaktionsdaten gewinnen, damit sie diese für fundiertere Entscheidungen nutzen können.
Die nachstehende Tabelle zeigt einen Vergleich zwischen OLTP- und OLAP-Systemen.
OLTP-Systeme |
OLAP-Systeme |
Ermöglichen die Echtzeitausführung einer großen Anzahl von Datenbanktransaktionen durch eine große Anzahl von Personen. |
In der Regel werden viele Datensätze (auch alle Datensätze) in einer Datenbank zu Analysezwecken abgefragt. |
Erfordern blitzschnelle Reaktionszeiten. |
Erfordern Antwortzeiten, die um Größenordnungen langsamer sind, als die von OLTP benötigten. |
Ändern häufig kleine Datenmengen und beinhalten in der Regel ein ausgewogenes Verhältnis zwischen Lese- und Schreibvorgängen. |
Ändern überhaupt keine Daten; Workloads sind in der Regel leseintensiv. |
Verwenden indizierte Daten, um die Antwortzeiten zu verbessern. |
Speichern Daten im Spaltenformat, um einen einfachen Zugriff auf eine große Anzahl von Datensätzen zu ermöglichen |
Erfordern häufige oder zeitgleiche Datenbank-Backups. |
Erfordern weitaus weniger regelmäßige Datenbank-Backups. |
Benötigen relativ wenig Speicherplatz. |
Sie haben in der Regel einen erheblichen Speicherplatzbedarf, da sie große Mengen an historischen Daten speichern. |
Führen in der Regel einfache Abfragen mit nur einem oder wenigen Datensätzen aus. |
Führen komplexe Abfragen mit zahlreichen Datensätzen aus. |
OLTP ist also ein Online-Datenänderungssystem, während OLAP ein Online-Speichersystem für historische mehrdimensionale Daten ist, mit dem große Datenmengen für Analysezwecke abgerufen werden können. OLAP bietet für gewöhnlich Analysen zu Daten, die von einem oder mehreren OLTP-Systemen erfasst wurden.
Die gängigste Architektur eines OLTP-Systems, das Transaktionsdaten verwendet, ist eine 3-Ebenen-Architektur, die typischerweise aus einer Präsentationsebene, einer Geschäftslogikebene und einer Datenspeicherebene besteht. Die Präsentationsebene ist das Frontend, wo die Transaktion durch eine menschliche Interaktion entsteht oder vom System generiert wird. Die Logikebene besteht wiederum aus Regeln, die die Transaktion verifizieren und sicherstellen, dass alle zum Abschluss der Transaktion erforderlichen Daten zur Verfügung stehen. Und in der Datenspeicherebene werden die Transaktion und alle zugehörigen Daten gespeichert.
Die Hauptmerkmale eines Online-Transaktionsverarbeitungssystems sind wie folgt:
Relationale Datenbanken wurden speziell für Transaktionsanwendungen ausgelegt. Sie verkörpern alle wesentlichen Elemente, die zum Speichern und Verarbeiten großer Transaktionsmengen erforderlich sind, und werden außerdem kontinuierlich mit neuen Features und Funktionen aktualisiert, um mehr Wert aus diesen reichen Transaktionsdaten zu schöpfen. Relationale Datenbanken sind von Grund auf so konzipiert, dass sie die höchstmögliche Verfügbarkeit und schnellste Performance bieten. Sie bieten Nebenläufigkeits- und ACID-Compliance, sodass die Daten genau, immer verfügbar und leicht zugänglich sind. Außerdem speichern sie Daten in Tabellen, nachdem sie die Beziehungen zwischen den Daten extrahiert haben, sodass die Daten von jeder Anwendung verwendet werden können und eine „Single Source of Truth“ sichergestellt wird.
Während Transaktionen immer komplexer wurden und aus beliebigen Quellen oder Geräten von überall auf der Welt stammten, waren herkömmliche relationale Datenbanken nicht fortschrittlich genug, um den Anforderungen moderner Transaktions-Workflows gerecht zu werden. Sie mussten sich weiterentwickeln, um die modernen Transaktionen, heterogene Daten und die globale Skalierung zu bewältigen und vor allem gemischte Workloads auszuführen. Relationale Datenbanken wurden in multimodale Datenbanken transformiert, in denen nicht nur relationale Daten, sondern auch alle anderen Datentypen, einschließlich XML, HTML, JSON, Apache Avro und Parquet, und Dokumente in ihrer nativen Form gespeichert und verarbeitet werden, ohne dass eine große Transformation erforderlich ist. Außerdem mussten relationale Datenbanken mehr Funktionen, wie Clustering und Sharding, hinzufügen, damit sie global verteilt und unbegrenzt skaliert werden konnten, um immer größere Datenmengen zu speichern und zu verarbeiten und den günstigeren Speicher zu nutzen, der in der Cloud verfügbar ist. Mit anderen Funktionen wie In-Memory, erweiterten Analysen, Visualisierung und Warteschlangen für Transaktionsereignisse können diese Datenbanken jetzt mehrere Workloads ausführen – z. B. Transaktionsdaten analysieren oder Streaming-Daten (Internet of Things [IoT]) verarbeiten bzw. räumliche und grafische Analysen ausführen.
Moderne relationale Datenbanken, die in der Cloud erstellt wurden, automatisieren viele Verwaltungs- und Betriebsaspekte der Datenbank, wodurch sie für Benutzer einfacher bereitzustellen und zu nutzen sind. Sie bieten automatisierte Bereitstellung, Sicherheit, Wiederherstellung, Backup und Skalierung, wodurch Datenbankadministratoren und IT-Teams viel weniger Zeit für ihre Pflege aufwenden müssen. Außerdem integrieren sie Intelligenz, um die Daten automatisch zu optimieren und zu indizieren, sodass die Performance der Datenbankabfrage unabhängig von der Datenmenge, der Anzahl gleichzeitiger Benutzer oder der Komplexität der Abfragen konsistent ist. Auch Selfservice-Funktionen und REST-APIs gehören zu den Bestandteilen dieser Cloud-Datenbank, um Entwicklern und Analysten einen einfachen Zugriff auf die Daten und deren Verwendung zu ermöglichen. Dies vereinfacht die Anwendungsentwicklung, gibt Flexibilität und erleichtert es Entwicklern, neue Funktionen und Anpassungen in ihre Anwendungen zu integrieren. Zudem wird auch noch die Analyse vereinfacht und Analysten und Data Scientists können somit die Daten leichter zum Extrahieren von Erkenntnissen verwenden.
Da die IT Schwierigkeiten hat, mit der Geschwindigkeit des Geschäfts Schritt zu halten, ist es wichtig, dass Sie bei der Auswahl einer betriebsbereiten Datenbank Ihre unmittelbaren und langfristigen Datenanforderungen berücksichtigen. Für die Speicherung von Transaktionen, die Verwaltung von Aufzeichnungssystemen oder das Contentmanagement benötigen Sie eine Datenbank mit hoher Gleichzeitigkeit, hohem Durchsatz, geringer Latenz und unternehmenskritischen Merkmalen wie High Availability, Datenschutz und Disaster Recovery. Höchstwahrscheinlich schwankt Ihr Workload im Laufe des Tages, der Woche oder des Jahres. Wenn Sie also sicherstellen, dass die Datenbank automatisch skaliert werden kann, können Sie eine Menge Kosten sparen. Möglicherweise müssen Sie sich auch entscheiden, ob Sie eine speziell erstellte Datenbank oder eine Allzweckdatenbank verwenden wollen. Wenn Sie eine bestimmte Art von Daten benötigen, kann eine speziell entwickelte Datenbank für Sie funktionieren. Stellen Sie jedoch sicher, dass Sie die anderen erforderlichen Eigenschaften, nicht beeinträchtigen. Dies wäre ein kostspieliges und ressourcenintensives Unterfangen, falls Sie diese Eigenschaften später auf der Anwendungsebene einrichten müssten. Wenn Ihre Datenanforderungen wachsen und Sie die Funktionalität Ihrer Anwendung erweitern wollen, werden durch das Hinzufügen weiterer Einzelzweck- oder zweckdienlicher Datenbanken nur Datensilos erzeugt und die Probleme beim Datenmanagement häufen sich. Außerdem müssen Sie auch andere Funktionen berücksichtigen, die für Ihren spezifischen Workload erforderlich sein können, z. B. Aufnahmeanforderungen, Pushdown-Compute-Anforderungen und Größenbegrenzungen.
Wählen Sie einen zukunftssicheren Cloud-Datenbankservice mit Selfservice-Funktionen, der das gesamte Datenmanagement automatisiert, sodass Ihre Daten-Consumer – Entwickler, Analysten, Dateningenieure, Data Scientists und DBAs – mehr mit den Daten erreichen und die Anwendungsentwicklung beschleunigen können.
Erfahren Sie mehr über Autonomous Transaction Processing Database von Oracle, den Cloud-OLTP-Datenbankservice. Kostenlos testen.