I'd I like to be able to run a set of records/documents in a data store but have those records fresh in RAM at all times. I only need to use about 1.5GB to 2GB of RAM (potentially less). This would be server-based not embedded.
I know in-memory key-value stores will not work for me, because I need rich query capability.
I know MySQL can do memory based tables, but not sure if people use this feature for what I'm thinking about. Can SQL Server pin tables in memory? The entire table?
What other data stores should I be looking at? Map/Reduce style querying would also be fine if fast.
VoltDB is an in-memory ACID-compliant SQL database that is optimized for high velocity OLTP. It runs on 64-bit Linux or Mac OS X, has an open source community edition, and client libraries in several languages.
When you say "rich query capability" it sounds like it could be more of an OLAP use case, but if the queries are of basic complexity, it could be a good fit for VoltDB. Could you share more about your use case?