[Zope-dev] ZODB optimization

Jim Fulton jim@digicool.com
Wed, 20 Sep 2000 09:49:45 -0400


morten@esol.no wrote:
> 
> I'm wondering, is the ZODB easily 'fragmented' or .. un-optimized ?
> If so, are there any tools/functions that will 'unfragment' / optimize
> it?

This really depends on the undelying storage used.  

> Does the 'pack database' in the Administration menu do this? 

Packing does two things:

  - It removed records for objects that are no longer referenced
    (as of the pack time), or, IOW, it doesm garbage collection.

  - For storages that support undo (and time travel), it also
    removes records that were not current as of the pack time.

Both of these, especially the latter are a little bit similar to 
defragmentation or optimization. In addition, the particular storage
implementation may have other issues/tools. For example, if the
Oracle storage is used, them whatever fragmentation or optimization
issues or adminstration tools provided by Oracle apply.

> If so,
> it could be a Good Thing (tm) to have separate optimize and packing
> (history deletion etc.) functions (buttons).

This doesn't really apply. 
 
> Is there any way to make an object not keep history on itself or on
> contained objects ?

Currently, the only way to do this is with a non-versioning storage, 
such as the Berkely DB storage.

Jim

--
Jim Fulton           mailto:jim@digicool.com   Python Powered!        
Technical Director   (888) 344-4332            http://www.python.org  
Digital Creations    http://www.digicool.com   http://www.zope.org    

Under US Code Title 47, Sec.227(b)(1)(C), Sec.227(a)(2)(B) This email
address may not be added to any commercial mail list with out my
permission.  Violation of my privacy with advertising or SPAM will
result in a suit for a MINIMUM of $500 damages/incident, $1500 for
repeats.