eSOL, Empress Software, Inc., (Head Office: Toronto, Canada), and Empress Software Japan Inc. have integrated the Empress Embedded Database with eT-Kernel to provide full database functionality. An evaluation version can be provided as middleware in eSOL eT-Kernel software platform.

Support is also available for eT-Kernel/POSIX, eT-Kernel/Extended, and eT-Kernel/Compact, which were integrated at the same time. 


High-speed database engine
Because it uses an in-process task engine, Empress is an embedded database type that operates in the same memory area as the application. Unlike a client-and-server type database, Empress does not need to communicate with a server, meaning top performance is structurally guaranteed. In addition to this high-speed engine, Empress has tuned up many other elements and has accumulated optimization expertise over many years, enabling them to provide the latest and fastest embedded database engine.

Small footprint
The database engine of the Empress Embedded Database provides functions for the high-speed processing of large amounts of data while maintaining just a small footprint. Supported functions include multiprocessing/multitasking, two-phase transaction and lock function (ACID), power shutoff recovery, non-fragmenting structure, C interface, embedded SQL, ODBC, and JDBC. At the same time, even when memory space is limited, the Empress Embedded Database finds the optimal algorithm with low CPU occupancy to process data at high speed. 

Power shutoff recovery function
A major issue for embedded databases is how to quickly recover the database when the power is turned on again after a shutoff. The high-speed power shutoff recovery of Empress is not performed from backup files. Rather, transactions are released at high speed during restart, and even when there are no transactions, the data, index, headers, and dictionaries in the database are verified to recover the database, making recovery extremely fast and robust.

Embedded transaction and lock function
To maintain the consistency of device data, Empress supports the ACID two-phase transaction and lock function. Isolation levels such as dirty read, read commit, and serialization are used in multiple applications. In the event of a conflict, the application error can be resolved by changing the isolation level. The lock granularity can be selected from table lock, record lock, and page lock, according to the situation.

CRUD real-time and determinism capabilities
"CRUD" means the create, read, update, and delete operations. "Determinism" means that no matter how many times an operation is performed for a database, the result is returned in about the same time, and this is a very important characteristic in the embedded industry. In addition to guaranteeing the real-time capability of the database, Empress also has timeout and cancel functions to guarantee CRUD determinism at a high level.

Structure prevents fragmentation
As write and delete operations are executed repeatedly for the embedded database, continuous data in the database is divided and the speed of data reading and writing is usually reduced. This is called "fragmentation", and defragmentation is required to correct it. Defragmentation is required for the both the memory and the disk. However, the system cannot be used during defragmentation, and if a power shutoff occurs during defragmentation, the risk of data file corruption is extremely high. Therefore, in the embedded industry, an embedded database that does not need defragmentation is required. The structure of the Empress Embedded Database prevents continuous data from being easily divided, delivering a maintenance-free embedded database with minimal deterioration.

Multiprocessing, multitasking function
While Empress is an in-process task engine due to its advanced lock function, it also provides a full multitasking function for multiple users.

Predictable resource utilization
The memory consumed by the Empress database has an upper limit set in the profile. Because the overhead of the data to be used and the disk size of the index is low, the resources to be used can be predicted during design, which enables accurate system design.


The Empress Embedded Database is provided as a component framework to ensure the best performance with the smallest footprint. The component framework is comprised of three layers: the kernel, middleware, and interface layers.

Kernel layer
     •  High-speed, compact database engine
     •  Hybrid (in-memory/on-disk) structure engine
     •  Power shutoff recovery function/non-fragmenting structure
     •  Embedded transaction function
     •  Index (B-tree index, hash index, full-text search index, spatial index, tree data index, filtered index, etc.)
     •  Multiprocessing/multitasking support
Middleware layer
     •  GIS/GPS module
     •  Data replication
     •  Hierarchical data processing
     •  Data encryption, compression, user-defined index
Interface layer
     •  Data recovery API
     •  C/C++ API
     •  Embedded SQL
     •  Embedded network API
     •  ODBC/JDBC access 
Empress eT-Kernel device replication

Empress provides eT-Kernel device replication to link devices containing eT-Kernel to the data of other devices. Features of eT-Kernel replication include the capability to set extremely short intervals for data synchronization, to use as a standalone device in the event communication is disconnected, and to restart replication when communication recovers. Additionally, eT-Kernel device replication has been optimized to an extremely light network load because only the latest differential data is transferred. A wide variety of eT-Kernel replication formats are available, including a function for multiple master setting (Master 1, Master 2) and sequence setting, a function for setting multiple replication routes, and a function for setting differential replication using SQL statements.

Empress eT-Kernel ODBC, JDBC connection 
A function is provided that uses ODBC or JDBC to connect devices containing eT-Kernel with other devices or computers. This is an especially useful function in cases such as generating a graph on a computer in Microsoft Excel by referencing a database in an eT-Kernel device, or when changing the data of a master table in Access.

For more details on the Empress Embedded Database, please refer to the Empress website.

Professional services

eSOL and Empress offer comprehensive professional services based on our experience and know-how.

     • Empress Embedded Database support, porting, customization, and tuning
     • Consultation about the use of embedded databases
     • Porting of other middleware
     • Other subcontracted development, engineer dispatch, etc.