Raima Database Manager

Gebina Feuermann April 7, 2016 R 6 0
FONT SIZE:
fontsize_dec
fontsize_inc

Raima Database Manager ist ein geringer Platzbedarf, hohe Leistung, ACID-kompatible eingebettete Datenbank-Management-System für den Einsatz in Embedded Systems Anwendungen entwickelt. RDM wurde entwickelt, um Multi-Core-Computer, Netzwerkbetrieb und auf der Festplatte oder im Arbeitsspeicher Speicher-Management zu nutzen. RDM bietet Unterstützung für mehrere Anwendungsprogrammierschnittstellen: Low-Level-API C, C ++ und SQL. RDM ist sehr portabel und ist für Windows, Linux, Unix und mehrere Echtzeit oder Embedded-Betriebssystemen zur Verfügung. Ein Sourcecode-Lizenz ist ebenfalls verfügbar.

RDM bietet Unterstützung sowohl für Nicht-SQL und SQL-Datenbank-Design und Bearbeitungsfunktionen. Die Nicht-SQL-Funktionen sind wichtig für die ressourcenbeschränkte Embedded-System-Umgebungen, in denen hohe Leistung in einem sehr geringen Platzbedarf ist die Priorität. SQL ist bei der Bereitstellung einer weithin bekannten Standarddatenbankzugriffsmethode noch in einem kleinen genug Stellfläche für die meisten Embedded-Systems-Umgebungen wichtig.

Geschichte

Raima Inc.originally veröffentlicht RDM im Jahr 1984 und wurde db_VISTA genannt. Es war eines der ersten Mikrocomputer-Netzwerkmodell-Datenbank-Management-Systeme ausschließlich für die Verwendung mit der Sprache C-Anwendungen konzipiert. Ein Begleiter Produkt namens db_query wurde im Jahr 1986 eingeführt, die die erste SQL-ähnliche Abfragen und Berichterstellung Dienstprogramm für ein Netzwerk-Modell-Datenbank war.

Ein db_VISTA derivative DBMS entwickelt, um eine hohe Leistung, die so genannte Transaktionsverarbeitung Client-Server SQL DBMS Raima Database Server bieten in 1993.Diese frei war das erste DBMS, die eine ODBC-API als natives SQL-Schnittstelle zur Verfügung gestellt. Es war auch die erste SQL-System, das die Verwendung des Netzwerkmodells inits DDL Features eingebaut. Bald danach wurde RDS Velocis und 2001, RDM Server umbenannt. Version 8.4 von RDM Server wurde im Jahr 2012 veröffentlicht.

Ununterbrochene Entwicklung von RDM hat sich weiter, wo die neuesten Feature hinzugekommen sind die Datenbankspiegelung Einsatz zur Unterstützung der hochverfügbaren Systeme, Datenbankreplikation, Multi-Version Concurrency mit Nur-Lese-Transaktionen, mehrere Transaktionsdateiserver-Zugriff, Verschlüsselung und eine SQL speziell für Einsatz in Embedded Systemen Anwendungen. Version 12.0 von RDM wurde im Jahr 2013 veröffentlicht.

Auch im Jahr 2013, RDM eingeführt der erste, On-Plattform SQL DBMS für die Verwendung mit National Instruments zur Verfügung "grafischen Programmiersprache LabVIEW und erhielt den Namen der National Instruments 'LabView Embedded-Tools Netzwerk-Produkt des Jahres.

Produkt-Eigenschaften

Datenbank-Design-Sprache

Nicht-SQL-DDL-Eigenschaften:

  • C-Struktur-ähnliche Datensatztyp-Deklarationen.
  • Netzwerkmodell gesetzt Erklärungen zur Definition 1-viele Interaufzeichnungs Beziehungen.
  • Unterstützung für direkte, B-Baum, und gehasht Rekordzugang.
  • In-Memory-Datenbank oder Datei-Deklarationen. Eine Datenbank kann entworfen werden, um entweder auf der Festplatte oder im Speicher oder ein Hybrid sein, wobei einige Teile befinden sich im Speicher, während andere auf dem Datenträger gespeichert.
  • Circular Satzarten. Circular Tabellen speichern Sie eine vom Benutzer festgelegten maximalen Anzahl von Datensätzen. Wenn das Maximum erreicht ist, werden neu eingefügten Datensätze in der Lage von der älteste besetzte gespeichert. Runden Tischen sind wichtig für die Speicherung von Statusdaten zur Ressourcenbeschränkung Geräte.
  • Unterstützte Datentypen: 8, 16, 32, und 64-Bit mit oder ohne Vorzeichen Integer, float, double, dezimal, feste oder variable Länge Zeichen oder Breitzeichen, binären oder Zeichen große Objekte, Datum, Uhrzeit, Zeitstempel, GUID / UUID und db_addr.
  • Unterstützung für die Struktur und Array-Datenfelder.
  • Optional benutzer Kontrolle über Datenbank-Datei Organisation und Seitengrößen.

