[Zope] ZCatalog Strategy
Jonathan
dev101 at magma.ca
Wed Mar 22 22:16:50 EST 2006
One factor is the amount of ram that you have. If you have enough ram to
fit the entire catalog (with indexes) then your search time is very fast.
I would err on the side of less meta-data. We currently run about 1 million
entries in a zcatalog with very little meta-data and then use
restrictedTraverse with the object ids returned by the zcatalog search to
get the fields we need. We typically have sub 1 second searches using this
approach (but we have very fast scsi disks in striped raid configuration).
With only 10k records in the catalog you could try both configurations (very
easy to clear and then reload the catalog) and time them to see which gives
you better performance.
hth & good luck!
Jonathan
----- Original Message -----
From: "Mark Gibson" <mark at dimensional.com>
To: <zope at zope.org>
Sent: Wednesday, March 22, 2006 9:28 PM
Subject: [Zope] ZCatalog Strategy
> I'm struggling to weigh the cost of getObject() vs. the cost of adding
> more metadata to the catalog. I'll explain my situation.
>
> I have 10,000 widgets cataloged. I do a path and date query that returns
> me maybe 12 of these. Then I have a choice of calling
> getObject().getData() on each of these, or I could add getData to the
> catalog metadata.
>
> Does the cost of calling getObject() for a dozen objects justify creating
> a new metadata field?
>
> More generally how does a large amount of metadata in the catalog affect
> performance of queries?
>
> The wisdom of those more knowledgeable than me would be appreciated.
>
> Mark
> _______________________________________________
> Zope maillist - Zope at zope.org
> http://mail.zope.org/mailman/listinfo/zope
> ** No cross posts or HTML encoding! **
> (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce
> http://mail.zope.org/mailman/listinfo/zope-dev )
>
More information about the Zope
mailing list