This is work related to my Java OO7 implementation. Also work where it was used by other institutions
Hi Pieter
You'll probably remember the e-mail exchange between you and Moira earlier this year on the topic of your OO7 implementation and our lab course. In the mean time our semester is over and hence this course has ended. As one of the lab's supervising assistants I'd like to give you a short overview of the work accomplished by our students.
The first and biggest part was the refactoring that was necessary to have a common code base for the benchmark. We took your db4o implementation as a starting point and separated it into benchmark specific and a storage provider specific part. We then derived an interface to be implemented for all the different databases (storage providers) to be benchmarked.
For the database specific implementations we took more recent versions: db4o 7.12.132, VOD 8, Hibernate 3.3.2.GA with HSQLDB 1.8.0.10.
The existing build and configuration system consisting of several ant and properties files has also be unified and converted into a maven build. In this process we also simplified the generation system for object ids.
The final touch was the implementation of a GUI application where one can define and run benchmark configurations as well as analyse their results with help of the graphs it can produce.
Of course, we also have some loose ends after all this work, mainly concerning the database specific implementations. With Hibernate there is a problem loading links between assemblies from the database. They are never loaded and hence the traversals run much too fast (as nothing is traversed). With db4o there are still issues regarding the correct activation of objects loaded from the database. And VOD produces an out of memory exception when trying to run the large benchmark. Also, we did not manage to make Versant's enhancer part of the maven build -- this step needs to be executed manually before running the benchmark.
Finally, here is the URL to our SVN repository so you can have a look at the outcome in detail: https://svn.globis.ethz.ch/repos/globis/education/islabs/ISLAB2010/ (anonymous checkout allowed)
In your previous mails you mentioned the idea of submitting a tutorial to VLDB. Did you go ahead with that (and get accepted)? Did you also think about a demonstration at this year's ICOODB?
Best regards Christoph
https://svn.globis.ethz.ch/repos/globis/education/islabs/ISLAB2010/trunk/docs/ http://www.inf.ethz.ch/
http://sourceforge.net/projects/oo7/ http://userweb.cs.utexas.edu/~wcook/