SQL-DDL-Eigenschaften:

  • Erklärte der referenziellen Integrität Unterstützung automatisch mit RDM-Netzwerk-Modell-Sets umgesetzt.
  • Unterstützung für direkte, B-Baum, und Hash-Zeilenzugriff.
  • In-Memory-Datenbank oder eines Tabellendeklarationen.
  • Runden Tischen.
  • Virtuelle Tabellen Deklarationen, die SQL-Zugriff auf externe Datenquellen zur Verfügung.
  • Unterstützte Datentypen: boolean, tinyint, smallint, integer, BIGINT, DECIMAL real, float / double, Binär / varbinary, lang varbinary, char / varchar, wchar / wvarchar, LONG VARCHAR langen wvarchar, Datum, Uhrzeit, Zeitstempel, guid / uuid, rowid.
  • Domain-Anmeldungen.

Transactional File Server

Die RDM Transactional File Server ist spezialisiert auf die Portion und Verwalten von Datenbankdateien auf einem bestimmten Medium. Das TFS ist eine Reihe von Funktionen, die von der RDM-Laufzeit aufgerufen, um die gemeinsame Nutzung von Datenbankdateien unter einem oder mehreren Laufzeitbibliothek-Instanzen zu verwalten. In einem normalen Mehrbenutzer-Konfiguration werden die TFS-Funktionen in einem Server-Prozeß genannt TFServer gewickelt. Standard TCP / IP verwendet werden, um die Verbindung herzustellen, ob die Laufzeitbibliothek und TFServer sind auf dem gleichen Rechner oder verschiedenen Rechnern werden. Wenn auf demselben Computer schneller ist jedoch Shared-Memory-Protokoll standardmäßig verfügbar.

Die Abbildung zeigt, dass eine RDM Client-Laufzeit kann Verbindungen zu mehreren TFServers haben, und man TFServer kann durch mehrere Client-Laufzeitumgebungen verwendet werden. Zu den Anwendungen, die die RDM-Laufzeit und die TFServers, sind die Standorte der anderen Prozesse unsichtbar, so dass alle Prozesse auf einem Computer sein, oder alle auf verschiedenen Computern zu sein. Dies bietet Chancen für echte verteilte Verarbeitung.

Ein TFServer sollte als eine "Datenbank-Controller" in der gleichen Weise wie ein Disk-Controller steuert ein Speichergerät. Ein TFS ist mit einem Root-Verzeichnis, in dem alle Dateien von der TFS verwalteten gespeicherten initialisiert. Wenn einer der Computer über mehrere Plattensteuerungen, ist es empfehlenswert, daß man TFServer jedem Controller zugeordnet werden. Dies erleichtert die Parallelität auf einem Computer, vor allem, wenn mehrere CPU-Kerne sind ebenfalls vorhanden.

Eine vollständige Bewerbung System kann mehrere TFServers müssen auf einem Computer läuft, und mehrere Computer miteinander vernetzt. Jedes TFServer in der Lage, parallel zu den anderen verlaufen, so dass die Leistung entsprechend zu skalieren.

Die TFS-Funktionen werden durch den RDM-Laufzeit verwendet wird, so muss der Programmierer keine Sichtbarkeit der Anrufe an ihnen vorgenommen. Diese Funktionen sind in der Laufzeitbibliothek in drei Formen hergestellt. Für beschreibenden Gründen, wir nennen sie TFSr, TFST und TFSs:

  • TFST: Die tatsächliche, voll funktions TFS Funktionen direkt von der Laufzeitbibliothek aufgerufen. Unterstützt mehrere Themen in einer einzigen Anwendung.
  • TFSr: Der RPC-Bibliothek. Wenn sie von der Laufzeitbibliothek aufgerufen, diese Funktionen zu verbinden, um eine oder mehrere TFServer Prozesse und rufen Sie die TFS-Funktionen in ihnen. Ein Client / Server-Konfiguration.
  • TFSs: "Standalone" TFS-Funktionen direkt von der Laufzeitbibliothek aufgerufen, aber nur für Single-Prozess Gebrauch bestimmt. Um für Hochdurchsatz-Batch-Operationen verwendet werden, während die Datenbank sonst offline. Unsichere Updates erlaubt sind.

