2009/3/31 Sandra <elsand...@yahoo.fr> > > For example, my computer have 1 GB RAM, could i have 2 GB objects loaded in > ZODB memory? I don“t well understand what is the cache in ZODB compared to > the RAM.
A ZODB client has an in-memory cache in RAM, and an optional on-disk cache. The server stores lots of objects. When the client needs one of these objects it connects to the server, sends the object ID, and the server sends the object. The ZODB client will cache this downloaded object in RAM so that operations on it are faster. However, RAM size is limited, so when there are many objects the cache gets full, and old objects have to be removed - if the removed objects are needed again in the future, they must be re-downloaded from the ZODB server. If the ZODB client file cache is enabled, then a copy of all the downloaded objects is kept in a file on the local hard disk of the client. Since hard disk capacity is greater than RAM this provides a storage space for a much greater number of objects - accessing the file cache is slower than RAM, but (usually) faster than retrieving an object from the ZODB server. ZODB caching is done at the application level, but you're operating system will also be managing its own hard disk cache; caching in ZODB and caching in the operating system have a similar function, but are completely separate, so try not to confuse them. _______________________________________________ For more information about ZODB, see the ZODB Wiki: http://www.zope.org/Wikis/ZODB/ ZODB-Dev mailing list - ZODB-Dev@zope.org http://mail.zope.org/mailman/listinfo/zodb-dev