Using an in-memory database we get most of the data saved on the main memory instead of having it saved using the hard disk storage mechanism. The main advantage of using an in memory database is the excellent performance we can achieve.
There are many in-memory databases we can use. Some of them are available as open source projects we can use for free. This post summarizes the main in-memory open source databases we can use.
Using the Apache DB database we can specify that we want to get an in-memory database. Doing so we will automatically get our data stored on the main memory instead simple files on the hard disk. Apache DB was developed in Java.
The H2 database provides similar capabilities to Apache DB and beyond. Both of them provide us with two using modes. We can use the database as part of our application or have it running as a separated one. H2 was developed in Java.
Hazlecast database provides us with a scalable in-memory data distribution platform we can use in order to share and partition the data across multiple separated machines. Hazelcast was developed in Java.
Ehcache provides us with an in-memory data storage. We can use it embedded in our application process or have it running in a separated process. We can have it running across multiple separated machines. Ehcache was developed in Java.
The Volt DB provides us with an in-memory relational database together with exceptional scalability capabilities similar to Ehacache and Hazelcast. Vold DB was developed in Java.
Using MySQL we can set our database with the Memory engine. Doing so, the data will be saved on the main memory instead simple files on the hard disk.