Database Unions

RDM Datenbank union-Funktion bietet eine einheitliche Sicht auf mehrere identisch aufgebaute Datenbanken. Seit RDM ermöglicht hochgradig verteilten Datenspeicherung und -verarbeitung, bietet diese Funktion einen Mechanismus für die Vereinheitlichung der verteilten Daten, die ihr das Aussehen eines einzelnen, großen Datenbank.

Als einfaches Beispiel betrachten wir eine weit verbreitete Datenbank für eine Organisation, die ihren Hauptsitz in Seattle, und Niederlassungen in Boston, London und Mumbai. Jedes Büro besitzt und unterhält Mitarbeiterdaten vor Ort, aber das Hauptquartier führt auch die Berichterstattung über die gesamte Organisation. Die Datenbank an jeder Stelle eine Struktur hat, mit den anderen identisch, und obwohl es sich um ein allumfassendes Datenbank an jeder Position wird auch als eine Teilung der größeren globalen Datenbank. In diesem Fall wird die Aufteilung auf die geographische Lage. Der Mechanismus für die Abfrage einer zentralen Datenbank ist einfach für den Programmierer. Wenn die Datenbank geöffnet wird, werden alle Partitionen gemeinsam Bezug genommen wird, mit oder Symbole zwischen den einzelnen Partitionsnamen.

Partitionierung und einheitliche Abfragen werden auch zur Skalierung der Leistung verwendet. Betrachten Sie eine Datenbank, in der jede Operation beginnt mit einer Abfrage von Primärschlüssel einer Aufzeichnung. Wenn die "Datenbank" wird von vier Partitionen zusammengesetzt, die jeweils auf dem gleichen Multi-Core-Computer gespeichert, aber auf verschiedenen Festplatten von verschiedenen Festplatten-Controller gesteuert wird dann die einzige Voraussetzung ist ein Schema, das den Primärschlüssel unter den vier Partitionen unterteilt. Wenn das Schema ist ein Modulo des Primärschlüssels, bestimmt dann die Anwendung schnell, welche Partition, um einen Datensatz in speichern oder lesen Sie den Datensatz aus. Da gibt es mehrere CPU-Kerne, die mehrere Prozesse laufen, und die vier Partitionen parallel zugegriffen werden kann, ist die Verarbeitungskapazität viermal größer als mit einem Single-Core-Single-Disk und Einzelpartitionskonfiguration.

Datenbankverschlüsselung

RDM ermöglicht alle Datenbankinhalte zu verschlüsselt, bevor sie über das Netzwerk transportiert wird und die Datenbankdateien geschrieben werden. RDM-Verschlüsselung unterstützt den Rijndael / AES-Verschlüsselungsalgorithmus mit 128, 192 oder 256 Bit-Schlüssel auf der Grundlage eines Antrags festgelegten Schlüssel.

Datenbankspiegelung und HA-Support

Datenbankspiegelung in RDM reproduziert eine exakte, Byte-für-Byte-Kopie einer Master-Datenbank auf die gespiegelte Datenbank. Die Datenbankspiegelung ist eine wichtige Datenbank-Funktion für Anwendungen, die eine hohe Verfügbarkeit, wo sollte ein TFServer irgendeinem Grund fehlschlägt benötigen, dann HA-Monitor der Anwendung kann automatisch umgeschaltet werden, um die gespiegelte TFServer.

RDM bietet synchrone Spiegelung, wo jede Transaktion, die auf dem Master TFServer begangen wird, wird auch sicher am Spiegel TFServer verpflichtet. RDM auch bietet eine Reihe HA Support-API-Funktionen, die von HA-Monitor der Anwendung aufgerufen werden kann, um den Betriebszustand der TFServers überwachen.

Mirroring kann auch verwendet werden, um die Aufrechterhaltung unterstützen mehrere Kopien einer Datenbank, in der Updates nur an den Master, um viele mögliche Datenbank Leser über mehrere Computer verteilt gemacht, aber die Leser zu einer der gespiegelten Sklaven gerichtet. In dieser Situation ist es nicht erforderlich, dass der Master für jeden Slave warten, um zu bestätigen, ein erfolgreicher begehen jeder Transaktion und der Spiegelungsprozess asynchron laufen.

RDM Datenbankspiegelung erfordert, dass der Master und alle gespiegelten Datenbanken auf demselben Computer / Betriebssystem-Plattformen beibehalten werden.

