Above question was asked (and answered) way back in 2009. However, the question is still relevant and we can give a 2nd look.
I can suggest following alternatives to TimesTen:
- SQLite
- Link: http://www.sqlite.org/inmemorydb.html
- Advantages: Small footprint, It's RDBMS (no application rewrite required)
- Disadvantages: No row-level locking
- H2
- Link: http://www.h2database.com/html/features.html#in_memory_databases
- Advantages: It's RDBMS (no application rewrite required), row-level locking
- HyperSQL
- Link: http://hsqldb.org/
- Advantages & Disadvantages: Very similar to H2 (above).
- Redis
- Link: http://redis.io
- Advantages: Blazingly fast with native support for data structures like list, hash, set, sorted set etc
- Disadvantages: Not an RDBMS (you may have to rewrite your application)
All of the above can run in-memory. Features-wise you might find things missing as compared to TimesTen. But they are certainly worth a look.