Which frameworks would help for building a domain specific database using Java?
I have some very specific persistence requirements for the domain I'm working in. Relational databases are frequently used, but most of the time, persistence code is always about bending the relational model or tricking it, for performance tuning etc. 

Probably a graph database would make a lot more sense, but then few options can support ACID, and maturity is not as good as relational ones. BerkeleyDB could have been an option as a backend for a custom solution, but the current licence from Oracle makes it impossible for me to use it.

However, there are Java frameworks out there which are really mature, and joining them together may give me an option that is both flexible, and consists of components supported and used by large communities. 

For example JBossTS can run standalone, providing transaction capabilities. I have not seen a generic framework that can provide say Multi Version Concurrency Control, so that I can put that in front of a Java Content Repository implementation. 

I can always go for OrientDB, but I am interested in the idea of bringing together existing frameworks to achieve the functionality I'm looking for. That is why I used the term domain specific database, which may not make sense at all. 

So which frameworks can you think of that would allow creating the functionality of a database? I need transactions, concurrency control and the ability to plug a custom storage mechanism leveraging some convenient data structures.
Which frameworks would help for building a domain specific database using Java?
===

I have some very specific persistence requirements for the domain I'm working in. Relational databases are frequently used, but most of the time, persistence code is always about bending the relational model or tricking it, for performance tuning etc. 

Probably a graph database would make a lot more sense, but then few options can support ACID, and maturity is not as good as relational ones. BerkeleyDB could have been an option as a backend for a custom solution, but the current licence from Oracle makes it impossible for me to use it.

However, there are Java frameworks out there which are really mature, and joining them together may give me an option that is both flexible, and consists of components supported and used by large communities. 

For example JBossTS can run standalone, providing transaction capabilities. I have not seen a generic framework that can provide say Multi Version Concurrency Control, so that I can put that in front of a Java Content Repository implementation. 

I can always go for OrientDB, but I am interested in the idea of bringing together existing frameworks to achieve the functionality I'm looking for. That is why I used the term domain specific database, which may not make sense at all. 

So which frameworks can you think of that would allow creating the functionality of a database? I need transactions, concurrency control and the ability to plug a custom storage mechanism leveraging some convenient data structures.