Zum Inhalt springen

RDM-Architektur

Die flexible Architektur von RDMs bietet Ihnen eine Vielzahl von Konfigurationen. Verwenden Sie RDM in einer Client / Server- oder Peer-to-Peer-Anwendung (eingebettet) auf nahezu jeder Hardware- und Softwarekombination. RDM kann den Speicher als Hauptspeichermedium voll ausnutzen und persistente Daten können auf der Festplatte gespeichert werden.

Client-Server-eingebettet

Ein tieferer Tauchgang

 

Die Laufzeitumgebung von RDM besteht aus zwei leistungsstarken, aber genau definierten Modulen:

  1. Die Laufzeitbibliothek - Diese wiedereintrittsfähige verknüpfbare Bibliothek wird Teil Ihres ausführbaren Programms. Es verwaltet einen Cache mit Datenbankobjekten, wenn es auf Funktionsaufrufe von Ihrem Programm reagiert.
  2. Der Transaktionsdateiserver - Dieser enge Mehrbenutzerserver interagiert gleichzeitig mit einer oder mehreren Laufzeitbibliotheken. Es verwaltet den Zugriff auf Datenbankdateien. Das TFS reagiert auf Laufzeitanforderungen zum Lesen von Objekten, zum Sperren von Objekten oder zum Anwenden von Transaktionsänderungen.

Laufzeitbibliothek

Als wiedereintretende Bibliothek unterstützt RDM Multithread-Anwendungen vollständig. Jeder Thread kann eine Datenbank öffnen und gleichzeitig mit den anderen bearbeiten.

Als verknüpfbare Bibliothek verarbeitet RDM Daten, die in einem Heap-basierten Cache gespeichert sind. Die robusten APIs bieten Ihnen vollständige Transparenz und Kontrolle über die Daten. SQL ist über eine C-basierte API verfügbar, kann aber auch über Tools von Drittanbietern aufgerufen werden. Andere APIs ermöglichen die Feinabstimmung von Datenbankoperationen mithilfe einer Cursoransicht oder einer objektorientierten Ansicht.

Transaktionsdateiserver

Das TFS ist im Kern eine Funktionsbibliothek. Diese Funktionen werden von der Laufzeitbibliothek aufgerufen. Wenn das TFS in einem separaten Prozess ausgeführt wird, werden seine Funktionen als RPCs (Remote Procedure Calls) unter Verwendung von TCP / IP zwischen Computern und gemeinsam genutztem Speicher auf demselben Computer aufgerufen.

Die TFS-Funktionen können jedoch auch direkt mit Ihrer Anwendung verknüpft werden. Dies hat erhebliche Leistungsvorteile und eine einfache Bedienung. Dies ist schneller, da die Remoteprozeduraufrufe zu lokalen Prozeduraufrufen (in Bearbeitung) werden. Es ist einfacher, weil alles in Ihrem Programm ausgeführt wird und es keinen separaten Prozess gibt, der zuerst gestartet werden muss.

Konfigurationen

Ja, die Runtime Library und TFS sind leistungsstark und gut definiert, können jedoch auf verschiedene Arten konfiguriert werden. Die folgenden Abbildungen zeigen nur einige.

Multi-Computer-Konfiguration - erstaunlich schnell

Wenn mehrere Computer beteiligt sind, kommunizieren sie über TCP / IP. Wenn sich Client und Server stattdessen auf demselben Computer befinden, wird der gemeinsam genutzte Speicher verwendet, um die Geschwindigkeit zu erhöhen.

Multi-Computer-Datenbank-Konfiguration

Multi-Thread-Einzelcomputerkonfiguration - noch schneller

Wenn sich Laufzeit und TFS jedoch im selben Prozess befinden, wird die Kommunikation zwischen Prozessen vermieden, was zu einer noch höheren Geschwindigkeit führt.

Multithread-Anwendungen eignen sich hervorragend für die Verwaltung mehrerer Fenster auf einem Bildschirm mit jeweils unabhängigem Inhalt.

Multi-Thread-Single-Computer

Single-Thread (exklusiver Zugriff) - Schneller als das!

Einfachere Einzelbenutzeranwendungen haben den Vorteil, dass kein gleichzeitiger Zugriff auf die Datenbank erfolgt und daher nicht gesperrt oder gewartet wird.

Single-Thread- (exklusiver Zugriff)

Single-Thread-In-Memory-Datenbank - die absolut schnellste

Laden Sie nun die Datenbank von der Festplatte in den Speicher und Sie haben die Datenbankverwaltung mit allen Stopps.

Die speicherinterne RDM-Datenbankoption ermöglicht flüchtige (sie verschwindet, wenn die Anwendung beendet wird) und persistente (von der Festplatte geladen und auf der Festplatte gespeichert) Datenbanken.

Dies ist schneller, da beim Lesen keine Transaktionslatenz auftritt und während eines Transaktions-Commits nicht auf das Schreiben der Festplatte gewartet wird.

Diese sind anfällig für Datenverlust, wenn die Anwendung beendet wird, ohne die Daten zu speichern. Manchmal lohnt es sich, ein Risiko einzugehen!

Single-Thread- (Exklusivzugriff) -In-Memory-Datenbank