[ZODB-Dev] High Write Applications

Phillip J. Eby pje at telecommunity.com
Tue Aug 5 11:04:50 EDT 2003


At 11:31 AM 8/5/03 +0100, Chris Withers wrote:
>Phillip J. Eby wrote:
>>No.  ZODB does object persistence, Prevayler does object prevalence.
>
>Hmmm... the dictionary didn't help me find out what that means. What is 
>prevalence?

See the prevayler.org site, in particular the stuff about the "Prevalence 
Hypothesis", I think it's called.  They draw a distinction between 
storing-and-retrieving-objects (persistence) and simply having objects stay 
around (prevalence).


>>Note also that there is a Prevayler-like system for Python: PyPersyst.
>>The nice thing about a prevalence architecture is that it's dramatically 
>>simpler than a persistence architecture, provided you 1) have the memory 
>>and 2) don't mind architecting around command classes, and 3) don't mind 
>>taking forever for an application to restart.  I have some thoughts about 
>>how to make #2 relatively transparent, but #1 and #3 are generally more 
>>of an issue.
>
>Indeed :-S

Actually, I forgot to mention, #3 isn't really a problem if you have hot 
replicas, which means of course more memory.  :)  The point being, that you 
can always start up a new copy from the last checkpoint and its subsequent 
log, and once the replica is fired up, you have it take over from the other 
running system.

In my view, hardware isn't cheap enough yet for this to be a standard 
practice.  But it's definitely something to keep an eye on.  When 64-bit 
desktops with multiple gigs of RAM are standard, prevalence will likely 
become the natural and sensible way to do things.




More information about the ZODB-Dev mailing list