[Zope3-Users] Catalog questions

Jim Fulton jim at zope.com
Tue Jun 7 10:03:48 EDT 2005


Kevin Dangoor wrote:
> On 6/6/05, Jim Fulton <jim at zope.com> wrote:
> 
>>Kevin Dangoor wrote:
>>
>>>1) the intid utility is used to maintain an object<->integer ID
>>>mapping for use as a document ID in catalog indexes. Given that the
>>>objects already have an integer ID, _p_oid,
>>
>>_p_oid is not an integer.
> 
> 
> Err... Yeah, that would be a good reason not to use _p_oid :)
> 
> I *thought* it was an int, but clearly it is an 8 byte string.

It happens to be 8 bytes for file storage.  The storage API only says it's
a string.

 >>>Are the reference objects the place you would likely
 >>>store metadata (I didn't see a facility in catalog itself for this)?
 >>
 >>No.
 >
> I'm not going to worry about that until I see an actual performance
> issue with my objects being activated...

I'll note that the Zope 2 Catalog's meta-data table is a holdover from
a Digital Creations product for publishing DBase files on the web.
People uploaded the DBase files into our product, which stored
the data in a tabular structure and associated indexes.

It's not obvious to me that the meta data table is a performance
win. It could be a loss, at least depending on the application.

The rows in the meta-data table are just tuples.  These tuples
can be very large. A bucket will typically hold 30-60 of these
tuples.  Loading oe of these buckets could eaily be more
expensive than loading an object.

Jim

-- 
Jim Fulton           mailto:jim at zope.com       Python Powered!
CTO                  (540) 361-1714            http://www.python.org
Zope Corporation     http://www.zope.com       http://www.zope.org


More information about the Zope3-users mailing list