Hybrid Database Management System
- ️Wed Jan 08 2025
For hard real-time systems
eXtremeDB makes it easy to combine all the strengths of the on-disk and all-in-memory approaches to data management in a single database system.
This unparalleled flexibility enables developers to tailor data management in order to optimize applications for speed and persistence, while taking advantage of the most cost-effective and physical space-conserving approaches to data storage.
In-memory database systems (IMDSs) such as McObject’s eXtremeDB offer superior performance and the possibility of very small RAM, CPU and storage demands. IMDSs (or RAM databases) boost speed and reduce footprint by eliminating logical and physical disk I/O, multiple data copies, and irrelevant tasks, such as caching. The eXtremeDB In-Memory Database System also includes a transaction logging module to persist in-memory databases. An in-memory database with transaction logging retains the high performance read characteristics and provides tune-able persistence while retaining much of the in-memory database insert/update/delete performance advantage.
In contrast, on-disk databases cache frequently requested data in memory, for faster access, but write database updates, insertions and deletes through the cache to be stored to disk. On the plus side, byte-for-byte, disk storage can be cheaper than RAM, and can also take less physical space.
The best of both worlds: a hybrid database management system.
eXtremeDB enables the developer to easily combine both database paradigms – in-memory and on-disk – in a single database instance. Specifying one set of data as transient (managed in memory), while choosing persistent storage for other record types, requires a simple database schema declaration, as shown below.
transient class classname {
[fields]
};
persistent class classname {
[fields]
};
The resulting embedded database system retains in-memory strengths (speed, small database footprint, intuitive native API, etc.), yet leverages the potential cost savings and increased durability of an on-disk database.
Platform independence
eXtremeDB is designed and implemented to be highly portable, and is available for a long list of operating systems. McObject provides source code for porting to additional environments. Currently, eXtremeDB runs on Win32 and Win64 platforms, Linux, many Unix platforms, and various embedded operating systems including VxWorks, INTEGRITY and QNX, and target CPUs including x86, PowerPC, ARM, MIPS, and others. The list of supported platforms is constantly expanding.
eXtremeDB is our core database management system. The following modules are also available:
eXtremeDB High Availability (HA) and Cluster
“High Availability” means a database survives the failure of its software or hardware environment. Based on a rugged, time-cognizant, two-phase commit protocol, eXtremeDB HA enables deployment of two or more synchronized hybrid databases within separate hardware instances using communication channels implemented over standard or proprietary protocols.
eXtremeSQL
With eXtremeSQL, McObject offers a high performance implementation of the popular SQL database programming language for use with eXtremeDB. eXtremeSQL provides broad coverage of the SQL-89 standard, plus eXtremeDB-specific extensions including support for nearly all eXtremeDB data and query types.
Related Resources
I
Watch What Makes a Database System ‘In-Memory’?
Join McObject CEO Steve Graves to explore this topic, including the limitations (and burden) of database caching; data transfer and duplication; volatility and recoverability, and more. Gain ideas and techniques for building better, faster software.
I
Watch Eliminating Database Corruption
Why corruption occurs and provides strategies to prevent it, focusing on hidden dangers – like storage device settings that can undermine data consistency – as well as more recognizable risks, such as passing wrongly typed data to a database run-time.
White Papers for Professional Developers
We have been testing, improving on, and retesting our software from the beginning in 2001 in order to provide our clients with the best possible data management solutions. Read “Database Persistence, Without The Performance Penalty” and more.
Review our research
White paper: Database Persistence, Without The Performance Penalty
Some applications require higher data durability than in-memory storage provides. What if DRAM could be made persistent? AgigA Tech’s AGIGARAM non-volatile DIMM (NVDIMM) delivers that capability. McObject benchmarked the eXtremeDB In-Memory Database System using AGIGARAM as storage, including “pulling the plug” mid-execution, and comparing the NVDIMM to transaction logging as a solution for data durability/recoverability. This paper presents the benchmark tests and results.