Prevayler is for all in memory database with backup on file ( Prevalence concept )
Joafip is to store all objects in file. Only needed object are reloaded in memory ( lazy load of object graph), then discard ( may be update in file ) when no more needed. The data size can exceed the available memory.
it seems Prevayler provides a request systems
joafip is based on object navigation
Prevayler expect "Serializable" object
Joafip have "persistable" rules, classes may implement or not Serializable/Externalizable.
joafip and Prevayler are object persistence framework
It is slowest to access file than access to object kept stored in memory:
each object access cause setting object state reading object associated record in file
each save cause object tree in memory visit to discover object added/removed/modified and then pass writing in file
About CPU usage, there is a background garbage file record collector running ( frequency can be set ), this is needed when there is a lot of object deletion and creation to avoid file grow too much.