Database applications company McObject has released a C#/.NET Framework application programming interface (API) for its eXtremeDB In-Memory Database System (IMDS) and related product family.
The new API promises to allow developers to work more naturally with eXtremeDB entirely within C#'s object-oriented domain — but at the same time delivering eXtremeDB's runtime speed and efficiency.
For developers already using C# and .NET, this new offering attempts to combine the speed of a compiled C language database runtime with the convenience of using a familiar development environment. Developers work with the real-time database entirely from within C#. There is no external database definition and no requirement to compile a database schema.
McObject explains that its product's new approach hinges around the API relying on C#'s reflection capability to discover database classes and their fields (as defined by the application) in the class definition syntax. This combination, on paper at least, streamlines coding so that the developer's experience is one of working with plain old C# objects.
Optionally, the C# class definitions can be used to generate a schema that, in turn, can be processed by McObject's schema compiler, so that C/C++ and C# programs can use the same database.
"Microsoft Windows represents a key platform for performance-intensive and mission-critical applications. The .NET framework's benefits include enhanced developer productivity, stability, and performance," said McObject cofounder and CEO Steve Graves. "Our new C# interface greatly improves eXtremeDB's integration with the .NET language, bringing significant value to developers of demanding Windows applications such as trading platforms and industrial control."
eXtremeDB’s performance stems from its streamlined architecture that manages data entirely in main memory and within the application's address space, eliminating file I/O, cache management, interprocess communication, and other overhead found in database systems that incorporate disk storage and/or a client-server architecture.
With extremeDB's new interface, C# developers obtain the following features:
- Database responsiveness measured in microseconds
- eXtremeDB In-Memory Database System core in-memory architecture
- Flexible on-disk and hybrid storage (eXtremeDB Fusion)
- Multiple database indexes: B-tree, R-tree, Hash, Custom, Patricia trie, KD tree
- Highly scalable via 64-bit support and a multi-version concurrency control (MVCC) transaction manager
- Distributed database capability (eXtremeDB Cluster)
- Fault-tolerance (eXtremeDB Cluster and eXtremeDB High Availability)
- Transaction logging
- Small footprint of 150K or less
- ACID (Atomic, Consistent, Isolated, and Durable) transactions