Datenbankreplikation

Replication ist ähnlich wie Mirroring, aber es nicht wirklich für HA-Unterstützung, aber für die Übertragung aller oder, was wahrscheinlicher ist, Teile von einer Datenbank in eine andere Datenbank vorgesehen. Replication ist entworfen, um zu arbeiten, wo die Datenbanken werden nicht unbedingt auf der gleichen Plattform gehalten. Die Slave-Datenbanken kann anderen RDM verwalteten Datenbanken oder sie können eine 3rd-Party-DBMS sein.

RDM Die Replikation bietet Unterstützung für mehrere Master zu Single-Slave selektive Replikation von Kreistabellendaten wichtig für Embedded-Computer und Geräte an der Kante des Datengitters in dem Status und Zustandsüberwachung auftritt. Die in jedem Master-Rundtisch gespeicherten Statusdaten an eine zentrale Steuersysteme, die eine dauerhafte Geschichte aller Gerätezustände, die dann für eine Vielzahl von Zeitreihen und anderen Analysen zur Verfügung gestellt werden können, unterhält repliziert.

RDM stellt auch ein Datenbankänderungsbenachrichtigung API-Bibliothek, die ein Slave an den Master-Replikationsprotokolle ohne die gespeicherten Daten zugreifen und in einer Datenbank verwaltet werden können. Dies ermöglicht zum Beispiel eine Master-Gerätesteuerung Informationen in einer Datenbank, die dem Gerät durch die Benachrichtigungs API, um Gerätebetrieb effizient zu steuern repliziert speichern.

SQL

RDM SQL wurde speziell für den Einsatz in Embedded Systems Anwendungen entwickelt. Einige der wichtigeren Merkmale der RDM SQL sind:

  • Geringer Platzbedarf keine SQL-Ansichten oder Sicherheit, da diese vorgesehen sind in der Regel in eingebetteten Systemen Anwendungen unnötig und ihre Abwesenheit hilft, um die SQL-Fußabdruck klein zu halten.
  • Standard-SQL-Transaktion und der referenziellen Integrität Unterstützung.
  • Die SQL-Systemkatalog und gespeicherte Prozeduren können in einer Datei gespeichert oder als statisch deklariert Datenstrukturen in C-Module.
  • Kostenbasierte Abfrageoptimierung mit einem umfangreichen Satz von eingebauten skalaren und Aggregatfunktionen. Eine Vielzahl von Tabellenzugriffsmethoden sind vom Optimierer für die Prüfung zur Verfügung: die direkte Zeilenzugang, eine optimale Primär- / Fremdschlüssel beitreten Zugriff über Netzwerk-Modell-Sets, B-Baum und Hash-Indizes.
  • Fähigkeit, SQL-Funktionen durch C-basierte benutzerdefinierte Skalar und Aggregatfunktionen zu erweitern.
  • Fähigkeit, SQL-Funktionen durch C-basierten benutzerdefinierten virtuellen Tabelle Schnittstellen, die SQL-Zugriff auf externe Datenquellen wie beispielsweise Echtzeit-Sensordaten liefern zu verlängern.
  • Datenbanktabelle Import / Export von / nach kommagetrennte oder XML-Dateien.
  • Fähigkeit, den Zugriff von SQL in einer Nicht-SQL-Datenbank nur gelesen werden können. Dies bedeutet beispielsweise, dass ein Fern RDM SQL Anwendung eine Nicht-SQL RDM Datenbank aktiv auf einem sehr ressourcenbeschränkten Vorrichtung zuzugreifen.

Application Programming Interfaces

RDM bietet Anwendungsprogrammierschnittstellen, die Entwicklung von Anwendungen in einer Vielzahl von Programmiersprachen zu ermöglichen:

  • Core API RDM die Low-Level, Rekord-orientierte, Navigations-C-API. Zwei Zugriffsmethoden werden unterstützt. Die Währung Modell ermöglicht dem Programmierer die vollständige Kontrolle darüber, wie Treffer-Datensätze werden über die Netzwerkmodell Sätze abgerufen. Der Cursor-Modell verwendet werden, das die Netzwerkmodell die Navigation innerhalb eines Cursors kapselt, Plattenzugriff Programmierung erheblich vereinfacht.
  • C ++ API verwendet Methoden, die von der RDM Nicht-SQL-DDL-Spezifikation erstellt wurden.
  • Native SQL C-API Ähnlich wie die ODBC-API, aber speziell für RDM SQL so konzipiert, dass es sowohl effizienter und einfacher zu bedienen.
  • Die ODBC Open Database Connectivity-API für C-Programm Zugriff auf RDM SQL. RDM-Implementierung nicht die Verwendung der ODBC-Treibermanager, außer wenn sie von einem 3rd-Party-ODBC-Tool erforderlich erforderlich.
  • JDBC Die Java Database Connectivity-API für Java-Programm Zugriff auf RDM SQL.
  • ADO.NET Microsoft's.NET API für alle MS-Windows-Programm Zugriff auf RDM SQL.
  • LabView von National Instruments grafische Programmiersprache API, um RDM SQL.

