Hybrid embedded database merges on-disk and in-memory data managementLooking to keep one step ahead in the increasingly competitive embedded database market, McObject has released eXtremeDB Fusion, which combines the strengths of on-disk and all-in-memory embedded system data management.
According to McObject Co-founder and CEO Steve Graves, traditional on-disk databases cache frequently requested data in memory, but write all database updates, insertions and deletes through the cache to be stored on disk.
In contrast, in-memory database systems (IMDSs), such as McObject, eliminate disk access and store data in main memory, sending data to the hard disk only when specified by the application. IMDSs' all-in-memory data storage means they are very fast, and their streamlined design reduces RAM and CPU demands.
"However, on-disk database systems can bring advantages to an application," said Graves." Some developers prefer the guaranteed persistence of automatic disk storage, and byte-for-byte, disk storage can be cheaper than memory. Disk storage can also take less physical space: RAM chips can't yet approach the density of an 80GB micro-drive, for example. So for small form-factor devices with large storage needs, such 'spinning memory. might be preferred.
McObject's eXtremeDB Fusion, he said, is an attempt to marry the two approaches, producing a hybrid database for resource-constrained and high performance systems. It will allow a developer to 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 on-disk storage for other record types, requires a simple database schema declaration," said Graves.
The resulting application retains in-memory strengths (speed, small database footprint, intuitive native API, etc.), while potentially leveraging the cost savings and built-in durability of an on-disk database.
eXtremeDB Fusion's on-disk features are uniquely configurable, including (1) three levels of transaction logging, to meet the target system's footprint, performance and durability needs; (2) developer-specified maximum database size, which is especially important when the 'disk' is actually a flash memory file system; (3) ability to save and re-use database cache across sessions—so a user can resume some activity when a device is switched back on, for example; and (4) physical implementation of the database in just one file, to simplify maintenance, limit I/O and reduce size.
eXtremeDB Fusion will be sold alongside eXtremeDB and will be available in High Availability, SQL and 64-bit editions, Graves said. Like eXtremeDB, eXtremeDB Fusion is available for many operating systems and with source code for porting to additional platforms.