I just found "Has anyone published a detailed comparison between different in-memory RDBMSs?" that is related to my question.
TimesTen (see also) is a In-Memory Database from oracle.
It has a lot going for it including.
- Fast, consistent response time
- High transaction throughput
- Standard SQL, no application rewrite
- Persistent and recoverable
- High availability and no data loss
However it is priced out of the reach of most people ($41,500.00 / Processor).
So what alternatives are there, and what are there pros and cons.
(I am using .NET if it changes your answer)
I asked this question a LONG time ago, these days Microsoft SQL Server have "In-Memory OLTP" that is a memory-optimized database engine integrated into the SQL Server engine. It is not cheap, but seems to be very fast for some workloads.
Generally, in this field people also look at kdb from Kx Systems. I think both these systems really had they hay-day in the early 2000's. I would see if a tuned MySQL with a solid state RAID array would give you the performance you need.
BTW, I once wrote a time series database which outperformed both TimesTen and Kdb. It supported a SQL-92 syntax. The key to the performance was binding the schema to C++ template based classes, and using memory mapped files. Allowing for on-the-run schema changes is quite expensive, and defining the schema at compile time, data lookups could be retrieved in just a few assembly instructions.
Another for the list: open-source Tarantool is a persistent in-memory option that like TimesTen supports ACID transactions and SQL. Unlike TimesTen, though, it can be auto-sharded and also features a full Lua application server for stored procedures.
I have recently done a comparison betweem Oracle TimesTen and Sybase ASE IMDB.
The article is in two parts and available from the following links.
http://searchoracle.techtarget.com/tip/In-memory-databases-Oracle-TimesTen-vs-Sybase-ASE
http://searchoracle.techtarget.com/tip/In-memory-databases-Oracle-TimesTen-vs-Sybase-ASE-part-2
A popular in-memory database system is McObject's eXtremeDB, see
http://www.mcobject.com/extremedbfamily.shtml
There is also a good white paper, offered for download from the home page of McObject's Web site, called, "In-Memory Database Systems: Myths and Facts". It clarifies some questions that arise when discussing the technology, such as, "how is an IMDS different from a 'traditional' database running on a RAM disk?"
An alternative may be solidDB, a comparison between the two may be found here: TimesTen and solidDB comparison