McObject, provider of the eXtremeDB product family of real-time database management system (DBMS) software, has released its Data Relay technology as a key building block for fast and flexible data-sharing between real-time applications based on eXtremeDB, and external systems such as an enterprise DBMS. 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.
McObject CEO Steve Graves described financial trading applications as an important current use of eXtremeDB Data Relay. eXtremeDB is the real-time database in securities exchanges, where its all-in-memory architecture guarantees the fastest possible performance. “A trading system updates eXtremeDB with transient information, such as stock price ticks. But it also generates and stores information such as trade executions that must be collected or analyzed outside the trading platform,” Graves said.
eXtremeDB Data Relay addresses this need. It maintains a buffer of eXtremeDB database transactions as they occur. For every object affected by a transaction, there is a code within the buffer that indicates whether the operation was an insert, update, or delete. Developers can use a familiar database “cursor” to iterate over objects in the transaction buffer. If the change in eXtremeDB is of interest (by the application’s criteria), the changes can be propagated to an Oracle, SQL Server, or other backend DBMS.
Data Relay’s architecture is designed to provide maximum speed. For example, in the case of eXtremeDB update operations, the buffer also includes a bitmap showing the fields of the object that were affected. If an object has 200 fields, the bitmap enables the application to read, and relay, only the pertinent ones. This efficiency is particularly important in maintaining the real-time system’s performance when data-sharing is synchronous—that is, when the real-time database transaction can be committed only after relevant changes are selected, propagated and saved on the external DBMS, Graves said.
The new technology also supports an asynchronous mode, in which a transaction can commit on eXtremeDB before changes are saved outside the real-time system. Synchronous data-sharing guarantees consistency between eXtremeDB and the external database, but it ties the eXtremeDB in-memory database to the (slower) performance of the external database. In contrast, the more “relaxed” asynchronous approach largely sustains eXtremeDB’s natural performance. Synchronous Data Relay mode could be useful when eXtremeDB is employed as a predominantly read-only high speed cache to an RDBMS, with occasional updates. Asynchronous Data Relay mode could be useful for classic real-time applications such as financial systems.
eXtremeDB Data Relay provides a convenient, off-the-shelf solution to developers who otherwise would likely code these functions from scratch. And it offers greater run-time efficiency than a “homegrown” solution could ever provide: eXtremeDB already records the objects that are inserted/updated/deleted during transactions, and it would be wasteful of CPU cycles to keep an additional recording of those operations for playback into an enterprise DBMS.
“The eXtremeDB database serves two distinct markets: real-time enterprise software including financial IT, and embedded systems such as consumer electronics, aerospace, and telecommunications. In both spheres, our customers increasingly need to sort relevant changes in the real-time database and transfer them to the ‘outside world’ for use in billing, portfolio management, statistical analysis, data mining and other applications. eXtremeDB Data Relay helps establish this data-sharing quickly. Customers who’ve used the technology on a trial basis are excited by its ability to preserve performance and reduce cost. We’re pleased to release eXtremeDB Data Relay into general use,” Graves said.
eXtremeDB Data Relay is available immediately as a feature in all versions of McObject’s eXtremeDB Transaction Logging edition, at no extra charge.
McObject can be reached at +1-425-888-8505, or visit www.mcobject.com.