In-Memory and Persistent Database Management Systems
What is a persistent database and how is it different? The answer below explains first what an in-memory database is, then, in the next paragraph, how a persistent database differs.
What is an in-memory database system?
An in-memory database system (IMDS) is a database management system that stores data entirely in main memory. This contrasts to traditional (on-disk/persistent) database systems, which are designed store data on persistent media. Because working with data in memory is much faster than writing to and reading from a file system, IMDSs can perform applications’ data management functions orders of magnitude faster. Because their design is typically simpler than that of persistent database systems, IMDSs can also impose significantly lower memory and CPU requirements.
What is a persistent database system?
In contrast, on-disk or persistent database systems cache frequently requested data in memory for faster access, but write database updates, insertions and deletes through the cache to be stored to disk. On the plus side, byte-for-byte, disk storage can be cheaper than RAM, and can also take less physical space when form factor is a consideration (e.g. handheld electronics).
A hybrid of the two
With some database systems, databases can be stored all-in-memory, all-persistent, or have a mix of in-memory tables and persistent tables. This flexibility enables developers to tailor data management in order to optimize applications for speed and persistence, and make intelligent trade-offs between cost-efficiency, power consumption, and physical space-conserving data storage hardware.
Using a true in-memory database system is critical to getting all the benefits from a hybrid solution. Understanding the distinction is critical to determining the performance, cost and ultimately the success or failure of a solution. Learn how to tell the difference between real and imitation in-memory database systems, and why it matters in our white paper: Will the Real IMDS Please Stand Up?
An in-memory database with transaction logging retains the high performance read characteristics and provides tune-able persistence while retaining much of the in-memory database insert/update/delete performance advantage.
eXtremeDB offers these options. Learn more about our hybrid database options.
In-memory and persistent database systems can be either embedded or client/server.
Learn more about the eXtremeDB in-memory and persistent database management system.
Small. Fast. Reliable.
eXtremeDB was originally developed as an in-memory database, it minimizes stack and more.
Flexible in-memory and persistent architecture, multiple APIs, multiple database indexes, a wide range of supported data types and more.
ACID-compliant transactions, Transaction Logging, type-Safe API, advanced debugging, tracing tools and more.
No other database management system offers more for developers.
Active Replication Fabric
Active Replication Fabric™ offers reliable IoT database management by solving 5 key challenges for developers.
Pipelining combines built-in vector-based statistical functions into assembly lines of processing for time series data, with the output of one function becoming input for the next.