RDM Server

RDM Server

Infobox_Software
name = RDM Server

caption =
developer = Birdstep Technology, Inc
latest_release_version = 8.1
operating_system = Cross-platform
genre = DBMS
license = Commercial license
website = [http://www.raima.com Raima Database Manager]

RDM Server is ACID-compliant client/server embedded database system designed for both disk based and in-memory embedded systems and applications.

History

Raima Corporation, established in Renton, Washington in 1982, started working on the db_Vista product, envisioning a high performance, zero administration embedded database. db_Vista was first released in 1984, and by 1988 its third major release was out. It was later renamed to Raima Database Manager, or RDM.

The product grew in popularity, and in order to keep pace with the rising client-server architecture Raima released Velocis, a client-server version of RDM, in 1993. Velocis was later renamed RDM Server.

Raima was acquired by Centura Software Corporation in 1999. Centura Software decided to launch an open source version of RDM Embedded, called db.*, in 2000. Under Linux the db.* product was named db.linux. In 2001 Birdstep Technology ASA, a Norwegian based company, acquired the Raima assets and has since made 3 major releases of RDM Server.

Technical features

Data Models

The product offers various different data models. The network data model manages relationships between data objects through list of pointers called sets. The network model is defined to allow very flexible relationships between objects making it perfect to structuring complex data relationships. If you think of a hierarchical structure with parent-child relationships, the network model allows for the same structure except there is no limitation on the number of parents a child has nor how many children a certain parent has between objects. This allows for extremely efficient modeling of data graphs and data hierarchies. The relational data model manages relationships between data objects through value matching, and usually primary key/foreign keys. Relationships are limited to include two record types compared to the network model where no limitation is imposed. RDM Server allows for mixing both the network model and relational model in the same database definition giving the application vendor full flexibility.

Indexes

RDM Server supports regular B-tree based indexes. An index can contain a single or multiple segments. In addition, it supports optional indexes where the application controls the index population.

Architecture

The architecture is client-server, with the ability to run in a heterogeneous environment. The database server sub-system can be linked directly with an application, removing the need for client-server communication and operating system context switching, and allowing for high performing database operations.

Active and passive replication is also available, maintaining an identical copy of a master database for application failover. The sub-system implements an asynchronous single master multi slave replication engine based on its supporting client-server transports (including TCP/IP).

Data Storage

Databases can be disk resident, or memory resident. In the first case, all access to disk resident structures (both data or data index information), happens through an in-memory data cache maintained by the database server sub-system. Alternatively, the application can define database structures to reside in-memory. An application can also define a database with mixed disk based or memory resident data structures. The data definition language of the engine supports mixing different storage types for any data structure.

Data Integrity

The ACID transaction model is used to ensure data integrity, and reliability, ensuring that the database image is always in a readable and non-corrupt state. However, the application can relax some of the properties to increase performance. Both table and row level locks are implemented, and can be controlled by the application to manage concurrent access to any database. Dirty-read isolation level is also supported.

API and Development Languages

The native C API is an extensive library functions for all database operations. Timestamps, concurrence control, transaction control, database configuration, data navigation, and data changes are supported. A native C administration API is an extensive library functions for all database administration operations such as login, backup, defragmentation, consistency checks etc. A SQL API is implemented as a SAG CLI interface giving access to the supported SQL92 standard. All these APIs are available as part of the client libraries or as part of the server libraries in application linked mode. Moreover, RDM Server has full support for ODBC v3.51, JDBC v3 and v4 through a Java type 4 implementation, ADO.Net and even PHP. RDM Server therefore supports C, C++, and JAVA applications.

Data Types

RDM Server supports for the following native data types: signed and unsigned char; signed and unsigned int16; signed and unsigned int32; signed and unsigned int64; w_char_t (Unicode); float; double; DB_ADDR (Internal database address); BLOB (binary large objects); BCD (Binary Coded Decimal); date; time; timestamp. In addition it has native support for structs and multi-dimensional arrays based on the above list of base types.

It also supports the following SQL data types: char; varchar; long varchar; smallint; integer; bigint; wchar (Unicode); wvarchar; long wvarchar; float; double; real; decimal/numeric; date; time; timestamp; rowid; binary; varbianary; long varbinary; c_data (read access to native array and struct data types).

Transaction Logging

The product implements a fully ACID compliant transaction logging system with automatic recovery capability. An application vendor can hook into the transaction system and do its own real-time transaction logging for any purpose. This facility is also used for asynchronous replication.

Extension Modules

RDM Server has a pluggable sub-system to allow the application vendor to add their own business logic to the database server sub-system. The extension modules logic gives the system the ability to act as an application server in addition to being a high-performing embedded database engine.

Supported Platforms

The product is available both as object code and as source code, and it is currently supported on most 32- and 64- bit enterprise and RTOS operating systems Fact|date=January 2008.

Examples of Applications

*HP - OpenView Data Protector
*Johnson & Johnson - Vitros Product Line
*Cognos - Business Intelligence Software Suite
*Lockheed Martin - Test Stands and F2 Flight Simulator

External links

* [http://www.raima.com/ Raima Database Managers]
* [http://www.raima.com/products/rdm-server/ RDM Server Product Page]

Articles

* [http://www.embedded-computing.com/articles/id/?2569 Why not to use the relational data model]


Wikimedia Foundation. 2010.

Игры ⚽ Поможем сделать НИР

Look at other dictionaries:

  • RDM Embedded — Infobox Software name = RDM Embedded caption = developer = Birdstep Technology, Inc latest release version = 8.1 operating system = Cross platform genre = DBMS license = Commercial license website = [http://www.raima.com/ Raima Database Manager]… …   Wikipedia

  • RDM Corporation — Infobox Company company name = RDM Corporation company type = Public [http://www.google.ca/search?q=rdm ie=utf 8 oe=utf 8 aq=t rls=org.mozilla:en US:official client=firefox a] company slogan = Revolutionize the Way you Process Check Payments… …   Wikipedia

  • Comparison of relational database management systems — Programming language comparisons General comparison Basic syntax Basic instructions Arrays Associative arrays String operations …   Wikipedia

  • Raima — Infobox Company name = Raima Corporation type = Public foundation = 1982 location city = Seattle, Washington location country = U.S. location = industry = Database products = *RDM Embedded *RDM Server * [http://www.raima.com/products/rdm mobile/… …   Wikipedia

  • Embedded database — An embedded database system is a DBMS that is tightly integrated with an application that requires access to stored data, such that the database system is “hidden” from the application’s end user and requires little or no ongoing maintenance. It… …   Wikipedia

  • List of software products — This is a list of software by genre, operating system, and type of licensing. Contents 1 Office 1.1 Office suites 1.2 Word processors 1.3 Database management systems …   Wikipedia

  • Список СУБД —   Это служебный список статей, созданный для координации работ по развитию темы.   Данное предупреждение не устанавливается на информационные списки и глоссарии …   Википедия

  • In-memory database — An in memory database (IMDB; also main memory database system or MMDB) is a database management system that primarily relies on main memory for computer data storage. It is contrasted with database management systems which employ a disk storage… …   Wikipedia

  • Network model — For computer network models, see network topology, packet generation model and channel model. The network model is a database model conceived as a flexible way of representing objects and their relationships. Its distinguishing feature is that… …   Wikipedia

  • Zune — This article is about the digital media brand. For the AROS widget toolkit, see Zune (widget toolkit). Zune Manufacturer Microsoft Release date …   Wikipedia

Share the article and excerpts

Direct link
Do a right-click on the link above
and select “Copy Link”