inMemory+ is a ground-up redesign of the relational database for today’s growing real-time analytics and data challenges.
inMemory+ offers a modern in-memory database that is scalable to easily handle fast data, powerful to make it smart, and fault tolerant in both datacenter and cloud environments. By leveraging the following architectural elements, the inMemory+ database is able to achieve performance, scaling, and high availability.
- Automatic partitioning (sharding) across a shared-nothing cluster
- Memory-centric design
- Automatic replication and disk persistence for high availability
- Data interaction with Relational SQL and HTTP based Restful services
- Compliance with ACID (Atomicity, Consistency, Isolation, Durability) properties
- Microsoft .NET platform support
- Microsoft Windows Communication Foundation (WCF) framework support
Automatic Partitioning Across a Shared-Nothing Cluster
inMemory+ uses a shared-nothing architecture to achieve database parallelism. Data and the processing associated with it (in the form of a single-threaded inMemory+ execution engine) are distributed among all the CPU cores within the machines that comprise an inMemory+ cluster. By extending its shared-nothing foundation for the per-core level (virtual nodes), inMemory+ is able to scale well on commodity hardware with higher density CPUs cores, in private or public clouds.
SQL data management is inMemory+’s access model. Data tables are partitioned according to their use and the inMemory+ planner manages all SQL interactions with the individual servers of the cluster.
inMemory+ supports several client access methods including ad hoc queries and HTTP based RESTful services. Client libraries in a variety of popular programming languages are available for writing inMemory+ applications.
Import / Export System
Built into the inMemory+ architecture is a sophisticated import/export system that supports the preferred system architecture that many data application stacks require.
The inMemory+ export system is a loose coupling managed from within the inMemory+ application. Data can be continuously and transitionally moved in and out from the inMemory+ system to a variety of connectors including SQL Server, Access, Excel, CSV, and XML. The application has complete control as to when and what data moves to the external system.