Follow us:
RDM Embedded
The efficient embedded database for embedded systems and applications



Embedded Database Overview
RDM Embedded Edition is a high-performance, embedded database management system optimized for the operating systems commonly used within the embedded market.
It is ideal for standalone applications such as those found in industrial automation controllers or automobile infotainment systems. Multiple APIs provide developers with a multitude of programming options and functionality. However, developers can only compile in what they need in order to keep the application footprint minimal for these traditionally resource constrained devices.
RDM Embedded’s SQL has been designed for embedded systems applications. As such, it provides a subset of the ANSI/ISO standard SQL that is suitable for running on a wide variety of computers and operating systems, many of which have limited computing capabilities.
The ACID compliant database engine supports B-tree and hash indexes; the B-tree indices can support simple and/or compound keys. Additionally the embedded database engine has been developed to fully utilize multi-core processors, run within minimal memory, and support both in-memory and on-disk storage. Implemented as a linkable library the database is allowed to become an embedded part of your applications.
The Plus package includes extra features for optimal performance.
New Feature: Performance Benchmarks and Database Functionality Tutorials
Our Database Performance Popcorn Samples let you test in-memory, on-disk performance and other configurations within your app’s environment. You can also view quick database tutorials that show you how to configure different features within our database. Each sample takes less than 5 minutes.
Performance Driven Features
Efficiently allocate transaction processing to take advantage of multi-core systems for optimal speed.
Implement read-only-transactions where a virtual snapshot of your embedded database is readable until the read-only-transaction is terminated by the task, even if it is being concurrently updated. Avoid read locks to improve multi-user performance.
Configure your database to run completely on-disk, completely in-memory, or a hybrid of both; combining the speed of an in-memory database and the stability of on-disk in a single system.
Use B-Trees or Hash Indexes on tables. Hashing on large volumes often provides faster access to data than b-tree indexing methods. Hashing enhances speed by using buckets to store the index information.
RDM Embedded Technical Specifications
Database
- Maximum Databases Open Simultaneously: No Limit
- Maximum Records Per Database: No Limit
- Maximum Size of Database File: Limited only by file system
- Maximum Tables Per Database: No Limit
- Maximum Records Per Table: No Limit
- Maximum Record Size: 32 kb (excluding BLOB or VARCHAR)
- Maximum Fields Per Table: No Limit
- Maximum Keys Per Database: No Limit
- Maximum Size of Keys: 242 bytes
- RAM Requirements: User configurable, minimum 50 kilo bytes
- Code Footprint: Starting at ~270 kb, depending on OS and database features
Modes of Operation
- Standalone
- Application Linked
Data Types Supported
- BLOBs
- Character
- Widechar
- Varchar
- DBADDR (ROWID)
- Floating Point – 32bit and 64bit
- Integer – 8bit, 16bit, 32bit and 64bit
- C struct
Additional SQL Data Types:
- Binary
- Date
- Decimal
- Time
- Timestamp
- Unicode
Multiple APIs: for Enhanced Usability
-
Navigational C API
For well over 25 years developers have been using RDM’s low-level C API of over 200 intuitive easy to use functions provides application developers with ultimate control of the embedded database.
-
Comprehensive SQL API
RDM’s SQL is accessed internally through an easy-to-use API designed by Raima. This non-standard API is simpler than ODBC. In fact, our ODBC API is based on this one.
-
Standards Based ODBC API
Following the ODBC standards Raima developed the ODBC API to provide developers with a familiar way to utilize the power of the RDM database engine.
-
Object Oriented C++ API
The C++ API was designed with ease of use as its primary requirement while still providing developers with full access and control to both RDM’s network and relational functionality.
Data Sheets, Whitepapers and Other Resources
-
array(49,7), ‘orderby’ => ‘title’, ‘order’ => ‘ASC’, ‘posts_per_page’ => ‘-1′ ) ); ?>
- Online Documentation
- Additional Whitepapers and Resources
$pwppdf = jch_get_post_pdf(); ?>
Supported Operating Systems
Target Platform
Target |
Host |
|||||||
|---|---|---|---|---|---|---|---|---|
| Version | Hardware | Platform | Version | Hardware | Compiler | Version | Object Code | Source Code |
| 6.5 | Cortex A9 (ARM) | Windows | 7 | x86 (32 bit) | Visual Studio 2010 | 10 | Yes | Yes |
| 6.5 | Simulator | Windows | 7 | x86 (32 bit) | Visual Studio 2010 | 10 | Yes | Yes |
Target |
Host |
|||||||
|---|---|---|---|---|---|---|---|---|
| Version | Hardware | Platform | Version | Hardware | Compiler | Version | Object Code | Source Code |
| 6.5 | Cortex A9 (ARM) | Linux | 6.5 | x86 (32 bit) | qcc | No | Yes | |
| 6.5 | Cortex A8 (ARM) | Windows | 6.5 | x86 (32 bit) | qcc | No | Yes | |
Target |
Host |
|||||||
|---|---|---|---|---|---|---|---|---|
| Version | Hardware | Platform | Version | Hardware | Compiler | Version | Object Code | Source Code |
| 6.5 | x86 (32 bit) | Windows | 6.5 | x86 (32 bit) | qcc | No | Yes | |
| 6.5 | Cortex A9 (ARM) | Windows | 6.5 | x86 (32 bit) | qcc | No | Yes | |
| 6.5 | Cortex A9 (ARM) | Linux | 6.5 | x86 (32 bit) | qcc | No | Yes | |
| 6.5 | Cortex A8 (ARM) | Windows | 6.5 | x86 (32 bit) | qcc | No | Yes | |
| 6.5 | Cortex A8 (ARM) | Linux | 6.5 | x86 (32 bit) | qcc | No | Yes | |
Target |
Host |
|||||||||||||||||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Version | Hardware | Platform | Version | Hardware | Compiler | Version | Object Code | Source Code | 5.0.10 | Cortex A9 (ARM) | Linux | x86 (32 bit) | GHS MULTI | 5 | No | Yes | ||||||||||
| 5.0.10 | Cortex A9 (ARM) | Windows | x86 (32 bit) | GHS MULTI | 5 | No | Yes | |||||||||||||||||||
| 5.0.10 | Cortex A8 (ARM) | Linux | x86 (32 bit) | GHS MULTI | 5 | No | Yes | |||||||||||||||||||
| 5.0.10 | Cortex A8 (ARM) | Windows | x86 (32 bit) | GHS MULTI | 5 | No | Yes | |||||||||||||||||||
Target |
Host |
|||||||
|---|---|---|---|---|---|---|---|---|
| Version | Hardware | Platform | Version | Hardware | Compiler | Version | Object Code | Source Code |
| 6.9 | x86 (32 bit) | Windows | x86 (32 bit) | No | Yes | |||
| 6.9 | x86 (32 bit) | Linux | x86 (32 bit) | No | Yes | |||
Additional Functionality
Easily achieve true horizontal scaling across clustered or distributed systems without the need to re-write of your application.
Connect any application to one or more databases and query them as if it is a single instance. Perform global, locally or across a network, to multiple database instances with no regard for where the data is located.
Create applications that replicate data between different databases on different systems, on the same system, in memory and on disk. Asynchronously replicate your data between different database instances, schemas, and systems. Allows developers to create a heavily indexed persistent query database while capturing data through a non-indexed in-memory database.
The automated database schema translator seamlessly transforms data from native RDM to SQL enabling effortless data flow into the enterprise. The result is the ability to combine near real-time critical operational data with other data sources to provide the complete information to make more intelligent business decisions at any level of your organization.
Data redundancy without sacrificing performance! Master-Slave mirroring introduces data redundancy by automatically mirroring the application database locally or across a network.
Designed for carrier grade systems the new mirroring engine is designed to remove any single point of a failure in your fault-tolerant system.
API Functionality
For well over 25 years developers have been using RDM’s low-level C API of over 200 intuitive easy to use functions provides application developers with ultimate control of the database.
RDM’s SQL is accessed internally through an easy-to-use API designed by Raima. This non-standard API is simpler than ODBC. In fact, our ODBC API is based on this one.
Following the ODBC standards Raima developed the ODBC API to provide developers with a familiar way to utilize the power of the RDM database engine.
The C++ API was designed with ease of use as its primary requirement while still providing developers with full access and control to both RDM’s network and relational functionality.
Modes of Operation
- Standalone
- Client/Server
- Application Linked
- Mixed Execution Mode
+1.206.748.5300

