Open source in-memory DBMS
I’ve gotten email about two different open source in-memory DBMS products/projects. I don’t know much about either, but in case you care, here are some pointers to more info.
First, the McObject guys — who also sell a relational in-memory product — have an object-oriented, apparently Java-centric product called Perst. They’ve sent over various press releases about same, the details of which didn’t make much of an impression on me. (Upon review, I see that one of the main improvements they cite in Perst 3.0 is that they added 38 pages of documentation.)
Second, I just got email about something called CSQL Cache. You can read more about CSQL Cache here, if you’re willing to navigate some fractured English. CSQL’s SourceForge page is here. My impression is that CSQL Cache is an in-memory DBMS focused on, you guessed it, caching. It definitely seems to talk SQL, but possibly its native data model is of some other kind (there are references both to “file-based” and “network”.)
Comments
5 Responses to “Open source in-memory DBMS”
Leave a Reply
CSQL Cache provides caching at table granularity. Frequently accessed tables shall be cached from the existing database(from now on called target database) to the CSQL MMDB. By virtue of its in memory data handling, it delivers ultra high performance to the application.
It has primitive SQL Engine which handles 80% of frequently used OLTP statements, pointlookup and DML operations on single tables. For unsupported functionality like join, subquery,etc in CSQL MMDB, it uses the target database for the query execution and provides unified view to the application. This means the locality of the tables is handled internally, thereby allowing existing applications to include this caching mechanism with no or minimal code changes. It provides standard interfaces JDBC/ODBC to access the cached tables and non-cached tables (which resides only in target database).
It doesn’t do joins? Then it really is more of a cache system than a stand-alone DBMS.
Anyhow, what are these “minimal” code changes like?
Best,
CAM
You got me interested in Perst. I took a look at it and posted this on my blog:
http://dlweinreb.wordpress.com/2008/06/08/perst-an-embedded-object-oriented-database-management-system/
[…] Weinreb — inspired by but not linking to my recent short post McObject’s object-oriented in-memory DBMS Perst — has posted a detailed discussion of Perst on his own blog. For context, he compares it […]
If the application uses non-standard features, then it may require some code changes.ODBC and JDBC based applications will not require any changes except configuration changes for DSN name.