As a general rule of thumb you can say: The more complex the object model, the more you are driven into either writing your own database solution (and 50% of the developers do that in the embedded space, according to VDC research: see this) or into looking at persistence solutions beyond relational databases, such as XML or object databases.