Neben den obigen Datenbankmanipulations APIs stellt RDM auch eine Vielzahl von Stütz APIs, die zur Verwendung durch RDM Anwendungen verfügbar sind. Zwei von Bedeutung sind:

  • Nicht-C-Datentyp Manipulation API ermöglicht den Zugriff auf alle der BCD-Arithmetik-Funktionen sowie eine breite Palette an Funktionen für die Manipulation von Datum, Zeit und Zeitstempel-Datenwerte.
  • Platform Support Package API bietet Zugriff auf die Betriebssystem-unabhängige Funktionen von RDM selbst einschließlich verwendet: Speicherverwaltung, Thread-Management und Synchronisation Primitiven.

Unterstützte Plattformen

RDM hat zu einer großen Vielfalt von Computern und Betriebssystemen portiert. Pakete sind für die folgenden Plattformen verfügbar:

  • MS Windows 32, 64-Bit-
  • Linux 32, 64-Bit-
  • Androide
  • QNX Neutrino ARM / x86 / PPC 32-Bit-
  • Wind River VxWorks
  • Green Hills Integrität
  • Mac OS X 64-Bit-
  • HPUX PA-RISC / Itanium 32, 64-Bit-
  • Solaris SPARC / x86 32, 64-Bit-
  • AIX PPC 32, 64 bit.
  • iOS

RDM Packages

RDM besteht aus den Paketen RDM Mobile Edition, RDM Mobile Plus Edition RDM Embedded Edition, RDM Embedded Plus Edition, RDM Workgroup Edition und RDM Workgroup Plus Edition für die verschiedenen Umgebungen. RDM Mobile Edition ist ein Datenbankmanagementsystem für ein Smartphone oder Tablet-Gerät. RDM Embedded Edition ist ein Datenbankmanagementsystem für eingebettete Geräte. RDM Workgroup Edition ist ein Datenbankmanagementsystem für Desktop- und Serverumgebungen. Die Plus-Versionen enthalten zusätzliche Funktionen wie Mirroring und Replikation.

Kunden und Anwendungen

RDM-basierte Anwendungen sind heute in allen wichtigen Branchen wie Luft- und Raumfahrt & amp verwendet; Defense, Automotive, Business Automation, Finanzen, Regierung, Industrie-Automation, Medizin, Informatik und Telekommunikation. Eine Auswahl der RDM-Benutzer beinhaltet folgende Leistungen:

  • Mitsubishi Electric iQ Platform C Controller PLC
  • Schneider Electric "ezXOS" in OASYS DNA-Produkt
  • Hydro-Québec CEDA System zu Einrichtung und Konfiguration der Macht plantalternators verwalten
  • General Dynamics "TIEF" - Tactical Information Exchange Capability-Datenbank-Agent
  • Boeing "AWACS" - Airborne Warning and Radarelektronik Kontrollsystem.
  • Raytheon Low-Level-taktischen Flugprofil-Management in Pave Hawk
  • Lockheed Martin Flugsimulatoren
  • Benu Networks Broadband Service Delivery Platform
  • Johnson & amp; Johnson VITROS Patienten Systeme
  • Beckman Coulter UniCel DxC 800 Synchron klinischen Systems
  • Siemens Rapidpoint 400 medizinische Flüssigkeit Prüfgeräte
  • IBM Clearcase-Quellcodeverwaltungssystem
  • Magellan Navigation GPS MAPSEND in PC-basierte und Embedded-Produkten verwendet
  • NSE zuverlässigen Vorrat Handelsdatenspeicherung
  • NCDEX Echtzeit-Datenbankdienste für den Handel Anwendung
  Like 0   Dislike 0
Vorherige Artikel Steve Bing
Nächster Artikel Superkey
Bemerkungen (0)
Keine Kommentare

Fügen Sie einen Kommentar

smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile smile smile smile smile
smile smile smile smile
Zeichen übrig: 3000
captcha