Financial Systems Developers:
If you are looking for a low-latency DBMS for algorithmic trading, quantitative
analysis, order matching or other real-time capital markets solutions, click here.
eXtremeDB Embedded Database Architecture
|Core In-Memory Database System (IMDS) Design|
|Tiny Footprint (Approximately 150K)|
|Optional On-Disk or Hybrid Storage
Powerful Run-Time Features
Unmatched Developer Flexibility
The eXtremeDB Embedded Database, Feature-By-Feature:
in-memory database system (IMDS), eXtremeDB gives your application speed without rewrites or expensive new hardware. It eliminates disk and file I/O, cache management and other sources of latency. By working with data directly in main memory, eXtremeDB avoids the overhead of data duplication and transfer inherent in disk-based DBMSs. Databases can be created in shared memory, enabling concurrent access by multiple processes. Read about the performance advantages of IMDS technology in the white papers offered from this site.
Small code size and minimal overhead (database system memory footprint is as small as 15% of managed data volume) means less RAM is required; eXtremeDB’s streamlined design permits a lower cost CPU. As a result, your design can use less expensive hardware, resulting in lower manufacturing costs. Or, use the extra CPU speed to offer a snappier user experience than your competition, and use the extra memory to manage more data at the same cost as competing products.
eXtremeDB Fusion edition adds hybrid storage: certain record types can be designated for on-disk storage, with flexible caching. Choose the best storage medium based on performance, persistence, cost and form factor. eXtremeDB High Availability (HA) edition ensures continuous database operation even in the face of hardware or software failure. eXtremeDB HA supports both synchronous (2-safe) and asynchronous (1-safe) replication, with automatic failover.
In distributed architectures based on eXtremeDB Cluster, every database instance serves as a master. Any process on any node can update its local database, and Cluster efficiently replicates changes to other nodes. Clustering can dramatically increase available net processing power, lower system expansion costs (by enabling use of low-cost “commodity” hardware), and maximize scalability and reliability for data-intensive applications.
64-bit edition of eXtremeDB scales to support databases that are terabytes in size, to address the real-time database needs of financial, social network, object-caching and other highly scalable applications.
In a published benchmark test, an eXtremeDB-64 database grew to 1.17 terabytes and 15.54 billion rows, with no apparent limits on it scaling further. Performance remained consistent as the database size increased, suggesting nearly linear scalability. For a simple SELECT against the fully populated database, eXtremeDB-64 processed 87.78 million query transactions per second using its native application programming interface (API) and 28.14 million transactions per second using a SQL ODBC API.
Multi-Version Concurrency Control (MVCC) transaction manager, which is available as an alternative to the "pessimistic" database locking of the original eXtremeDB MURSIW (MUltiple Reader, SIngle Writer) transaction manager. MVCC can dramatically improve scalability and performance, especially in applications with on-disk or hybrid (in-memory and on-disk) database storage; many tasks or processes concurrently modifying the database (versus read-only); and in multi-core systems.
eXtremeDB Transaction Logging edition adds recoverability by writing database changes into a transaction log on persistent media. Logging may be set to different levels of transaction durability, allowing system designers to make intelligent trade-offs between performance and risk of unrecoverable transactions.
eXtremeDB Data Relay technology facilitates seamless, fine-grained data sharing between real-time systems based on eXtremeDB, and external systems such as enterprise DBMSs. As part of the eXtremeDB Transaction Logging edition, Data Relay helps developers by simplifying the code that “looks inside” database transactions for changes that should be relayed. It also guarantees maximum efficiency by eliminating the CPU-intensive task of monitoring database activity. Sharing of data can be either synchronous or asynchronous.
Similar to triggers in a relational database management system, this feature enables eXtremeDB to notify an application when something "of interest" in the database changes. It is available in synchronous and asynchronous modes.eXtremeSQL (eXtremeDB's SQL interface) uses a highly efficient and predictable rule-based optimizer.
XML interface functions for each class, providing the means to retrieve an object encoded as XML, to create or replace (update) an object in the database from the content of an XML string, to generate the XML schema for each class in the database in order to facilitate sharing data with other XML-enabled systems, and to accomplish simple eXtremeDB schema evolution.
eXtremeDB Kernel Mode leverages the high priority, zero-latency responsiveness afforded to kernel tasks—and meets the data sorting, access and retrieval needs of applications that place key functions there. multiple application programming interfaces (APIs). Access eXtremeDB using a fast, native navigational API consisting of C/C++ functions. This is provided as both a type-safe and intuitive application-specific API (functions are generated based on the data design), and as a uniform data access (UDA) API for a consistent interface across all projects. eXtremeDB’s SQL implementation includes an ODBC API for interoperability, a more succinct and easier to use proprietary API, and a type 3, version 4 JDBC driver. eXtremeDB’s Java Native Interface (JNI) and C# native interface offer the fastest possible DBMS solutions in these languages, and the ability to access eXtremeDB while working entirely with "plain old" Java and C# objects.
eliminate database corruption. In addition, the eXtremeDB runtime implements many verification traps and consistency checks. After application debugging, the optimized version of the eXtremeDB runtime can be used, removing traps and internal checks, and restoring valuable clock cycles.
In addition, cyclic redundancy check is built into the backup-and-restore feature for in-memory databases, executing automatically when a file is loaded to ensure the database was written in its entirety when saved, and has not been corrupted.
database indexes, to boost application performance and minimize footprint. eXtremeDB offers R-trees for geospatial data, Patricia tries for IP/telecom, KD-trees for multi-dimensional data and Query-by-Example (QBE), B-trees, hash indexes and more. For in-memory databases, rather than storing duplicate data, indexes contain only a reference to data, keeping memory requirements to an absolute minimum.
platforms including all major server and real-time operating systems (RTOSs), and can even run without an OS in "bare bones boards" configurations. It is designed to minimize reliance on OS-specific features, in order to simplify the task of porting to new operating systems.
proven solution that slashes months from development, QA and ongoing support. Why take on the complexity and cost of developing a database management system from scratch, when an off-the-shelf solution meets your requirements?